Tools / 01 · Free preview · full report $19 early bird, then $29 · Kraken + Coinbase
1099-DA reconciler
Moved coins from one exchange to another? The exchange you sold on usually doesn't know what you paid, so its Form 1099-DA can show the sale with a blank cost basis. Drop in your exports from both: this page matches the withdrawal on one to the deposit on the other, carries the original purchase date and cost across, and shows every sale that still needs a basis.
Privacy
No account. No API keys. No upload. Your files never leave this browser: the math runs in this tab. Open DevTools > Network to check, or switch off Wi-Fi after the page loads; it still works.
Drop your Kraken and Coinbase CSVs here
Kraken ledgers.csv · Coinbase transaction history · several files are fine · any number of transactions
How to export your files
- Kraken: History > Export, choose Ledgers (not Trades), all assets, from your first-ever activity to today. Unzip and use
ledgers.csv. Times are UTC (Kraken: ledger fields). - Coinbase: from the Taxes / Reports area, download the transaction history CSV for all time (Coinbase: Tax forms, explained).
- You can add several files. Files from the same exchange merge into one account, and duplicate rows are dropped.
Only use LIFO or HIFO if you identified the units (or recorded a standing order in your own records) at or before each sale; for 2025-2026 the IRS lets you do that in your own books (Notice 2026-20). Brokers use FIFO when you don't (IRS i1099da), so the report keeps the form's rows and puts the difference in column (g) with code B.
Sample report. Synthetic Kraken and Coinbase files with invented amounts (and invented 1099-DA totals in the comparison). This is exactly what the full report ($19 early bird, then $29) shows for your own files.
Needs a cost basis
These deposits have no matching withdrawal in your files, so the tool doesn't know when or for how much you got them. Sales from them stay out of the totals (shown as missing basis, never $0). Add the file they came from, or enter the original purchase date and total cost:
Income with no USD value in the file
Rewards and staking are income at their value when received, and that value becomes their basis (Rev. Rul. 2023-14). Enter the USD value on that day:
Transfers between your accounts
Matched automatically: certain (same blockchain id), high (arrived within 6 hours, at most 1% less: the gap is the network fee), medium (fits, but another transfer fits too). Low matches (72 hours, 5%) wait for your OK. Reject any match that wasn't a move between your own accounts.
No transfers between your accounts found in these files.
Predicted Form 8949 boxes
Prediction from the IRS rules, not your actual form: coins bought on that exchange after 2025 are "covered" (basis likely reported: box G short-term, J long-term). Coins bought before 2026 or transferred in are noncovered (basis likely blank or not reported: H or K, and you enter the correct basis). "?" means basis or date unknown. Check against your 1099-DA.
Sales
Import notes ()
Full report
Form 8949, audit trail and 1099-DA check
- Form 8949 export: every sale in boxes G-L, columns (a)-(h), with code B and E adjustments. CSV plus a printable statement.
- Audit trail: each sale traced to the lots it used and the original buy, across exchanges.
- Compare with your 1099-DA: type the form's totals and see every difference, with what to do about it.
The key check sends only the key to our server, never your files. 14-day refund: reply to your Gumroad receipt within 14 days of purchase for a full refund.
Join the early-bird list to get the $19 early-bird price (until Jan 31, 2027; then $29 per tax year): join the early-bird list. It's the free Stoic Investor email by John Calloway; unsubscribe anytime.
Form 8949 rows
Digital assets go in boxes G-L, never C or F (IRS Instructions for Form 8949, 2025). (d) is the proceeds shown on the 1099-DA, which are net of fees (i1099da box 1f). (e): for covered coins, the basis the form shows; for noncovered coins, your correct basis. Code B: the form's basis is wrong, corrected in (g). Code E: fees not reflected on the form, as a negative number in (g). (h) = (d) - (e) + (g). For covered rows the export assumes the form's basis matches your files; if the comparison below shows a different basis on your form, use the form's number in (e) and the difference in (g) with code B.
Audit trail
Every sale, the lots it used (by your method) and where each lot came from, back to the original buy, including moves between exchanges.
Compare with your 1099-DA
Type the totals from each exchange's 1099-DA (or its summary page), by the "Applicable checkbox on Form 8949" code. Leave a field blank if the form leaves it blank. We compare with what your files say the form should show, and with your 8949.
Export your Form 8949: $19 early bird (then $29) · any number of transactions · 14-day refund
Get the exportPricing
Free preview. $19 early bird for the full report.
$19 early bird until Jan 31, 2027, then $29 per tax year. One flat price, any number of transactions. 14-day refund.
Running a trading bot?
Thousands of trades, one flat price: $19 early bird, then $29. Most crypto-tax software prices by transaction count: entry plans run $49 to $99 for 100 to 300 transactions (Koinly, CoinLedger, CoinTracker and Awaken pricing pages, checked Sep 30, 2026). Here the math runs in your browser, so there's no per-transaction cost to pass on.
| Free | Full report: $19 early bird, then $29 | |
|---|---|---|
| Import Kraken + Coinbase CSVs | Yes | Yes |
| Automatic transfer matching between exchanges | Preview, with confirm/reject | Yes |
| Gains summary (short/long-term, FIFO/LIFO/HIFO) | Yes | Yes |
| Missing-basis warnings and fix form | Yes | Yes |
| Form 8949 export: boxes G-L, columns (a)-(h), codes B/E, CSV + printable statement | No | Yes |
| Per-sale audit trail back to the original buy, across exchanges | No | Yes |
| Compare with your 1099-DA, line by line | No | Yes |
| Transactions | All imported; first 10 sales listed | Unlimited, every sale |
| 14-day refund | n/a | Yes |
Not tax advice. This is software that does math on files you provide. You choose the method and you file your own return. We don't see your data and can't review it. Check every number against your 1099-DA and ask a tax professional if you're unsure. Rules cited below were checked on Sep 30, 2026.
Why transferred coins lose their basis
For tax year 2026, brokers must report cost basis on Form 1099-DA, but only for covered digital assets: ones "acquired after 2025 … in an account for which the broker provided custodial services" (IRS, Instructions for Form 1099-DA, revised Apr 30, 2026). Coins you bought on Kraken and moved to Coinbase weren't acquired in your Coinbase account, so they're noncovered there. Coinbase says that for noncovered assets "the cost basis section will be shown as blank with the 'noncovered' box checked" (Coinbase Help). Blank isn't zero: on Form 8949 you "enter the correct basis of the property in column (e)" (IRS, Instructions for Form 8949).
How the matching works
- Automatic: same coin, the deposit arrives 0 to 6 hours after the withdrawal, and it's at most 1% smaller (the difference is the network fee). These thresholds are our judgment, not an IRS rule.
- Suggested: same coin within 72 hours and up to 5% apart. You confirm.
- Carried over: the coins that leave follow your lot method (FIFO by default) and arrive with their original purchase date and cost. We add the basis of the network-fee units to the coins that arrived rather than treating the fee as a sale; we found no IRS instruction on this point, so ask a professional if the amounts matter.
- Unmatched withdrawals are treated as moves to your own wallet (not taxable). Unmatched deposits need a basis from you.
- Per account: basis is tracked account by account, not pooled across exchanges (IRS, final broker regulations). Long-term means held more than one year. Proceeds are net of fees (i1099da, box 1f).
What the full report does
- Form 8949 rows. Digital-asset sales go in boxes G, H or I (short-term) and J, K or L (long-term); "do not use box C [or F]" for them (IRS, Instructions for Form 8949, 2025). Covered rows keep "the basis shown on that form"; a different correct basis goes in column (g) with code B. Noncovered rows get "the correct basis of the property in column (e)". Fees the form didn't reflect go in (g) as a negative number with code E. A sale that mixes short- and long-term lots is split into two rows.
- Box I/L. If an exchange didn't send you a 1099-DA, tick that for the account and its rows move to I or L.
- Blocked, not guessed. A sale with unknown basis or acquired date is left out of the export and listed, never filled with $0.
- Audit trail. Each sale lists the lots it used and the original buy behind each lot, including the withdrawal and deposit that moved it between exchanges. Keep it with your records.
- 1099-DA comparison. You type each form's totals by box; the report shows which numbers differ, by how much, and the usual reason (fees not deducted, a missing file, a stablecoin sale left off under the optional $10,000 rule in the i1099da, a covered basis that needs code B).
- Refund. 14 days, full refund: reply to your Gumroad receipt. Support covers the software only, never what to put on your return.
Limits of the preview
- Kraken ledgers and Coinbase transaction history only, USD prices only. Parsers are built from the documented export columns (as tracked by the open-source BittyTax project), not yet checked against every real export: if a file isn't recognized, tell us the header row (never send the data).
- Kraken crypto-to-crypto trades need the
amountusdcolumn; without it they're skipped with a note. Margin, futures, DeFi and NFTs aren't handled. - No wash-sale adjustments: the 1099-DA wash-sale box covers tokenized securities only (IRS i1099da).
- The sample files are synthetic: invented ids and amounts in each exchange's documented column format. The sample's 1099-DA totals are invented too.
Questions
Is the 1099-DA checker free?
Yes. The preview is free: reading your files, transfer matching, gains by lot method, the missing-basis list and the first 10 sales. The full report (Form 8949 export, audit trail and 1099-DA comparison) is $19 with the early-bird price until January 31, 2027, then $29 per tax year, with a 14-day refund.
Are my files uploaded anywhere?
No. Your CSVs are read and processed in this browser tab. The only server call is the license check, which sends just the license key.
Which exchanges does it read?
Kraken ledgers.csv and the Coinbase transaction history CSV. For other exchanges, the free cost basis calculator takes buys and sells entered by hand.
Why does my 1099-DA show a blank cost basis?
Brokers report basis only for covered digital assets: ones acquired after 2025 in an account where the broker provided custody. Coins you transferred in, or bought before 2026, are noncovered and can show a blank basis. (IRS, Instructions for Form 1099-DA)
Do I report a blank cost basis as $0?
No. For a sale reported without basis, enter the correct basis of the property in Form 8949 column (e), and keep the records that support it. (IRS, Instructions for Form 8949)
Is there a transaction limit?
No. One flat price per tax year, any number of transactions.
Is this tax advice?
No. It is software that does math on files you provide. You choose the lot method and you file your own return.
More guides: all crypto-tax guides and tools · Coinbase 1099-DA · Does Kraken report to the IRS? · 1099-DA missing cost basis