Crypto Record-Keeping Best Practices: What to Track and Why

Good records are the difference between a return you can defend and a guess you cannot. What to track — transactions, wallets, and receipts — how long to keep it, and a simple system that holds up in an audit.

9 min read · Sources

Retro poster illustration of a deep purple archive cabinet with neat rows of blank-labelled drawers, plain folders stacked on top and a large brass key hanging beside it.
Order is a tax strategy. Illustration for CryptoTaxAI.

Why record-keeping matters for crypto taxes

The IRS treats cryptocurrency as property for federal tax purposes. That single classification drives almost everything about how crypto is taxed: when you sell, trade, or spend crypto, you generally have a capital gain or loss, measured as the difference between what you received and your cost basis in the asset you gave up. Computing that difference accurately — across potentially thousands of transactions, on multiple exchanges, in several wallets — is impossible without good records.

Many people assume their exchange will handle this for them at tax time. In practice, exchanges see only a slice of your activity. Your Coinbase account does not know what you did on a decentralized exchange, in a self-custody wallet, or on another platform entirely. If you bought ETH on one exchange, moved it to a wallet, bridged it to another network, swapped it for a token on a DEX, and later sold some of it somewhere else, no single platform has the complete picture. Only your own records can connect those dots.

There is also the question of proof. The IRS expects taxpayers to substantiate the figures on their returns. If your return is ever examined, you will need documentation showing what you bought, when, for how much, and what happened to each lot afterward. Reconstructing a year of DeFi activity from fragmented, half-deleted exchange exports the night before a filing deadline is not a position you want to be in. Keeping orderly records as you go is far cheaper than forensic reconstruction later.

The data to capture for every transaction

Every crypto transaction that could have tax consequences should be logged with enough detail that you (or a tax professional) can determine its treatment later. At a minimum, capture these fields for each event:

  • Date and time. The exact timestamp matters because fair market value is determined at a specific moment, and holding period — which determines whether a gain is short-term or long-term — is measured from this date.
  • Transaction type. Buy, sell, trade (crypto-to-crypto swap), receive (reward, airdrop, payment), send/transfer, gift, donation, spend, stake, unstake, mint, burn. The type drives the tax treatment.
  • Asset and quantity. Which cryptocurrency or token, and exactly how much of it moved. Include the full precision your wallet reports.
  • USD fair market value at the time. For income events (mining rewards, staking rewards, airdrops), this is the amount of ordinary income you generally recognize. For trades, it establishes proceeds. Record the value in US dollars at the time of the transaction, and note the source of the price.
  • Fees paid. Network (gas) fees and exchange fees. Fees are part of the economics of each transaction and can affect your basis or proceeds, so log them in both native-asset and USD terms where possible.
  • Counterparty or wallet. Where the crypto went and where it came from: exchange name, wallet address, or the protocol involved. This is what lets you trace a lot of coins across platforms later.
  • Transaction hash. For on-chain activity, the transaction hash is the ultimate proof. A single hash can resolve most disputes about what happened and when.

You do not need to memorize this list — a decent spreadsheet template or portfolio tracker captures most of it automatically. What matters is completeness: the records you keep today are the raw material for every tax calculation you will do later.

Tracking cost basis across wallets and exchanges

Your cost basis is, in general terms, what you paid for an asset — including fees — and it is the number subtracted from your sale proceeds to compute gain or loss. Tracking basis is straightforward when you buy and sell on one exchange. It gets complicated the moment coins move between platforms, because basis has to travel with the coins.

Consider a simple example. You buy 1 BTC for $40,000 on Exchange A, paying a $40 fee. Your basis in that bitcoin is $40,040. You transfer it to a self-custody wallet, then later deposit it on Exchange B and sell it for $65,000 with a $65 fee. Your proceeds are $64,935 and your gain is $64,935 minus $40,040, or $24,895. Exchange B has no idea what you paid — from its perspective, you deposited bitcoin out of nowhere. Without your own records linking the purchase to the sale, you cannot compute the gain correctly.

