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.
Before you start
Section titled “Before you start”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.xlsfile, 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.
Step 1 — Open Upload a file
Section titled “Step 1 — Open Upload a file”- Select the portfolio you want the trades to go into.
- Go to Transactions → Add Holdings.
- Under Add manually, select Upload a file.

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

Once the file’s read, you land on Review.
Step 3 — Review what Metrifly found
Section titled “Step 3 — Review what Metrifly found”Metrifly sorts every row into one of three kinds:
| Row | What it means | What to do |
|---|---|---|
| Accepted trade | Mapped to a complete, valid transaction | Pre-selected — nothing to do, unless it’s a duplicate |
| Trade needing attention | Missing or invalid data in one or more fields | Fix the highlighted fields, then select it |
| Skipped row | Not an importable trade — footers, cash movements, empty sheets, and similar | Nothing 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.
Fix a trade needing attention inline
Section titled “Fix a trade needing attention inline”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.

Handle likely duplicates
Section titled “Handle likely duplicates”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.
Check skipped rows
Section titled “Check skipped rows”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.

Fix column mapping
Section titled “Fix column mapping”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.

When you’re happy with the selection, click Continue.
Step 4 — Confirm
Section titled “Step 4 — Confirm”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.

Step 5 — Let Metrifly finish importing
Section titled “Step 5 — Let Metrifly finish importing”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).

Good to know
Section titled “Good to know”- 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.
Troubleshooting
Section titled “Troubleshooting”| Problem | Fix |
|---|---|
| The import option isn’t there | You have a portfolio group selected. Switch to a single portfolio. |
| Your file is rejected | Use a .csv, .xlsx, or .xls file under 10 MB. |
| ”Exceeds the 500-row limit” error | A 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 missing | Check 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 attention | The column mapping is probably off. Open Adjust column mapping, re-map the columns, and Save and reprocess. |
| A holding shows Check symbol after import | Verify the ticker and exchange, or re-import with an ISIN column mapped. |
| A holding’s exchange shows OTHER with the wrong currency | It 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 duplicates | Rows 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 up | If 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. |
Related articles
Section titled “Related articles”- Find your broker’s export guide — export steps for 40+ brokers
- Add a trade manually — for one-off trades
- Auto-import trades from your broker’s emails — Starter and above
- Edit, fix, or delete a transaction