Skip to content

Import your trade history from a file

The fastest way to get your investments into Metrifly is to upload a file from your broker. By the end of this, your full trade history — every buy, sell, and dividend — will be in your portfolio, with prices, holdings, and performance filled in for you.

You can import a CSV or Excel file from almost any broker. Metrifly reads the file, works out which column is which, and shows you exactly what it found before anything is saved — so you always get a chance to review and correct it first.

A couple of things make the import go smoothly:

  • Pick a single portfolio, not a group. Import is only available when one portfolio is selected in the portfolio selector. In a group view, the import option is hidden.
  • Have your broker file ready. Export your trade history, confirmations, or activity from your broker as a CSV or Excel file. If your broker has a step-by-step export guide, follow that to get the right file.
  • Check the file. It must be a .csv, .xlsx, or .xls file, under 10 MB, with no more than 500 importable rows in a single import. Split larger exports into multiple files if you need to.
  • Keep the page open. Stay on the tab from upload through completion so you do not lose your place or interrupt final processing.
  1. Select the portfolio you want the trades to go into.
  2. Go to Transactions → Add Holdings.
  3. Under Add manually, select Upload a file.

The Add Holdings page with the "Upload a file" card highlighted in the Add manually section (1)

  1. Drag your file onto the drop zone (1), or click Choose File to browse for it (2).
  2. Metrifly reads the file — there’s no format or broker to pick first; it works out the columns for you.

The upload step with the drop zone highlighted (1) and the Choose File button highlighted (2)

Once the file’s read, you land on Review.

Metrifly sorts every row into one of three kinds:

RowWhat it meansWhat to do
Accepted tradeMapped to a complete, valid transactionPre-selected — nothing to do, unless it’s a duplicate
Trade needing attentionMissing or invalid data in one or more fieldsFix the highlighted fields, then select it
Skipped rowNot an importable trade — footers, cash movements, empty sheets, and similarNothing to do, but you can check why

Trades needing attention are listed first so you see them right away. Use the counter at the bottom of the table — “X of Y rows will import” — to track how many rows are currently selected.

A row needing attention is outlined so it stands out in the table (1) — hover over a red-outlined field to see why it’s flagged. Correct the problem directly in the table: pick the right instrument, adjust the date, type, quantity, or currency, or fill in a missing price or exchange rate (2). Once the row looks right, tick its checkbox to include it — it isn’t selected automatically.

A trade needing attention outlined in the table (1), with its blank Price field outlined in red (2)

If a row looks like a trade you’ve already recorded in this portfolio (same instrument, date, type, quantity, and price), Metrifly flags it Duplicate and leaves its checkbox unticked (1). Only tick it if it’s genuinely a separate trade — otherwise leave it unselected so you don’t end up with the same trade twice.

Rows Metrifly didn’t treat as trades — blank rows, footers, cash-only entries, and similar — don’t appear in the table. Expand X rows skipped below the table to see each one with its sheet and reason (2). If you removed a row yourself, it’s listed separately under Removed by you, where you can restore it.

The unchecked CBA duplicate row (1) and the expanded skipped-rows list showing the Notes sheet's skip reason (2)

Above the table, Metrifly shows a summary of how it mapped each column, sheet by sheet. If it flags low confidence, or a lot of rows need attention, the mapping is probably wrong rather than the data. Click Adjust to open Adjust column mapping, re-map any column to the right field (1), then click Save and reprocess (2) to re-read the file with the corrected mapping.

The Adjust column mapping dialog with the mapping fields highlighted (1) and the Save and reprocess button highlighted (2)

When you’re happy with the selection, click Continue.

Confirm shows a summary card of what will happen — how many trades will import and how many duplicates are being skipped (1) — plus a preview table of exactly the rows you selected. Rows still needing attention are left out because they were never selected. Check it over, then click Import (2). If you need to change anything, click Back to review.

The Confirm step with the summary card showing trades to import and duplicates skipped (1), and the Import button (2)

After you click Import, Metrifly saves your trades and then runs a short pipeline to fill everything in: it creates or updates your holdings, fetches prices and exchange rates, applies benchmarks, rebuilds snapshots, and loads dividends. For long date ranges this can take a few minutes.

When it’s done, you’ll see a summary card confirming how many transactions were imported (1), with options to Import More or Go to Portfolio (2).

The completed import summary card (1) with the Import More and Go to Portfolio buttons (2)

  • Multi-sheet Excel files are supported. Metrifly reads every sheet that looks like it contains trades and skips sheets that are empty or don’t look trade-like (with the reason shown in Review). If your workbook has a Combined sheet alongside individual market sheets, Metrifly imports only the Combined sheet and skips the others as superseded, since they’d otherwise duplicate the same trades.
  • A “Check symbol” pill on a holding means Metrifly couldn’t match that ticker to a priceable symbol — often because a broker export uses an internal scrip code. Fix the ticker, or re-import with the ISIN column mapped.
  • Individual enrichment steps can fail without failing the whole import. Your trades still save even if a later step, like dividends, doesn’t finish.
  • Your broker isn’t in the list? That’s fine — any broker that exports a CSV or Excel file works. See Find your broker’s export guide.
ProblemFix
The import option isn’t thereYou have a portfolio group selected. Switch to a single portfolio.
Your file is rejectedUse a .csv, .xlsx, or .xls file under 10 MB.
”Exceeds the 500-row limit” errorA single import can bring in at most 500 importable rows. Split your file into smaller ones and import them one at a time.
Rows from your Excel file are missingCheck the skipped-rows summary in Review — Metrifly skips sheets it doesn’t recognise as trade data, and skips individual market sheets when a Combined sheet is present.
Lots of rows show as needing attentionThe column mapping is probably off. Open Adjust column mapping, re-map the columns, and Save and reprocess.
A holding shows Check symbol after importVerify the ticker and exchange, or re-import with an ISIN column mapped.
A holding’s exchange shows OTHER with the wrong currencyIt was imported before Metrifly supported that market. Delete the holding, then re-import the file — re-importing without deleting first is skipped as a duplicate.
Some trades look like duplicatesRows flagged Duplicate are possible repeats of trades already in this portfolio — only select the ones that are genuinely separate trades.
A banner on your portfolio says the last import failed or is still catching upIf it says the import failed, try again, or contact support if it keeps happening. If it says data is still catching up, your trades were saved — prices and analytics finish updating on their own shortly, with no action needed from you.