Bitcoin tax software

Exchange CSV vs Wallet History: Why Bitcoin Records Do Not Match

A record-source comparison page for Bitcoin holders who need exchange CSVs, wallet history, on-chain records, labels, and notes connected before software or qualified review.

  • Record-source comparison
  • Reconciliation context
  • Facts before treatment
Bitcoin record-source comparison concept showing exchange CSVs, wallet history, on-chain records, and labels.
Frederick Staunch avatar

Author and review

Reviewed under Bitcoin Plaster's tax-scope boundary

This support page compares exchange CSVs and wallet history as factual record sources. It does not give tax advice, legal advice, financial advice, filing guidance, platform walkthroughs, software recommendations, or treatment verdicts.

Published June 2026Last reviewed June 2026Route A support page

Reviewed as educational record-source comparison, not tax advice, legal advice, financial advice, filing advice, audit-defense advice, tax strategy, retention-period guidance, or personalized guidance.

The page keeps the governing boundary clear: exchange CSVs and wallet history preserve different slices of facts; neither source decides tax treatment by itself.

Future tax software pages should build on this source-comparison standard instead of treating exports, imports, or software output as automatic conclusions.

Record-source comparison

Exchange CSVs and wallet history are partial views of the same Bitcoin history.

The core distinction is simple: exchange CSVs and wallet history preserve different slices of facts; neither source decides tax treatment by itself.

Exchange CSVs, wallet history, and on-chain records can all be accurate while preserving different slices of facts.

Reconciliation means matching sources and adding context so the same Bitcoin history can be understood later.

Neither an exchange CSV nor wallet history decides tax treatment by itself.

1

Compare record sources

Treat exchange CSVs, wallet history, on-chain records, and labels as partial views of the same history.

2

Connect the sources

Match withdrawals, receipts, transaction IDs, fees, labels, notes, and acquisition context before relying on software.

3

Keep treatment separate

Record-source reconciliation organizes facts. It does not decide what any rule means for your situation.

Why records do not match

Your records can all be accurate and still not match cleanly.

If you bought Bitcoin on an exchange and later moved it into self-custody, your records probably live in more than one place.

The exchange may have a CSV or account export. Your wallet may have transaction history. The blockchain may show transaction IDs and address movement. Your own notes may explain why the movement happened.

Those records can all be accurate and still not match cleanly.

This page explains what each source can help preserve, what each source cannot explain alone, why self-custody creates records across multiple systems, and what to gather before using tax software or asking for professional review. It is educational only. It is not tax, legal, or financial advice. Rules differ by jurisdiction and change over time. For the scope of this tax software lane, read the Bitcoin Plaster tax disclaimer.

For the broader lane, start with the Bitcoin tax software hub.

Short version

Those sources are not enemies. They are partial views.

Reconciliation means matching sources and adding context so the same Bitcoin history can be understood later. It does not mean deciding tax treatment.

Record source What it may help preserve What it does not explain alone
Exchange CSV Account-level activity such as purchases, withdrawals, deposits, fees, timestamps, values shown by the source, and platform references. May not show what happened after Bitcoin left the exchange, whether a receiving wallet is yours, or why the Bitcoin moved.
Wallet history Wallet-level activity such as incoming and outgoing transactions, transaction IDs, wallet labels, addresses, timestamps, amounts, and fees. May not preserve the original acquisition record, the local-currency side of a purchase, or the reason a movement happened.
On-chain records Movement evidence, transaction IDs, confirmation time, involved addresses, Bitcoin amounts, and fees. Does not prove purpose, ownership context, tax treatment, or cost-basis continuity by itself.
Labels and notes Purpose, wallet ownership context, matching logic, and how sources connect. They preserve context. They do not decide tax treatment or filing position.

Exchange CSVs

An exchange CSV is one record source, not the complete record.

This can be valuable because many Bitcoin holders first acquire coins on an exchange. But an exchange CSV is not the whole Bitcoin history after self-custody.

