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.

Quick answer: begin with an inventory of every exchange, wallet, blockchain and tax year; complete the source imports before editing transactions; remove proven duplicates; reconcile withdrawals with deposits; review potential transfers, trades and bridges; classify income and fees; then resolve missing cost basis. Only after those stages should you confirm accounting settings and generate reports. Keep original exports and a correction log so every material change can be explained.

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.

  1. Open the source statement or explorer record.
  2. Confirm the asset and quantity.
  3. Trace prior acquisition and transfers.
  4. Verify fees and timestamp.
  5. Confirm classification and accounting method.
  6. 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

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.

Key takeaway: a warning is usually a clue, not the root problem. Complete the historical source data first, remove verified duplicates second, pair movements third and classify economic events fourth. Resolve cost basis only after those foundations are sound, then preserve the evidence used to generate the final report.