1099-DA vs CSV: How to Reconcile When Totals Don't Match

Starting with the 2025 tax year, US crypto brokers are required to issue Form 1099-DA for digital asset sales. Coinbase, Kraken, Robinhood Crypto, and most of the big players sent their first batch in early 2026. And almost immediately, people noticed that the totals on their 1099-DA don't match the totals on the CSV they exported from the same exchange.

That's not a bug. It's the expected behavior — 1099-DA reports what the broker is able to attest to, while the CSV reports every movement on the account. The two were never going to match exactly. But the IRS is going to see the 1099-DA, so the numbers on your Form 8949 need to reconcile cleanly.

Why the Totals Diverge

Four common reasons your 1099-DA won't match your raw CSV:

  1. Transfers in. If you deposited BTC from an external wallet, the broker doesn't know the original cost basis. The CSV shows the deposit; the 1099-DA reports the eventual sale with $0 or "unknown" basis. These are the single biggest source of mismatches.

  2. Transfers out. Moving crypto off the exchange isn't a sale. The CSV records the outflow. The 1099-DA ignores it. If your software is reading the CSV naively, it may double-count a subsequent sale after the asset was moved back in.

  3. Staking, rewards, airdrops. Treated as ordinary income at fair market value on receipt — that goes on Schedule 1, not Form 8949. The CSV lumps them in with trades; the 1099-DA excludes them. A good converter separates them automatically.

  4. Cost-basis method mismatch. Brokers default to FIFO unless you opted into HIFO or specific identification before the sale. If your CSV tracker (CoinTracker, Koinly, etc.) was using HIFO and the broker reported FIFO, you'll have two different cost bases for the same sale.

The Reconciliation Flow

The goal isn't to make the numbers identical — it's to understand every delta and justify it on paper. Here's the order of operations:

1. Start with the 1099-DA as Ground Truth

Whatever the 1099-DA says, that's what the IRS already has on file. Your return needs to reconcile to it or the IRS will send a CP2000 notice.

2. Pull the CSV and Categorize Every Row

Run the CSV through a converter that separates:

  • Sales (Form 8949)
  • Income (staking, rewards, airdrops — Schedule 1)
  • Transfers (not taxable, but tracked for basis)
  • Fees (absorbed into basis/proceeds)

3. Match Sales Line-by-Line

Take each sale on the 1099-DA and find the corresponding row(s) in your CSV. The converter does this automatically by date, quantity, and asset. Mismatches fall into one of three buckets:

Mismatch Cause Fix
Broker missing basis ("unknown") You transferred in without sharing basis Supply the original acquisition date + cost from your own records; report on Form 8949 with box C (noncovered)
Broker reports basis, yours differs Different accounting method (FIFO vs HIFO) Amend your own records to match broker's method for covered lots, or file an explanatory statement
Row on broker, not on CSV Broker reported a sale that post-dates your export Re-export the CSV through year-end

4. Cover the Non-Broker Transactions Separately

If you traded on a DEX, used a non-reporting exchange, or had on-chain activity not tied to a broker, those transactions won't appear on any 1099-DA. They still go on Form 8949, just under box C (noncovered) instead of box A (covered).

5. Produce Two Form 8949 Sections

Most returns with crypto activity will end up with:

  • Box A (short-term, broker-reported, basis reported): the clean 1099-DA sales
  • Box C (short-term, not reported to IRS): DEX, on-chain, transferred-in assets
  • Box D/F long-term equivalents

The TXF file produced by Crypto Tax Converter already structures the output into the right boxes, so TurboTax imports it without guesswork.

A Worked Example

Coinbase sends you a 1099-DA showing:

  • 40 transactions, proceeds $48,200, cost basis $37,100

Your Coinbase CSV shows:

  • 47 transactions, $48,200 in sale proceeds, $35,900 in cost basis, plus $1,850 in staking rewards

The seven-transaction delta is the staking rewards (non-sales). The $1,200 basis difference is a transferred-in ETH position that Coinbase reported with $0 basis — you have your own records showing you bought it for $1,200 on Uniswap in 2023.

Clean reconciliation:

  • Form 8949 box A: 40 sales, proceeds $48,200, basis $37,100 (matches 1099-DA)
  • Form 8949 box C adjustment: 1 row correcting the transferred-in ETH basis from $0 to $1,200, using code B
  • Schedule 1 line 8v: $1,850 in staking rewards

The 1099-DA converter handles this reconciliation automatically: upload the PDF plus the supplemental CSV, and it produces the box A/C split with the basis adjustments already applied. If you only have a CSV (no 1099-DA yet), start with the CSV to TXF flow instead.

FAQ

What if the 1099-DA totals are just wrong?

Request a corrected 1099-DA from the broker. If they won't correct it before your filing deadline, file accurately and attach a statement explaining the discrepancy. Keep screenshots.

Do I need to report transactions not on any 1099-DA?

Yes. The absence of a 1099-DA doesn't mean the transaction isn't taxable — it just means the broker didn't report it. You're still required to report all sales.

Which box on Form 8949 does a 1099-DA sale go on?

Box A (short-term, broker-reported, basis reported) if held ≤1 year and basis was reported. Box D if held >1 year. If basis wasn't reported (common for transferred-in positions), use box B or E.

Can my converter handle DEX + centralized exchange data in one file?

Yes, most modern crypto tax converters can merge multiple sources. Just be sure the DEX transactions are correctly tagged as box C (noncovered) so they don't look like they're missing from the 1099-DA.

Convert your crypto CSV in minutes

Upload an exchange CSV or 1099-DA and get a TurboTax-ready TXF. Pay-per-use, no subscription.

Convert Now