CoinTracker integrates with many blockchains, exchanges, and wallets. When automatic syncing isn't available or a bug occurs, you can manually import transactions using CSV files. If the original CSV isn’t compatible, follow the steps below to convert it into CoinTracker’s format and ensure a successful import.
If you encounter errors while importing your CSV, refer to our tips to resolve these error messages. If you’re having trouble but aren’t seeing any of the error messages, follow the steps outlined in this article.
Format your transaction history CSV for CoinTracker
Step 1: Export your transaction history
- Go to the wallet or exchange you want to add to CoinTracker.
- Locate the option to export your transaction history as a CSV file.
- If unavailable, contact the wallet or exchange for help.
Step 2: Prepare your CSV for CoinTracker
- Download the CoinTracker CSV template. This template includes the required headers for reformatting your CSV.
- Reformat your CSV. Add your transactions to the template or use it as a guide.
Important:
- The headers must match the template exactly.
- All columns must be included.
- Do not delete or add columns.
- Columns can appear in any order.
Here’s the correct format for the first (header) row in your CSV and what data appears in each column:
Column A | Column B | Column C | Column D | Column E | Column F | Column G | Column H |
Date | Received Quantity | Received Currency | Sent Quantity | Sent Currency | Fee Amount | Fee Currency | Tag |
Date of transaction | Amount of crypto or cash received | Type of crypto received | Amount of crypto or cash sent | Type of crypto sent | Transaction fee amount in the currency it was paid | Type of currency that your transaction fee was paid in |
CoinTracker CSV tags: Use tags to categorize send/receive transactions by type for better tracking and tax purposes.* |
Step 3: Add data to the template
Add your data from your original CSV to the downloaded template:
Date and time
- Date (Column A): Enter the exact date and time of the transaction. Time entries are optional.
- Format: MM/DD/YYYY HH:MM:SS (For example, 06/14/2017 20:57:35).
- Time: Optional. If included, it should be in UTC. Convert any non-UTC times to UTC for accuracy.
Formats
- Numbers: Use numbers only, including decimals (for example, 1.05). No negative numbers.
-
Currency: Use the asset’s ticker symbol (for example, BTC for Bitcoin, USD for US Dollars).
- Only use supported cryptocurrency by CoinTracker.
- For unsupported cryptocurrencies, you may receive errors. In this case, create a custom currency to ensure it can be used and properly uploaded into CoinTracker.
Send and receive transaction data
-
Blank cells/values: Leave blank if no data exists. For example:
- Staking rewards will only have Received data. In this transaction, Sent Quantity and Sent Currency will be blank.
- Transfers between wallets or exchanges will only have sent data. In this transaction, Received Quantity and Received Currency will be blank.
- Pairs: For trading pairs, separate the trading pair into individual entries
CoinTracker CSV Tags (Column H)
In Column H, use CoinTracker CSV tags to categorize send/receive transactions for better tracking and tax purposes. Tagging is optional, but if used, ensure the text matches the available CoinTracker CSV tags exactly.*
- Tag format: Ensure the text matches the available CoinTracker CSV tags exactly. Unsupported tags will cause the import to fail or ignore the row.
- When to use tags: To specify send/received transactions. Without tags, imported transactions default to Sent, Received, Trade, or Transfer. Tags can be added before import or changed manually after import.
- Not for all transactions: Do not use tags for trades or transfers.
- Not for transaction memos: Do not use this column for memos or notes. You can add notes to transactions after import by editing them.
Step 4: Upload your CSV to CoinTracker
- Save the file as .csv file type.
- Go to CoinTracker > Wallets.
- Click Add wallets.
- Enter CSV.
- Follow the instructions to import your CSV file.
CSV format examples for different transaction types
Trades
- Action: You exchange one crypto for another crypto.
-
Format:
- Trades will have both a Sent and Received quantity.
- Leave Fee Amount and Fee Currency blank, if no fee applies.
- Leave the Tag column blank.
Using the example of selling 0.001 WAVES for 20.0941 USD, see the format below:
Original Format:
CoinTracker Format:
Buys
- Action: When you buy crypto with cash.
Column A | Column B | Column C | Column D | Column E | Column F | Column G | Column H |
Date | Received Quantity | Received Currency | Sent Quantity | Sent Currency | Fee Amount | Fee Currency | Tag |
09/03/2023 15:45:25 | 1 | BTC | 45000 | USD | 0.0004 | BTC | Leave blank |
Staking rewards
- Action: When you stake, you usually receive rewards at intervals.
Column A | Column B | Column C | Column D | Column E | Column F | Column G | Column H |
Date | Received Quantity | Received Currency | Sent Quantity | Sent Currency | Fee Amount | Fee Currency | Tag |
09/01/2023 00:00:00 | 0.01 | ETH | Leave blank | Leave blank | Leave blank | Leave blank | staking |
Transfers
- Action: When you transfer crypto between wallets or exchanges.
Outgoing transfer (transferring to another wallet):
Column A | Column B | Column C | Column D | Column E | Column F | Column G | Column H |
Date | Received Quantity | Received Currency | Sent Quantity | Sent Currency | Fee Amount | Fee Currency | Tag |
09/02/2023 12:30:00 | leave blank - you’re sending crypto | Leave blank | 5 | BTC | 0.0001 | BTC | Leave blank |
Incoming transfer (receiving a transfer from another wallet):
Column A | Column B | Column C | Column D | Column E | Column F | Column G | Column H |
Date | Received Quantity | Received Currency | Sent Quantity | Sent Currency | Fee Amount | Fee Currency | Tag |
09/02/2023 12:30:00 | 5 | BTC | Leave blank - you’re receiving crypto | Leave blank | Leave blank | Leave blank | Leave blank |
Feedback & improvement
Your feedback is valuable to us. If you’d like a smoother CSV conversion process, upvote this feature request. If you're interested in duplicate detection, show your support.