A tax report can look complete while its underlying transaction history is still wrong. Missing wallets, overlapping imports, unmatched transfers, misclassified income and manual cost-basis entries can change gains, losses and balances without creating an obvious error on every row. This guide presents a deliberate CoinLedger cleanup order so that users correct causes before symptoms, preserve source evidence and review the final report only after the account history reconciles.
Last reviewed: October 19, 2026. CoinLedger interfaces, supported integrations, classifications, tax settings and report formats can change. Tax treatment depends on jurisdiction and facts. Verify current product instructions in the official CoinLedger Help Center and consult a qualified tax professional for filing decisions. This independent article is educational and is not tax, legal or financial advice.
Why cleanup order matters
CoinLedger calculates from the data it receives. If an old purchase is absent, a later sale can show missing basis. If the same history was imported twice, balances and proceeds can be overstated. If a transfer between owned accounts remains as an unrelated withdrawal and deposit, the acquisition history may not follow the asset correctly.
These problems are connected. Adding a manual cost-basis position before importing the missing wallet may remove a warning, but it does not repair the incomplete history and can create a duplicate basis once the wallet is added. Good cleanup therefore moves from broad source completeness to narrow transaction edits.
The ten-stage pre-filing audit
| Stage | Primary question | Do not do yet |
|---|---|---|
| 1. Inventory | Have all platforms, wallets, networks and years been listed? | Do not edit basis |
| 2. Import coverage | Is the complete source history present? | Do not silence warnings |
| 3. Duplicates | Was any record imported twice? | Do not bulk delete by appearance |
| 4. Pairing | Do withdrawals and deposits form transfers, trades or bridges? | Do not accept every suggestion blindly |
| 5. Classification | Are purchases, sales, income, gifts and rewards labeled correctly? | Do not mass-edit unlike events |
| 6. Fees | Are fees present once and attached to the correct event? | Do not add the same fee twice |
| 7. Cost basis | Does every disposal trace back to a supported acquisition? | Do not invent values |
| 8. Reconciliation | Do source statements, explorers and large events agree? | Do not rely only on portfolio totals |
| 9. Tax settings | Are year, country and method correct? | Do not choose a method only for a lower result |
| 10. Evidence | Can every correction and output be reproduced? | Do not discard exports |
Mistake 1: starting with the tax report instead of the account inventory
Generating Form 8949 or another report is not the first audit step. Begin with a non-secret inventory of every centralized exchange, brokerage, software wallet, hardware-wallet account, blockchain address, staking service and DeFi protocol used during or before the filing year.
Include closed accounts and platforms no longer operating. An acquisition from several years earlier can determine the basis of an asset sold now. Record the approximate first and last activity dates and the import method available for each source.
Mistake 2: importing only the current tax year
Capital-gain calculations often depend on acquisitions from earlier years. CoinLedger’s official missing-cost-basis guidance emphasizes importing all relevant transaction history across all years. A current-year sale cannot be calculated correctly if the original purchase is absent.
Import historical data in chronological coverage, not merely the date range printed on the final form. Check whether an API returns full history or only a limited period. When an exchange limits downloads, preserve each non-overlapping export and document its dates.
Mistake 3: forgetting a closed exchange or old account
A zero balance does not make an old account irrelevant. It may contain purchases, rewards and transfers that establish where today’s assets came from. Search email receipts, archived statements and withdrawal records to identify forgotten platforms without exposing passwords or recovery phrases.
If a service is inaccessible, gather the best independent records available: bank entries, transaction hashes, destination addresses and prior exports. Do not create convenient estimates simply to remove a warning. Material uncertainty may require professional advice.
Mistake 4: importing the exchange but not the destination wallet
An exchange withdrawal shows only that assets left the exchange. If the receiving wallet is absent, CoinLedger may not see the other side of the transfer or later on-chain activity. Import the relevant public address or supported account for each network.
A public address or read-only identifier may be appropriate for transaction lookup. A seed phrase, private key, exchange password or withdrawal-enabled API key is never required for tax-history import. Stop if any supposed support page requests authority to move funds.
Mistake 5: treating one wallet interface as one blockchain account
A wallet application can display several networks and multiple addresses. Importing an Ethereum address does not automatically import unrelated Solana or Bitcoin history. Additional EVM accounts may also have different addresses even when one application manages them.
Build the inventory by public address and network, not only by the wallet brand. Compare the application’s account list with blockchain explorers and previous withdrawal destinations.
Mistake 6: assuming an API returned complete history
An API connection can succeed while returning only supported products or a limited date range. Spot, margin, futures, earn products, card rewards and staking may use different records. “Connected” is therefore a transport status, not proof of completeness.
- Compare the earliest imported date with the account’s first activity.
- Compare transaction counts with exchange statements.
- Check deposits, withdrawals, trades, fees and rewards separately.
- Review whether archived or migrated products require another export.
Mistake 7: uploading the wrong CSV report
Exchanges often offer order history, trade history, ledger history and account statements. An order report may omit deposits, withdrawals or fills; a wallet statement may omit derivatives. Follow the platform-specific CoinLedger instructions and preserve the original downloaded file.
Do not assume the largest file is the correct one. Confirm required columns, timezone, asset quantities and coverage before importing.
Mistake 8: editing the original CSV in a spreadsheet
Spreadsheet software can change long transaction identifiers, interpret asset symbols as dates, round decimals or reformat timestamps. Keep the untouched original as evidence. If transformation is necessary, work on a copy and record every change.
For unsupported sources, use CoinLedger’s documented manual template rather than renaming random headers until an upload succeeds. A successful upload can still represent the event incorrectly.
Mistake 9: importing overlapping API and CSV history
Using an API for recent activity and CSV files for older history can be reasonable, but overlapping dates can duplicate transactions. Define a boundary date and verify how the integration handles it. Do not assume automatic duplicate detection will catch every variation.
After each import, note the source, file name, date range and transaction-count change. This makes unexpected duplication traceable.
Mistake 10: uploading the same file or address twice
CoinLedger reports that it filters many duplicates, but some can remain depending on the import method. A duplicate address, repeated CSV or similar manual transaction can inflate proceeds, income and balances.
Use the platform and transaction filters to compare timestamps, assets, quantities and identifiers. Remove a record only when its duplicate origin is understood. Two similar recurring rewards are not necessarily duplicates.
Duplicate review checklist
| Signal | Possible explanation | Evidence to compare |
|---|---|---|
| Identical timestamp and amount | Repeated import or genuine batch event | Transaction ID and source account |
| Same exchange listed twice | API plus CSV overlap | Import ranges and account names |
| Same address added twice | Duplicate blockchain source | Public address and network |
| Two deposits after one withdrawal | Duplicate or protocol output | Explorer transaction and log events |
| Repeated reward values | Scheduled reward or duplicate | Provider statement and transaction hash |
Mistake 11: deleting a strange transaction before checking its source
A transaction can look wrong because its partner is missing, its label is incomplete or its token symbol changed. Deleting it may remove legitimate activity and make reconciliation harder. First open the original exchange record or blockchain explorer entry.
Use a note or correction log to record why an item was removed. A reviewer should be able to distinguish a proven duplicate from an inconvenient transaction.
Mistake 12: marking every deposit as income
A deposit can represent a purchase, transfer from another owned account, gift, refund, bridge output, airdrop, staking reward or other receipt. The direction alone does not determine tax treatment. Review the economic event and source evidence.
If a deposit is the receiving side of a transfer, import or identify the sending account rather than treating the asset as newly acquired income merely because it entered the account.
Mistake 13: leaving actual income as a plain deposit
Staking rewards, mining rewards, interest and some airdrops may require an income classification depending on jurisdiction and facts. A plain deposit may not appear in the intended income report or may receive an inappropriate acquisition treatment.
CoinLedger allows supported transaction shapes to be reclassified. Confirm the event in the source before using a single or bulk classification. Similar-looking deposits can have different legal treatment.
Mistake 14: treating every withdrawal as a taxable disposal
Sending an asset to another wallet owned by the same taxpayer is different from selling it, paying someone or losing access. An unmatched withdrawal should be investigated, not automatically labeled as a sale or transfer.
Locate the destination address, receiving transaction and ownership at the time. Network fees may have separate treatment even when the principal movement is between owned accounts.
Mistake 15: matching transfers by amount alone
Many users move common round amounts. A withdrawal of 1 ETH and a deposit of 1 ETH near each other are not necessarily the same event. Compare asset, network, timestamp, transaction hash, source, destination and fee behavior.
CoinLedger’s “Create transfer” workflow can produce the missing opposite side for isolated cases, but importing the actual missing source is preferable when a larger section of history is absent.
Mistake 16: accepting every potential match in bulk
CoinLedger can suggest potential bridges, trades and transfers when imported records arrive as separate withdrawals and deposits. Suggestions accelerate review, but the official documentation says the user can change the proposed type. Review unusual or high-value pairs individually.
- Confirm both transactions describe one economic action.
- Check whether the asset stayed the same.
- Explain quantity differences through known fees.
- Distinguish a cross-chain bridge from a market trade.
- Do not merge unrelated events simply to clear the queue.
Mistake 17: confusing a bridge with a transfer or trade
A bridge can move value between networks and may return a representation of the asset with a different contract or symbol. CoinLedger provides a distinct bridge workflow and an advanced setting concerning bridge tax treatment. The legal conclusion is not universal.
Identify the protocol transaction, source asset, destination asset, networks and amounts. Then use the classification consistent with the actual event and professional advice. The separate One Crypto Library guide covers wrapped and bridged crypto taxation in more detail.
Mistake 18: forcing a merge when assets or amounts do not agree
CoinLedger can reject a proposed transfer when the assets differ, because an ordinary transfer requires the same asset. A mismatch may indicate a trade, bridge, fee, rebasing token, incomplete record or wrong pair.
Do not edit quantities merely to make the button work. Compare source documents first. If a legitimate network fee explains the difference, record it according to the documented workflow rather than changing the economic amount without evidence.
Mistake 19: overlooking fees or counting them twice
Fees may appear inside the exchange trade, as a separate ledger line or as an on-chain payment. Adding a manual fee when the imported record already includes it can double the cost. Omitting it can affect proceeds, basis or expense reporting.
Trace fees from the source statement and transaction receipt. Determine which asset paid the fee and whether CoinLedger already attached it to the event. Tax treatment varies by jurisdiction and transaction purpose.
Mistake 20: treating spam tokens as genuine income
Public addresses can receive unsolicited tokens or NFTs. A displayed balance or incoming transfer does not prove the owner accepted a valuable airdrop or had practical control over a legitimate marketable asset. Interacting with unknown tokens can also create wallet-security risk.
Compare contract addresses with reliable sources and review CoinLedger’s supported handling. Do not visit a URL embedded in a token name. Document why an item was ignored or reclassified, particularly if it affects a report.
Mistake 21: ignoring uncategorized transactions
Uncategorized activity signals that the imported shape did not map confidently to a supported type. It should be resolved using the exchange record, protocol interface, transaction receipt or explorer—not by selecting the first available classification.
Review high-value and high-complexity events first, then use filters to group genuinely identical patterns. Test a small batch before applying a bulk classification.
Mistake 22: entering manual cost basis before finding missing history
A missing-cost-basis warning usually means CoinLedger cannot see how an asset was acquired. The official troubleshooting order begins with importing missing exchanges, wallets and years. Manual positions are a later tool, not the default response.
First ask where the asset came from. If it was purchased elsewhere, import that source. If it was received through a bridge, merge the relevant legs. If it was income, classify the receipt. Only use a documented manual position when the historical source cannot be reconstructed and the value is supportable.
Mistake 23: ignoring a warning just to make the screen clean
CoinLedger allows certain warnings to be ignored, but hiding a warning does not restore absent data. Its official guidance notes that ignoring missing cost basis may result in higher reported gains. Review the consequence before using the option.
Keep an exception list with the asset, quantity, transaction, research performed and reason no better evidence exists. Material unresolved items should be reviewed with a tax professional.
Mistake 24: changing the accounting method only after seeing the result
FIFO, HIFO and specific identification can produce different gains because they select different acquisition lots. Availability and documentation requirements vary by country and tax year. Choose a defensible method based on applicable rules, then apply it consistently.
Do not treat the setting as a result-shopping button. Record the selected method, effective period and supporting lot records. Changing the method can alter many transactions even when no import changes.
Mistake 25: trusting totals without sampling individual disposals
A plausible annual gain can conceal offsetting errors. Select several high-value sales, long-held assets, transfers across platforms and complex DeFi events. Trace each from acquisition through every movement to disposal.
For each sample, confirm acquisition date, quantity, basis, disposal proceeds, fees, holding period and selected tax lot. Expand the review if one sample fails.
Timezone and timestamp mistakes
CSV files and APIs may report UTC, local time or timestamps without an explicit zone. A shift across midnight or year-end can change ordering and even the filing year. Preserve the source timezone and use the format required by CoinLedger’s importer.
Do not manually move times merely to make a transfer pair appear closer. Confirm the source convention first. Record any conversion applied to a manual file.
Reconcile against source evidence
After transaction-level cleanup, compare CoinLedger with independent records. Exchange statements can confirm fiat purchases, withdrawals and fills. Blockchain explorers can confirm public on-chain activity. Bank records can support fiat flows but do not replace crypto transaction detail.
| Evidence | Best use | Limitation |
|---|---|---|
| Exchange statement | Trades, deposits, withdrawals and fees | May omit external wallet activity |
| Blockchain explorer | On-chain timestamps, addresses and amounts | Does not establish ownership or tax purpose alone |
| Wallet history | Account and network context | Interface labels may be incomplete |
| Bank statement | Fiat funding and cash proceeds | Does not show token lots |
| Prior tax return | Carryovers and earlier reporting positions | May contain earlier errors |
Build a correction log before editing
A simple log makes the cleanup reproducible. For each material change, record the date, CoinLedger account, transaction identifier, original state, new classification, reason and evidence. Do not place passwords, API secrets or wallet recovery phrases in the log.
Export or preserve a snapshot before major bulk operations where supported. If totals change unexpectedly, the log provides a route back to the decision that caused it.
Review balances without expecting perfect market-value agreement
Portfolio balances are useful diagnostic signals, but they are not the sole tax test. Differences can arise from unsupported assets, spam, rebasing tokens, current market pricing, derivatives or missing accounts. Compare asset quantities at relevant dates rather than only today’s fiat value.
A zero current balance does not prove complete history, and a matching current balance does not prove that acquisition dates and basis are correct.
Large-transaction review
Filter for large proceeds, large gains or losses, missing basis, manual entries and unusual classifications. Material errors deserve individual evidence rather than bulk assumptions. Also inspect transactions near year-end and events that cross wallets or networks.
- Open the source statement or explorer record.
- Confirm the asset and quantity.
- Trace prior acquisition and transfers.
- Verify fees and timestamp.
- Confirm classification and accounting method.
- Record any manual correction.
When bulk classification is appropriate
Bulk tools are efficient when a group has the same source, transaction shape and economic meaning—for example, repeated staking rewards from one documented program. They are dangerous when a filter combines transfers, purchases, refunds and income.
Review several records, change a small batch, recalculate and confirm the result before proceeding. Preserve an explanation of the selection criteria.
When to restart an import instead of patching rows
If an account contains widespread duplicates, wrong date coverage or a fundamentally incorrect file, replacing the affected source can be clearer than hundreds of manual edits. Before deleting anything, export available records, preserve originals and identify exactly which account and date range will be rebuilt.
Do not remove unrelated accounts or corrections. After re-importing, compare transaction counts, earliest and latest dates, warnings and key totals with the prior snapshot.
When to involve a tax professional
Software cannot decide every legal question. Professional review is especially useful for large missing records, business activity, entity accounts, inherited or gifted assets, mining operations, complex liquidity positions, insolvent platforms, cross-border moves and uncertain bridge or wrapping treatment.
Provide the professional with source exports, correction log, unresolved-warning list, accounting settings and generated reports. A screenshot of one total is not a sufficient evidence package.
Filing-ready evidence pack
- Untouched exchange and wallet exports.
- A platform, wallet and network inventory.
- Import dates and coverage ranges.
- A record of duplicate removals.
- A manual-classification and correction log.
- Evidence for significant basis adjustments.
- The selected accounting method and tax settings.
- A list of unresolved exceptions.
- Final CoinLedger reports and filing-software exports.
- A dated snapshot of totals used for filing.
Final pre-filing checklist
- Every exchange, wallet, address, network and relevant year is represented.
- API and CSV coverage has been checked against source statements.
- Overlapping imports and duplicate addresses have been reviewed.
- Transfers, trades and bridges have been paired using evidence.
- Deposits and withdrawals have not been classified from direction alone.
- Income categories reflect the underlying activity.
- Fees are present once and attached appropriately.
- Uncategorized transactions and warnings have been investigated.
- Missing basis was traced to source history before manual positions were used.
- Large and unusual disposals were sampled individually.
- Country, tax year, timezone and accounting method are correct.
- Original evidence and a correction log have been retained.
- Generated reports reconcile to the reviewed dataset.
Troubleshooting common cleanup symptoms
| Symptom | Likely causes | First investigation |
|---|---|---|
| Missing cost basis | Absent acquisition, unmatched transfer or duplicate disposal | Trace backward to the original source |
| Balance too high | Duplicate import or missing outgoing event | Check overlapping sources and withdrawals |
| Balance too low | Missing deposit, wrong network or duplicate disposal | Compare explorer and account coverage |
| Unexpected income | Transfer or spam classified as income | Identify sender, ownership and event purpose |
| Unexpected large gain | Missing basis, wrong lot method or duplicate sale | Audit the largest disposal row |
| Transfer will not merge | Different assets, amount mismatch or wrong pair | Verify hashes, networks and fees |
| Report changes after setting update | Accounting method or bridge treatment changed | Compare settings and prior snapshot |
Frequently asked questions
Should I fix missing cost basis manually first?
No. First import all relevant history and resolve unmatched transfers, bridges and duplicates. Use a supportable manual position only when source history cannot be reconstructed.
Can I accept all suggested transfers at once?
Bulk confirmation may be suitable after sampling proves that the pairs share the same pattern. Review different assets, large values, bridges and amount mismatches individually.
Does a green or warning-free account guarantee accuracy?
No. Warnings detect particular patterns; they cannot know every missing account, ownership fact or legal classification. Reconciliation with source records remains necessary.
Should I delete spam-token deposits?
Investigate the contract and reporting effect first. Do not interact with an unknown token or visit links embedded in its name. Record the reason for any exclusion or classification.
Why did my gain change after importing an old wallet?
The old wallet may contain an acquisition or transfer that supplies cost basis to a later disposal. This is why historical imports should precede manual corrections.
Is a transfer between my own wallets always tax-free?
The principal movement may be non-taxable in some jurisdictions, but fees, wrapped assets, ownership changes and cross-chain events can complicate treatment. Confirm local rules and the actual transaction.
When is the dataset ready for reports?
After sources are complete, duplicates are resolved, paired movements and classifications are reviewed, basis warnings are investigated, settings are confirmed and material events reconcile to independent evidence.
Related One Crypto Library guides
- CoinLedger Cost Basis Review: FIFO, HIFO, Transfers and Missing Tax Lots
- CoinLedger Account Security: SSO, Recovery and Phishing Checks
- CoinLedger Privacy: Wallet Data, Read-Only APIs and Tax Records
- CoinLedger Tax-Loss Harvesting Review
- How to Import Crypto Transactions into CoinLedger
Official CoinLedger cleanup and troubleshooting resources
Use these first-party resources for current interface instructions. Open support pages from the verified coinledger.io or help.coinledger.io domains and never disclose a seed phrase, private key, exchange password or withdrawal-enabled API key.
- CoinLedger — Official Blog — current educational articles, tax updates and product explanations.
- CoinLedger Help Center — When transactions need manual classification — deposits, withdrawals, income, transfers and unsupported transaction shapes.
- CoinLedger Help Center — Reclassifying transactions — individual, bulk and transfer-classification workflows.
- CoinLedger Help Center — Missing Cost Basis warnings — causes, full-history imports, troubleshooting and manual positions.
- CoinLedger Help Center — Duplicate transactions — duplicate warnings, repeated files and address imports.
- CoinLedger Help Center — Potential Bridges, Trades and Transfers — reviewing suggested pairs, merging and correcting failed matches.
- CoinLedger Help Center — Importing bridge transactions — bridge classification, merging, fees and advanced settings.