HQ Wealth ↔ CoinLedger: The Complete Import & Export Guide
CoinLedger — the platform formerly known as CryptoTrader.Tax — is one of the best-known crypto tax calculators in the US market. HQ Wealth is a full double-entry wealth accounting platform with wallet and exchange reconciliation, FIFO/LIFO/HIFO/AVCO cost basis, staking and liquidity tracking, and IFRS-style reports. Many people need both: you might keep CoinLedger for a specific tax filing while HQ Wealth runs your books, migrate a multi-year history out of CoinLedger into a proper ledger, or take on a client who shows up with a folder of CoinLedger exports. Either way, the move succeeds or fails on one thing — the file format. CoinLedger rejects an entire upload if a single header cell is wrong, so precision matters.
This guide covers both directions: how HQ Wealth exports data that CoinLedger accepts on the first try, and how HQ Wealth imports what you download out of CoinLedger.
Exporting HQ Wealth → CoinLedger
CoinLedger's file-based entry point is the Universal Import Template (also called the Manual Import Template). CoinLedger recommends it for any exchange or wallet it does not sync automatically — which is exactly the role HQ Wealth plays when it hands your reconciled history to CoinLedger. HQ Wealth generates this template natively, with the columns and formatting CoinLedger's importer demands.
The Universal Import Template columns
The template is an eleven-column, two-leg layout: each row can carry an asset sent and an asset received, so a trade fits on one line. HQ Wealth writes these headers exactly as CoinLedger expects them.
| Column | Required? | Format | Example | |---|---|---|---| | Date (UTC) | Yes | Month-Day-Year, mm/dd/yyyy hh:mm:ss (time optional; dash or slash separator) | 03/28/2026 14:39:40 | | Platform | Recommended | Source label | HQ Wealth | | Asset Sent | Trades & withdrawals | Ticker | ETH | | Amount Sent | Trades & withdrawals | Positive number | 1.5 | | Asset Received | Trades & deposits | Ticker | USDC | | Amount Received | Trades & deposits | Positive number | 4200.00 | | Fee Currency | If a fee applies | Ticker | ETH | | Fee Amount | If a fee applies | Positive number | 0.002 | | Type | Yes | From CoinLedger's taxonomy (below) | Staking | | Description | Optional | Free text | Lido staking reward | | TxHash | Optional | On-chain hash | 0x4c4ba1… |
The fill rules follow the two-leg shape:
- Trades (buys, sells, crypto-to-crypto swaps): both the Asset Sent and Asset Received pairs are populated.
- Incoming deposits (income, staking, airdrops, etc.): only Asset Received and Amount Received are filled; the Sent side stays blank.
- Outgoing withdrawals (gifts, spends, losses): only Asset Sent and Amount Sent are filled; the Received side stays blank.
Two rules that trip people up, both of which HQ Wealth handles for you:
- Dates must be UTC and Month-Day-Year. CoinLedger's docs put this in capitals — timestamps have to be in UTC, not your local time. HQ Wealth converts every entry's timestamp to UTC before writing the file, so nothing lands on the wrong day or in the wrong tax year.
- The header row must match the template exactly. CoinLedger's own troubleshooting article states that any deviation in the header causes the import to fail. Because HQ Wealth emits the header verbatim, you never touch it.
Mapping HQ Wealth types to CoinLedger's taxonomy
CoinLedger groups transactions into three families — Trades, Income deposits, and Other transactions — and accepts a fixed set of Type values. HQ Wealth maps its own transaction types onto them:
| HQ Wealth type | CoinLedger Type | |---|---| | BUY | Buy | | SELL | Sell | | CRYPTO_TRADE | Trade | | DEPOSIT / WALLET_TRANSFER (in) | Deposit | | WITHDRAWAL / WALLET_TRANSFER (out) | Withdrawal | | INCOME | Income | | STAKING_REWARD / STAKING_REWARD_CLAIM | Staking | | Interest earned | Interest | | Mining income | Mining | | Airdrop | Airdrop | | Chain fork receipt | Hard Fork | | GIFT_OUT | Gift Sent | | Gift received | Gift Received | | SCAM_FAKE_ASSET / SCAM_REAL_ASSET | Theft Loss / Investment Loss | | FEE | (folded into Fee Currency / Fee Amount) |
The incoming types CoinLedger accepts are Income, Interest, Mining, Staking, Hard Fork, Airdrop, Gift Received, and Deposit. The outgoing types are Gift Sent, Casualty Loss, Theft Loss, Investment Loss, Interest Payment, Merchant Payment, and Withdrawal. HQ Wealth only ever writes a Type from this list, so CoinLedger never rejects a row for an unknown label.
Importing CoinLedger → HQ Wealth
Coming the other way, HQ Wealth reads what CoinLedger lets you download. CoinLedger users can export their transaction history and tax reports; the transaction export mirrors the same two-leg, Sent/Received shape as the import template, which makes it a clean source for our parser.
HQ Wealth's CoinLedger importer reverses the mapping above: it reads each row's Type and the populated Sent/Received legs and posts a fully double-entry journal entry into your HQ Wealth ledger, then runs it through your chosen cost-basis method.
| CoinLedger Type / shape | HQ Wealth type (our mapping) | |---|---| | Buy | BUY | | Sell | SELL | | Trade (both legs crypto) | CRYPTO_TRADE | | Deposit (received only) | DEPOSIT | | Withdrawal (sent only) | WITHDRAWAL | | Staking | STAKING_REWARD | | Income / Interest / Mining | INCOME | | Airdrop / Hard Fork | INCOME (airdrop / fork subtype) | | Gift Sent | GIFT_OUT | | Theft Loss / Investment Loss / Casualty Loss | SCAM_REAL_ASSET |
The exact column headers of CoinLedger's downloadable export are confirmed at build time against a live export, since CoinLedger keeps the precise specification in its downloadable template and manual-import guide rather than on a single fixed help page. The mapping logic above is stable regardless of small header differences.
Format quick reference
| Requirement | CoinLedger rule | |---|---| | Template | Universal / Manual Import Template (CSV) | | Structure | Two-leg — Asset Sent + Asset Received on one row | | Date | Month-Day-Year, mm/dd/yyyy hh:mm:ss, UTC only | | Amounts | Positive numbers; direction encoded by which leg is filled | | Fees | Separate Fee Currency + Fee Amount columns | | Types | Fixed taxonomy (Buy/Sell/Trade + income + outgoing sets) | | Header row | Must match the template exactly, or the whole import fails |
Common rejection errors
- Edited header row. Renaming, reordering, or adding a column breaks the import — CoinLedger matches the header verbatim.
- Local-time dates. Timestamps left in local time shift transactions into the wrong day or tax year. Convert to UTC (HQ Wealth's export already does).
- Day-Month-Year dates. CoinLedger expects Month-Day-Year; a European-style date silently misreads the day and month.
- Unknown Type value. A Type outside CoinLedger's list is rejected. HQ Wealth only writes supported values.
FAQ
Is CoinLedger the same as CryptoTrader.Tax? Yes. CoinLedger is the rebrand of CryptoTrader.Tax and remains an actively maintained, leading crypto tax platform.
Does CoinLedger take a single signed amount column? No. It uses a two-leg layout — an Asset Sent side and an Asset Received side. A withdrawal fills only the Sent side; a deposit fills only the Received side; a trade fills both.
Why did my CoinLedger import fail with no clear error? Almost always the header row. CoinLedger's own guidance is that any deviation from the template header causes the import to fail. Re-download the template or let HQ Wealth generate the file so the header is exact.
Can I move my full history from CoinLedger into HQ Wealth? Yes. HQ Wealth imports CoinLedger's transaction export and reconstructs each transaction as a proper double-entry journal entry, then recomputes cost basis under your chosen method.
---
Ready to keep clean books alongside your crypto tax tool? Start with HQ Wealth and move your CoinLedger history in minutes.
Sources: CoinLedger Universal Manual Import Template Guide (help.coinledger.io/en/articles/6028758), Manual Import Guide (help.coinledger.io/en/articles/2584884), Troubleshooting Manual CSV Import Failures (help.coinledger.io/en/articles/4998740), Universal Import Template overview (help.coinledger.io/en/articles/6173382). Format specifications verified July 2026; re-check against the live template before relying on them.