An exchange CSV may help preserve

  • Buys.
  • Sells.
  • Deposits.
  • Withdrawals.
  • Recurring purchases.
  • Fees.
  • Timestamps.
  • Reference IDs.
  • Values shown by the source.
  • Account activity connected to a specific platform.

An exchange CSV may not explain

  • What happened after Bitcoin left the exchange.
  • Whether the receiving wallet is yours.
  • Why the Bitcoin moved.
  • How later wallet activity connects back to the original acquisition.

Wallet history

Wallet history follows self-custody activity, but it is not a replacement for acquisition records.

Wallet history is useful because it follows activity that the exchange no longer sees. The exchange record may know the acquisition. The wallet record may know the movement. The holder's job is to connect them.

Wallet history may help preserve

  • Incoming transactions.
  • Outgoing transactions.
  • Transaction IDs.
  • Timestamps.
  • Bitcoin amounts.
  • Network fees.
  • Wallet labels.
  • Address information.
  • User notes, if you added them.

Wallet history may not preserve

  • The original acquisition record from the exchange.
  • The source record for the acquisition.
  • The local-currency value shown by the original platform.
  • Why you moved the coins.

On-chain records

On-chain records can confirm movement. They are not a complete explanation.

A transaction ID is evidence that something moved. It is not evidence of why it moved.

A transaction id may help show

  • That a Bitcoin transaction happened.
  • When it was confirmed.
  • Which addresses were involved.
  • How much Bitcoin moved.
  • What fee was paid.
  • How the transaction appears on-chain.

A transaction id does not show

  • Purpose.
  • Wallet ownership context by itself.
  • Treatment.
  • What you paid on an exchange.
  • Cost-basis continuity on its own.

Self-custody records

Self-custody creates records across multiple systems.

When Bitcoin stays inside one exchange account, more of the activity may be visible inside one system. Once you withdraw to your own wallet, the story splits.

A single movement can appear in several places

  • The exchange shows a withdrawal.
  • The wallet shows a receipt.
  • The blockchain shows the transaction.
  • Your own notes explain the purpose.
  • Your acquisition record preserves the earlier purchase context.

Reconciliation means adding context

  • This exchange withdrawal connects to this wallet receipt.
  • This transaction ID supports the movement.
  • This receiving wallet is mine.
  • This movement was labeled at the time.
  • This earlier acquisition record may be relevant to later review.

Continuity across systems

Exchange withdrawals and wallet receipts need to be connected.

If the exchange withdrawal and wallet receipt are not connected, the history can become harder to understand.

A better record connects the pieces

  • Exchange acquisition record.
  • Exchange withdrawal record.
  • Receiving wallet record.
  • Transaction ID.
  • Timestamp.
  • Amount.
  • Fee.
  • Wallet label.
  • Note explaining the movement.
  • Later movement records where relevant.
Bitcoin cost-basis continuity concept showing exchange records connected to wallet history.

Cost-basis context

A connected record helps preserve continuity across systems.

The wallet side may show coins arriving without the exchange acquisition context. The exchange side may show coins leaving without the wallet destination context. The transaction ID may show movement but not purpose or ownership context.

A better record connects the exchange acquisition record, the exchange withdrawal record, the receiving wallet record, the transaction ID, the wallet label, and the note explaining the movement.

For the cost-basis input layer, see Bitcoin cost basis basics.

  • Connect acquisition records to later wallet movement.
  • Keep exchange withdrawal context next to wallet receipt context.
  • Do not use reconciliation as tax interpretation.

Different slices of facts

Timestamps, fees, labels, and values may live in different places.

The mismatch is not automatically an error. It may simply mean the sources are recording different parts of the same event.

Common source differences include

  • Account timestamp versus confirmation time.
  • Exchange withdrawal record versus wallet receipt.
  • Platform fee versus network fee.
  • Local-currency value shown by an exchange versus Bitcoin-only wallet movement.
  • Platform reference ID versus on-chain transaction ID.
  • Wallet label versus exchange transaction type.
  • Acquisition record versus later movement record.