This is the single most common point of failure in crypto record-keeping: transfers between your own wallets are generally not taxable events, but they must still be recorded so that basis follows the asset. If you skip logging transfers, your later sales will appear to have no (or incorrect) basis, which can dramatically overstate or understate your gains. A practical rule: log every movement of crypto, taxable or not. Movements you do not log are the ones that will haunt you at filing time.

Multi-chain activity adds another layer. Bridging tokens between networks, wrapping and unwrapping assets (like ETH to WETH), and moving funds through mixers or privacy tools all create chains of events that your tracker needs to follow. If your portfolio tool does not support a particular chain, export that chain's activity manually and keep it alongside your other records so nothing falls through the cracks.

FIFO, LIFO, and specific identification: the basics

When you sell part of a holding, you need a rule for deciding which units you sold, because each purchase (or "lot") may have a different basis and holding period. The common accounting methods include:

  • FIFO (first-in, first-out): the oldest units are treated as sold first. This is the default method many taxpayers end up using.
  • LIFO (last-in, first-out): the most recently acquired units are treated as sold first.
  • Specific identification: you identify the exact units being sold — for example, the bitcoin from your March purchase — provided you can document the identification with adequate records.

These methods have specific rules and requirements, and the choice can meaningfully change your tax outcome: selling your oldest, long-held lots first (FIFO) might produce long-term gains, while selling recent lots might produce short-term gains taxed at ordinary rates. Which methods are available to you, and what documentation each requires, depends on current IRS guidance and the facts of your situation. This guide describes the concepts at a general level only — tax rules change, so verify current IRS guidance or consult a qualified tax professional before choosing a method. And whichever method you use, apply it consistently: switching methods mid-year without a sound basis invites scrutiny and confusion.

Spreadsheets vs. portfolio trackers

There are two main ways to maintain crypto tax records: a spreadsheet you control, and a portfolio tracker or crypto tax software that imports your data automatically.

Spreadsheets are free, fully transparent, and force you to understand what is happening. A well-structured sheet with one row per transaction and columns for date, type, asset, quantity, USD value, fees, wallet, and hash is a perfectly respectable system, especially for moderate activity. The downsides are obvious: manual entry is tedious, errors creep in, and computing gains across hundreds of rows with FIFO matching is genuinely painful without formulas or scripts. If you use a spreadsheet, add running-balance checks per asset so that your books always reconcile — your recorded balance for each coin should match what you actually hold.

Portfolio trackers and crypto tax software import transactions from exchanges (via API or CSV) and blockchains (via wallet addresses), then compute gains, losses, and income events for you. They handle the hard parts — basis matching, FIFO calculations, fee accounting — and generate the forms your preparer needs. The tradeoffs: they cost money, they need your API keys or wallet addresses, and they are only as good as their data. Auto-imports routinely misclassify transfers as sales, miss internal transactions, or choke on exotic DeFi protocols. Treat any tracker's output as a draft that you review and correct, not as gospel.

Many people use both: a tracker for the heavy computation and a spreadsheet as an independent check or for activity the tracker cannot parse. Whatever you choose, the non-negotiable part is that the raw transaction data is preserved. Software comes and goes; your CSVs and exports are forever.

Exporting your exchange history on a schedule

Exchanges are not archives. Platforms shut down, get acquired, change their export formats, or limit how far back you can download history. API access can be revoked or rate-limited. Relying on an exchange to still have your 2023 data when you need it in 2028 is optimistic.

Build a simple routine: at least quarterly, and always at year-end, export your full transaction history from every exchange you use. Save the files in their original format, name them clearly (e.g., coinbase-2026-Q4.csv), and store copies in at least two places — a local drive and a cloud backup. Do the same for wallet activity if your wallets do not make it easy to reconstruct later. While you are at it, screenshot or save your year-end balances; they make an excellent reconciliation anchor.

