Import guides

The FolioBright standard.

Six columns. If your export does not import cleanly, rearrange it into this and it will.

Import guides  /  Standard CSV format

There is no industry-standard CSV for brokerage exports, and there is not going to be one. Every broker names its columns differently. FolioBright works around that by reading your file's header row and matching the columns itself — but when a file is unusual enough that it will not go in, this is the format that always will.

It is also the answer for anything that is not a brokerage at all: a spreadsheet you have kept by hand, a pension statement you are typing up, an old account whose export is long gone, a brokerage in a country nobody writes guides about.

Download the template   foliobright-template.csv · 5 example rows

The six columns

ColumnWhat goes in it
dateThe date the transaction happened. 2026-03-14 is unambiguous everywhere and is what we would use; most common formats are read too, but a bare 03/04/2026 means different days on different sides of the Atlantic.
actionWhat happened: buy, sell, dividend, interest, fee, split, deposit, withdrawal. This column decides the direction of the row, so it is the one to get right.
symbolThe ticker — VOO, AAPL, BTC. Leave it empty on rows that are not about a security, such as a cash deposit.
quantityShares, units or coins. Decimals are kept exactly as you write them, so do not round fund reinvestments.
pricePrice per share. Leave it empty on rows that have no price, like a dividend or a fee.
amountThe cash value of the row. Usually quantity × price, plus or minus any commission the broker charged.

What it looks like filled in

Five rows covering the events most portfolios are made of — an ordinary purchase, a fractional reinvestment, a dividend with no share movement, a partial sale, and a second holding.

dateactionsymbolquantitypriceamount
2026-01-15buyVOO10462.304623.00
2026-02-02buyVOO2.4187470.151137.00
2026-03-20dividendVOO18.44
2026-04-11sellVOO5489.102445.50
2026-05-02buyBND4072.652906.00

Rules that save you a re-import

One row per event. If you bought the same fund three times in a month, that is three rows. Do not net them together — the whole point of a transaction history is that it knows when each purchase happened, and a netted row makes your return wrong in a way that is hard to spot later.

Do not round the quantity. Dividend reinvestments produce quantities like 2.4187. Rounding to two places is how a portfolio ends up a few hundred dollars off and nobody can work out why.

Leave cells empty rather than writing zero. An empty price on a dividend row means "this row has no price". A zero means the price was zero, which is a different and untrue claim.

Strip currency symbols and thousands separators if you can. 4623.00 reads more reliably than $4,623.00, though both usually work.

One account per file. If you are bringing in an IRA and a taxable account, make two files and import them into two accounts. They have different tax treatment and usually different goals, and separating them keeps allocation and contributions meaningful.

Keep the header row. The column names are how FolioBright knows what it is looking at.

Turning your export into this

  1. Open your broker's export in Numbers, Excel or Google Sheets.
  2. Delete any preamble above the real header row — some brokers put an account summary at the top of the file.
  3. Rename the columns you need to date, action, symbol, quantity, price, amount.
  4. Delete the columns you do not need. Extra columns are ignored, so this is optional, but it makes the file easier to check.
  5. Delete any total or subtotal rows at the bottom — they are not transactions.
  6. Save as CSV and import it.
Try importing before you do any of this. FolioBright reads your header row and matches the columns automatically, and when it meets a layout it has not seen it works the rest out from the shape of each column. Most files go straight in. This page is the fallback, not the first step.

Current holdings instead of history

If all you have is a snapshot of what you own today, use these columns instead: symbol, quantity, cost (total cost basis) or cost_per_share, and optionally price and name. Choose Current holdings rather than Transactions in the import window.

It gets you a correct picture of today with no history behind it, which means no performance chart and no return figures until you add transactions. That is a reasonable place to start — you can import positions now and let the history build from here.

Other brokerages

Nothing to install

FolioBright reads the file in your browser and stores the result in your own account. There is no brokerage login to hand over, no read-only credential, and no third-party aggregator sitting between you and your holdings.

Start free — 14 days, no card   Read the FAQ