Coinbase transactions to dashboard
Your Coinbase history, sorted into things you can total.
Export your transaction history from Coinbase and drop it here. The file mixes buys, sells, sends, receives, converts and staking income in one list, and none of those can be summed together. The dashboard separates them by Transaction Type first, folds the spread into the fee figure, and totals quantity per asset rather than across assets.
Prefer the full explorer? Open the app, or start from the generic dashboard builder.
Nine transaction types, one Subtotal column
The Coinbase transaction report has a Subtotal and a Total column that look like money, and a Quantity Transacted column that looks like an amount. All three are only meaningful once you know the Transaction Type of the row. A Send has a quantity and no purchase price. A Convert appears as one row that hides two assets. Staking Income has a value but you never paid for it. Add the Total column across the file and you have summed money you spent, money you received and money you moved between your own wallets.
The fee situation is its own puzzle. The column is named Fees and/or Spread for a good reason: on simple buys Coinbase historically folded most of its margin into the exchange rate rather than charging a visible fee, so the number there is a blend. It is still the best available estimate of what the transaction cost you, and this page uses it as such while being honest that it is a blend.
How to export from Coinbase
- Open Coinbase and go to Reports Sign in at coinbase.com, click your profile at the top right, then Reports. On mobile this is buried under the account menu, so the desktop site is easier.
- Choose Generate report for transaction history Pick the transaction history report rather than the tax forms. Tax forms are summaries; the transaction report is the row-level file this page reads.
- Select all assets and the full date range Filtering by asset here means you cannot compare assets later. Take everything and filter in the dashboard instead, which costs nothing.
- Download the CSV Coinbase generates the file and lists it under Reports. Note that the first few lines are a preamble, not the header, which is normal for this export.
- Drop it here The preamble is skipped, the real header is found, and Transaction Type becomes the first filter you see.
Coinbase and Coinbase Pro or Advanced Trade produce different files. This page is written for the retail transaction history report; the Advanced Trade fills export has a different, trade-centric shape.
Try with sample Coinbase data (the same columns, 92 rows, no upload needed).
What the dashboard shows
Every panel below is built from a column that is actually in the export, named the way Coinbase names it.
- Buys against sells over time. Timestamp as the axis with the two types as separate series, which is the shape that shows whether you were accumulating or taking profit.
- Cost per asset. Subtotal summed per asset for buy rows only, giving a rough cost basis without pretending to be tax software.
- Quantity held by asset. Buys plus receives minus sells and sends, per asset, never mixed.
- Total fees and spread. The blended cost column summed and expressed against traded volume, which is usually higher than people expect.
- Price at Transaction over time. A scatter of your own execution prices, which is more informative than a market chart because it is only the moments you actually traded.
- Staking income. Isolated as its own series, since it is income rather than a trade and belongs in a different mental column.
ID,Timestamp,Transaction Type,Asset,Quantity Transacted,Price Currency,Price at Transaction,Subtotal,Total (inclusive of fees and/or spread),Fees and/or Spread,Notes
Reading a Coinbase report without fooling yourself
- The file starts with a preamble. Several lines of account metadata sit above the header row. Most CSV readers treat the first line as the header and produce a one-column mess.
- Quantity is per asset and not comparable. 0.4 BTC and 400 USDC are both numbers in the same column. Any total across assets is meaningless.
- Convert is two transactions in one row. The asset sold and the asset bought are not both represented. Treat converts as their own category rather than as buys or sells.
- Sends and receives are not trades. Moving coins to your own hardware wallet is a Send with a value attached. Counting it as a sale invents a disposal that never happened.
- Fees and spread are blended. The column name says so. On older buy rows the visible fee was small and the real cost was in the rate, so this is an estimate, not an invoice.
- Timestamps are UTC. Which will not match a tax year boundary in your local time zone, and crypto years are decided at midnight somewhere specific.
This page is a way to see your own activity clearly. It is not tax software and it does not compute a cost basis you should file, because that depends on an accounting method and on transfers this file cannot see.
Frequently asked questions
Why does my CSV open as a single column?
Coinbase puts several lines of account metadata above the real header row, so a reader that assumes line one is the header gets confused and everything collapses. This page scans for the first line that looks like a header with the expected field names and starts there. In a spreadsheet you would delete the preamble lines manually before importing.
Can I get my cost basis from this file?
You can get an approximation, and you should not file it. Summing Subtotal on buy rows per asset gives you what you paid, but a real cost basis depends on an accounting method such as FIFO or specific identification, and on transfers in from wallets Coinbase cannot see. Use this to understand your activity, and use proper tax software or an accountant for a return.
What exactly is the Fees and/or Spread column?
A blend, which is why the name is awkward. Coinbase has historically charged some of its margin as a visible fee and some as a worse exchange rate, and this column tries to represent both. It is the best single estimate of what a transaction cost you, and summing it against your traded volume gives a realistic effective rate, usually higher than the advertised fee schedule suggests.
How should I treat Send and Receive rows?
As movements, not trades. A Send to your own hardware wallet is not a disposal and a Receive from a friend is not a purchase, even though both carry a value at the time. The dashboard keeps them in their own category so they never enter a buy or sell total. If you are tracking holdings, they matter; if you are tracking spend, they do not.
Can I compare BTC and ETH in the same chart?
By value, yes. By quantity, no, and the dashboard will not let you, because adding 0.4 of one thing to 12 of another produces a number with no meaning. Group by Asset and the panels split correctly. The Subtotal column, being in your price currency, is the one that is safely comparable across assets.
Is my transaction history sent anywhere?
No. It is read in your browser tab and held in memory. A full crypto transaction history is about as sensitive as a file gets, since it reveals holdings, timing and behaviour, so uploading it to a web service to draw a chart would be a poor trade. There is no upload path in this page and no account to create.
Related tools
See your Coinbase activity split by type
92 transactions across a quarter: buys, sells, a convert, staking income and transfers, with a blended fee on each. Load it and watch the types separate.
Open the sample Coinbase dashboard