Coinbase to Koinly
Download your Coinbase history, drop it in below, and you get a file in Koinly's own import layout plus a list of anything that needs a manual fix.
Your file is read in this browser tab and never uploaded.
1. Export from Coinbase
On the website, open your profile menu, then Settings, Accounts and Statements, and generate a custom statement in CSV for all assets and transaction types. Use Statements, not the tax reports. The file starts with a few lines above the column headers; leave them in, the converter skips them.
2. What changes in the file
| Column in the export | What we take from it |
|---|---|
ID | Kept as the transaction id when present. |
Timestamp | Transaction time in UTC. |
Transaction Type | Buy, Sell, Advanced Trade, Convert, Send, Receive, staking and rewards income. |
Asset | Asset ticker. |
Quantity Transacted | Crypto amount. Whether it came in or went out is taken from the transaction type, not the sign. |
Price Currency | Currency of Subtotal and fees, usually USD. |
Subtotal | Dollar value before fees: cost of a buy, gross proceeds of a sale, value of income. |
Fees and/or Spread | Fee, kept separately in the price currency. |
Notes | Read only for Convert rows, to find what was received. |
Total (inclusive of fees and/or spread) | Not used; it equals Subtotal plus or minus the fee. |
| Koinly column | Filled from |
|---|---|
Date | Transaction time in UTC, written as YYYY-MM-DD HH:MM:SS |
Sent Amount / Sent Currency | The side that left your balance |
Received Amount / Received Currency | The side that arrived |
Fee Amount / Fee Currency | Fee, in the asset it was charged in |
Net Worth Amount / Currency | Dollar value, only when the exchange file states it |
Tag | reward (staking and other rewards), lending interest, airdrop or other income for income rows; empty otherwise |
Description | Original operation name for income rows |
TxHash | The transaction ID on the blockchain, when the file has one |
3. Import into Koinly
In Koinly, open Wallets, add a wallet named after the exchange, then choose Import from file and upload the converted CSV. Koinly reads its own universal template directly.
Known problems with this pair
- Coinbase's "Send" rows become withdrawals. If the coins went to your own wallet, import that wallet too: Koinly only pairs a withdrawal with a deposit of the same asset that arrives within 12 hours and isn't larger than the amount sent.