Software inputs

Software may flag unreconciled records because it needs context.

Different tools handle records, warnings, labels, and imports differently. This page does not claim that software automatically or reliably reconciles exchange and wallet history.

Software may need more context when

  • An exchange is imported but the wallet is missing.
  • A wallet is imported but the exchange acquisition record is missing.
  • A withdrawal and receipt are not matched.
  • The receiving wallet is not labeled.
  • A transaction ID exists but purpose is unclear.
  • Fees appear in one source but not another.
  • Local-currency value appears in one source but not another.
  • Later wallet movement is separated from earlier acquisition context.

No perfect export

One perfect file usually does not exist after self-custody.

The exchange CSV can help preserve account activity. Wallet history can help preserve self-custody activity. On-chain records can confirm movement. Labels can preserve purpose. Acquisition records can preserve cost context.

The recordkeeping standard is not one perfect export

  • Gather the relevant sources.
  • Preserve the original records.
  • Connect matching events.
  • Label wallet movements.
  • Preserve fees.
  • Preserve transaction IDs.
  • Preserve acquisition context.
  • Identify unresolved gaps.
  • Bring unclear issues to qualified review.

Before software

Gather records by source before using tax software or asking for review.

The goal is not to make the tax decision yourself. The goal is to preserve enough factual material that software or a qualified professional has something coherent to work from.

A practical record-source set may include

  • Exchange trade history.
  • Exchange deposit history.
  • Exchange withdrawal history.
  • Recurring buy records.
  • Fee records.
  • Account statements where available.
  • Wallet transaction history.
  • On-chain transaction IDs.
  • Wallet labels.
  • Transfer notes.
  • Acquisition records.
  • Records connecting exchange withdrawals to wallet receipts.
  • Notes for outgoing movements that may need review.
Bitcoin tax professional review boundary concept showing record-source mismatches and scope limits.

Professional boundary

Some mismatches become a facts-and-review question.

Some mismatches are ordinary record-preparation work. You may need to find an export, label a wallet, connect a withdrawal to a receipt, or preserve a transaction ID.

Other mismatches are more serious. At that point, the question is no longer only which source should I gather. It becomes a facts-and-review question.

Bitcoin Plaster can help explain the recordkeeping layer. A qualified professional interprets facts under the rules that apply to your situation.

  • Acquisition records are missing.
  • Exchange records and wallet history do not line up.
  • You cannot tell whether a destination was yours.
  • Software output looks wrong and the source gap is unclear.
  • Coins were received from another person or organization.
  • Outgoing movements may need treatment review.
  • Several years of history have to be reconstructed.
  • The amount involved makes guessing irresponsible.

Simple reconciliation

For each major movement, connect the sources before interpreting them.

If you cannot connect a source, do not invent missing context. Preserve what you have, label the gap clearly, and decide whether the issue needs better records or qualified review.

  1. Match the acquisition and withdrawal records

    What source shows the acquisition, what source shows the withdrawal, and what source shows the receipt?

  2. Anchor the movement with transaction context

    What transaction ID supports the movement, what fee record exists, and what timestamp does each source show?

  3. Preserve wallet and purpose context

    What wallet label explains the destination, what note explains the purpose, and what part remains unclear?

FAQ

Exchange CSV vs wallet history FAQ

These answers stay at record-source comparison and reconciliation level. They do not provide tax treatment conclusions, platform instructions, or software recommendations.

An exchange CSV is an account-level record from an exchange. It may show purchases, withdrawals, deposits, fees, values shown by the source, timestamps, and platform references. Wallet history is a wallet-level record. It may show incoming and outgoing wallet activity, transaction IDs, amounts, timestamps, fees, addresses, labels, and notes. They preserve different slices of facts. Neither source decides tax treatment by itself.