1099-DA Cost Basis Missing or $0? Here's How to Reconstruct It
A blank basis box isn't the IRS saying you have no basis. It's your exchange admitting it lost the paperwork trail. The burden of proof is yours — but the evidence is usually still findable. Here's the reconstruction playbook, step by step.
Image: Illustrative purposes. Record-reconstruction guidance based on IRS Publication 550 and Form 8949 instructions.
Here's a message I've read dozens of times this year: "My exchange sent a 1099-DA. I sold for $30,000 and the basis says N/A. Does the IRS really think I made $30,000 from thin air?" Technically, yes — if you let the form stand as filed. Their system sees proceeds, sees no offsetting basis, and taxes the difference. Nobody at the IRS is being unfair on purpose; there's simply no other number in front of them.
Your move is to supply the number yourself. This isn't a loophole or an aggressive position — Form 8949 exists precisely so you can report basis that differs from the broker's. What you need is evidence. And unlike five years ago, the evidence mostly survives somewhere: in an old CSV export, on a public blockchain, in an email receipt, inside bankruptcy claims. Let's find yours.
1. Why the basis is missing — diagnose your case first
Different causes need different fixes. Run down the list and mark which ones apply:
| Cause | What happened | Best evidence source |
|---|---|---|
| Cross-platform transfer | Bought on Exchange A, sold on Exchange B | Exchange A full ledger CSV |
| Self-custody hop | Coin moved through MetaMask/Ledger/hardware wallet | Blockchain explorer + original buy record |
| Pre-2026 acquisition | Brokers weren't required to track basis then | Historical account statements |
| Income receipts | Airdrop, staking reward, mining payout, payment | FMV on receipt date (ordinary income basis) |
| Dead exchange | FTX, Mt. Gox, Celsius, BTC-e, Cryptopia… | Chain records + claim/distribution documents |
| Bridge / swap | Cross-chain bridge wrapped the asset | Explorer records on both chains |
The single most common row is the first one. Every transfer between custodians resets the basis knowledge at the receiving end. You didn't do anything wrong — the plumbing just doesn't carry the data yet. That changes with inter-broker transfer statements phasing in from 2027, but it doesn't help the return you're filing now.
2. The evidence hierarchy: start with the strongest
When you're building basis records, quality matters more than quantity. This is the order I'd trust them in an audit:
- Original exchange records. A complete ledger CSV from the buying exchange is gold — timestamp, pair, quantity, price, fees. Most exchanges let you export the full account history; use that, not the auto-generated tax report, because tax reports sometimes apply assumptions you can't see.
- Bank and card statements. They prove dollars left your account and when. Pair with an exchange deposit record to anchor the purchase.
- Blockchain explorer records. A public, immutable ledger showing date, time, address, and amount. Etherscan for EVM chains, Solscan for Solana, blockchair.com or a coin-specific explorer for Bitcoin forks. It proves movement; it doesn't show USD price, so combine with step four.
- Historical price databases. CoinGecko and CoinMarketCap publish free historical daily (and often hourly) prices. Use the USD price at the transaction's UTC time. Both sites let you export the range you need.
- Email receipts and confirmations. Older exchange "your order filled" emails often include price and quantity. Search your inbox for the exchange name plus "receipt," "filled," or "confirm."
- Bankruptcy and claims records. FTX claim portals, Mt. Gox distribution schedules, and Celsius resolutions establish holdings and dates for assets stuck in failed platforms.
Screenshot or PDF-export everything as you collect it. Websites redesign, free tiers change, and emails get auto-archived. The audit window can stretch three years past filing — six in fraud cases — so store the evidence file alongside your return.
3. A reconstruction workflow that actually works
Do this in one spreadsheet, one tab per source platform:
Step 1 — Inventory the disposals. Start from the 1099-DA list (your sales), not from your purchases. For each sale, you need one acquisition to match it to. This keeps you focused on the rows that affect this return.
Step 2 — Walk backward through transfers. For each sold unit, find where it came from. Exchange B deposit → your wallet withdrawal → Exchange A withdrawal → purchase row. Explorers make this traceable: the transaction hash links the hops. Write the purchase date and USD cost on the sale row as you go.
Step 3 — Fill income receipts specially. Airdropped or staked coins take a basis equal to their fair market value on the day you received them — the same value you should have reported as ordinary income. Forgetting the income side creates double tax: you'd have paid nothing on receipt and then show $0 basis on sale, so the full proceeds get taxed twice in economic terms.
Step 4 — Price the gaps. Where no purchase record exists but the chain shows an inbound transfer, use the historical FMV at that date. Document source, URL, and timestamp. If the coin is delisted or obscure, archive.org snapshots of CoinGecko pages, old CoinMarketCap historical files, and even contemporaneous exchange order books are acceptable corroboration.
Step 5 — Total and sanity-check. Your reconstructed basis for each asset should never exceed its sale proceeds for assets bought before a huge run-up — unless you genuinely bought the top. And total USD invested should roughly tie to your fiat deposits plus reported income receipts. Wild deviations mean a matching error, not a tax miracle.
Want to skip hand-matching for the simple cases? Our browser-based CSV batch tool reads standard exchange exports, matches buys to sells, and splits holdings into short- and long-term buckets automatically — everything runs locally on your machine, so transaction history never leaves your laptop.
4. A full reconstruction, start to finish
Say your 1099-DA from Kraken lists a single 2025 disposition: 2.5 ETH sold for $10,200, basis blank. You know the ETH came from two sources. Here's how the trace actually goes:
| Lot | Source | Date | Qty | Evidence | Basis |
|---|---|---|---|---|---|
| 1 | Coinbase purchase | 2023-02-14 | 1.0 ETH | Coinbase ledger CSV @ $1,650 | $1,650 |
| 2 | Staking reward | 2024-06-02 | 0.5 ETH | Explorer + FMV receipt @ $3,800 | $1,900 |
| 3 | DEX swap (USDC) | 2024-11-20 | 1.0 ETH | Etherscan hash + USDC out record | $3,400 |
Reconstructed basis: $6,950 against $10,200 proceeds — a $3,250 gain, not a $10,200 gain. At a 24% short-term rate (if FIFO puts the 2023 lot over a year, part of it qualifies for long-term rates, which improves things further), correcting the basis saves roughly $1,600 on one form line. Multiply by a typical portfolio and you'll see why this is the highest-value hour of your tax season.
Run the real gain through the free calculator before filing so the number on your Schedule D matches what you actually expect to owe.
5. FIFO vs Specific Identification — pick once, document forever
When coins were bought in multiple lots, you need a rule for which lot a sale consumes. We covered the mechanics in depth in the FIFO cost basis guide, so here's just the decision piece:
- FIFO (first in, first out) is the IRS default. Oldest coins sell first. No election, no special records beyond acquisition dates. For long-term holders, FIFO often works out nicely because the oldest coins have the lowest basis — but also the longest holding period, frequently landing in the 0% or 15% long-term bracket.
- Specific Identification lets you sell a chosen lot — typically the highest-basis one to minimize gain. The catch the IRS enforces: you had to identify that specific unit at the time of sale, with wallet/address-level records. You can't sort your spreadsheet in April and call it Spec ID.
If your history is a tangle of transfers and you never did lot-level labeling at sale time, FIFO is your honest answer. Reconstruct acquisition dates as tightly as the evidence allows and apply it consistently across all years.
6. Putting the corrected number on Form 8949
When your basis differs from the form, you still report the transaction on Form 8949 — you don't file a separate "my basis is different" form. The mechanics:
- Check the box category: Box A (basis reported to IRS), Box B (basis not reported — most 2025 1099-DA sales with blank basis land here), or Box C (you didn't receive a form, e.g. DEX trades).
- Column (d): proceeds, matching the 1099-DA.
- Column (e): your reconstructed basis.
- Column (f) and (g): adjustment code and amount only when something else is going on (wash-sale-style adjustments, market discount, etc.). A simple "I have better basis than the broker" needs no adjustment code — just the number in column (e).
Keep your reconstruction worksheet with your return copy. You don't mail it unless asked, but if the IRS questions the figure, that packet is the answer.
7. The hard case: exchanges that died
Few things trigger more panic than realizing the basis for a current sale sat on a platform that collapsed. Take a breath — the blockchain survived even if the company didn't.
For coins you withdrew before the failure, explorer records show the outbound transfer. Date that, pull historical price, and you have a defensible basis anchor. For coins recovered through bankruptcy (Mt. Gox's multi-stage distributions, FTX claim payouts, Celsius recoveries), the distribution documents establish what you received and when; the tax treatment of those distributions is its own messy topic — recovered basis, potential theft-loss claims, and cancellation-of-debt issues — and it's worth a CPA familiar with bankruptcy tax work if the amounts are material.
Truly unrecoverable basis is rarer than people fear. The combination of on-chain history plus archived price data reconstructs the vast majority of cases back to 2017 or earlier.
The takeaway
The $0 basis on your 1099-DA is an invitation to overpay, not an IRS conclusion. The form reports a data gap; Form 8949 is where you close it. Strong evidence beats clever arguments every time — exchange CSVs first, blockchain and historical prices second, consistent method throughout, and everything saved as a file you can hand over without scrambling.
Do the pull this weekend. Request the full-history exports now, while you still remember every email address you ever registered with; accounts you haven't touched since 2021 are the ones that lock you out.
Which source rescued your oldest missing basis — an old CSV, a blockchain explorer, or an email receipt you'd forgotten existed? Tell the story below; someone with the same dead exchange is reading this right now.
References & official sources
- • IRS Form 8949 Instructions — Reporting basis different from broker-issued forms
- • IRS Publication 550 — Cost basis, holding periods, and recordkeeping
- • IRS About Form 1099-DA — Basis reporting phase-in schedule
- • IRS Regulation §1.1012-1 — Specific identification of stock and digital asset lots
- • Notice 2014-21 & Rev. Rul. 2019-24 — Basis of airdropped crypto equals FMV at receipt
- • Cohan v. Commissioner, 39 F.2d 540 (2d Cir. 1930) — Reasonable reconstruction doctrine
Written by
CryptoTaxCalc TeamA small team of crypto investors and tax researchers. Every guide is cross-checked against primary tax-authority sources (IRS, HMRC, BMF, CRA, ATO) before publication. About the team & all articles →