Why the order of work matters
The cost basis of a sale depends on purchases that may be years older. If you start with the most recent year, every sale of an older holding becomes a gap. Building forward from the earliest purchases lets each year start from known holdings.
The IRS digital assets page says taxpayers should keep records of their purchase, receipt, sale, exchange, or other disposition of digital assets, and that digital asset transactions must be reported whether or not they result in a taxable gain or loss. Each Form 1040 also asks a yes-or-no digital asset question.
Step 1: inventory every account and year
- Every exchange, wallet, and network you used, including accounts that are now closed.
- The years each account was active.
- Which exports exist and which periods they cover.
- Bank records of transfers to and from exchanges. They often reveal an account you had forgotten.
Step 2: export the history before it gets harder to reach
Download the full transaction history from every open account now, for all years. For closed accounts, ask the platform’s support for your history. For self-custody wallets, the transactions are on the blockchain and can be retrieved by address.
Keep the original files unchanged and note when each was exported and which time zone it uses. Work in copies.
Step 3: build forward from the earliest year
- Start with the first purchases. Record what was bought, where, when, and for how much.
- Carry holdings forward. What each account holds at the end of a year is where the next year starts.
- Check each year against the exports. A balance that goes negative points to a missing purchase, transfer, or import.
From January 1, 2025, IRS rules identify units account by account, with transition rules for earlier holdings (see IRS Notice 2026-20 for background). Your preparer can tell you how that change applies to your history.
Step 4: connect transfers between your own accounts
Most multi-year gaps come from transfers: a withdrawal in one export with no matching deposit in another, or the reverse. Pair them by hash, amount, and time, and keep both rows. See how to reconcile transfers between wallets and how to review duplicate imports.
Step 5: keep the gaps visible
Some history cannot be recovered. For each gap, record the account, the period, and what you tried. If an estimate is needed, it is a decision for your preparer, and the assumptions behind it should be written down. An open-items list is more useful than a ledger that looks complete but is not.
Demo: three years, three sources
Fictional records · No tax calculation.
- 2022 · Exchange A closed
- BTC purchases. The account was closed in 2023; history requested from support.
- 2023 · Wallet W on-chain
- BTC withdrawn from Exchange A to Wallet W, matched by hash. Ref. DEMO-HASH-07.
- 2025 · Exchange B sale
- BTC sent from Wallet W and sold on Exchange B. The sale links back to the 2022 purchases.
Starting with 2025 alone would show a sale with no basis. Working forward from 2022 connects the purchase, the transfer, and the sale, and leaves one open item if part of the Exchange A history cannot be recovered.
What stays with your preparer
Which years need a return or an amended return, how to report the transactions, and any deadlines are decisions for you and your CPA or EA. If you have received an IRS letter about crypto, contact your preparer promptly; for a CP2000, see the records you need before you respond.
When a records review can help
A records review inventories your accounts and years, identifies gaps, and gives you a written plan before any cleanup is quoted. Tax advice, return preparation, and filing are not included.
This guide is general information based on IRS pages as of October 2026. It is not tax advice.
See how the records fit together
View the illustrative record package to compare source rows, a working ledger, correction notes, and an open-items list.
Related recordkeeping guides