Also export anything that is not a "trade": deposit and withdrawal histories, staking reward logs, fee statements, and any tax documents the exchange issues (such as 1099 forms). When different exports disagree — and they occasionally do — having the full set lets you figure out which one is right instead of guessing.

How long should you keep crypto tax records?

There is no crypto-specific retention rule, but the general principles of tax record-keeping apply. As a matter of general practice, many advisors suggest keeping tax records for at least three to seven years after filing the return they relate to, because that window roughly corresponds to the periods during which the IRS can generally examine a return or a taxpayer can amend one. Some practitioners recommend longer retention for records that establish the basis of assets you still hold, since you will need the original purchase records when you eventually sell.

Treat this as a starting point, not legal advice: retention rules have nuances and exceptions, and tax rules change over time. Verify current IRS guidance or ask a tax professional what applies to your situation. When in doubt, keep records longer rather than shorter — storage is cheap, and reconstructed records are expensive. A practical approach is to keep a dedicated folder per tax year containing that year's exports, your gain/loss calculations, the return itself, and any correspondence with exchanges or preparers.

Common record-keeping mistakes to avoid

  • Only recording buys and sells. Airdrops, staking rewards, mining income, referral bonuses, and crypto-to-crypto swaps are taxable events too. If your records only cover exchange trades, your income is understated.
  • Ignoring small transactions. Dozens of tiny DeFi interactions or reward payouts add up, and each one needs a basis and a timestamp. Aggregate where the rules allow, but do not ignore them.
  • Treating wallet transfers as sales. Moving crypto between your own wallets is generally not a taxable event, but many people (and some trackers) record it as one. Log transfers as transfers.
  • Losing the fee trail. Gas fees paid in ETH have their own tax consequences — spending ETH on gas is generally a disposition of ETH. Track fees as first-class events.
  • Mixing personal and business activity. If you both invest and mine (or run a validator), keep the activity in separate wallets and separate books. Commingling makes both sides harder to defend.
  • Trusting a single source. Cross-check your tracker's numbers against your exports and your actual balances. A reconciliation step at year-end catches most errors while they are still fixable.
Not tax advice. This guide is educational content only and does not constitute tax, legal, or financial advice. Cryptocurrency tax rules are complex and change over time. Consult a qualified tax professional about your specific situation before making decisions based on this information.

Updated November 2, 2026

Cost basis is now tracked wallet by wallet

One rule change makes the habits in this guide more than good practice. For dispositions on or after January 1, 2025, the IRS final regulations on digital asset broker reporting require cost basis to be determined on a wallet-by-wallet (or account-by-account) basis: basis accumulated in one wallet can no longer be pooled and applied to coins sold from another. Revenue Procedure 2024-28 gave taxpayers a one-time safe harbor for allocating basis accumulated before 2025 across the wallets and accounts where their remaining assets sit.

The record-keeping consequence is direct: a transfer log is no longer just a way to prove that a move between your own wallets was not a sale. It is the mechanism that keeps each wallet’s basis attached to the right coins. If your records cannot show which lot, with which basis, sat in which wallet on the day of a sale, the wallet-by-wallet calculation cannot be reconstructed after the fact — which is why the per-transaction fields listed earlier in this guide now need one addition: the wallet or account the asset sat in immediately before the disposition.

How long to keep it, in the IRS’s own framework

The IRS’s general record-retention guidance is to keep records until the period of limitations expires for the return they support — and for property, to keep the records until the limitations period expires for the year in which you dispose of the property. Applied to crypto, that means a purchase record from 2021 may still be a live tax document in 2026 if the coin was only sold this year, and the sale record then has to be kept for years beyond that. The practical rule this site recommends — keep exchange exports, wallet logs, and fair-market-value notes for at least seven years after the return that reports the disposition — is a safety margin on top of that framework, not an IRS figure. The framework itself is set out on the IRS page How long should I keep records?

Sources

Keep learning