How to Report Crypto on Your Tax Return (Form 8949)
Every crypto sale, trade, or disposal goes on Form 8949. The IRS requires separate entries for each transaction — sell 50 times in a year, you report 50 lines. Here's how to fill it out correctly.
Estimate your gains first with the Crypto Tax Calculator.
The Crypto Tax Reporting Flow
Step 1: Gather all transactions
Step 2: Calculate gain/loss for each
Step 3: Fill out Form 8949 (transaction details)
Step 4: Transfer totals to Schedule D (summary)
Step 5: Report income items separately (staking, mining → Schedule 1)
Step 6: Answer the crypto question on 1040 Page 1
The 1040 Crypto Question
Page 1 of Form 1040 asks: "At any time during [year], did you receive, sell, send, exchange, or otherwise acquire any digital assets?"
If you did ANY of the following, the answer is Yes:
- Bought crypto (even with cash, no sale)
- Sold, traded, or swapped crypto
- Received staking/mining rewards
- Got paid in crypto
- Received an airdrop
The only exception: holding crypto in an account without any transactions during the year.
Form 8949 — Transaction by Transaction
Form 8949 has two sections:
- Part I — Short-term (held 1 year or less)
- Part II — Long-term (held more than 1 year)
Each row requires:
| Column | What to Enter |
|---|---|
| (a) Description | "0.5 BTC" or "2 ETH" |
| (b) Date acquired | Purchase date |
| (c) Date sold | Sale or disposal date |
| (d) Proceeds | Sale price in USD |
| (e) Cost basis | What you paid (+ fees) |
| (f) Code | See code table below |
| (g) Adjustment | Wash sale adjustments, if any |
| (h) Gain or loss | (d) − (e) +/− (g) |
Box Codes (Column f)
| Code | When to Use |
|---|---|
| A | Short-term, basis reported to IRS (1099-DA received) |
| B | Short-term, basis NOT reported to IRS |
| C | Short-term, no 1099 at all |
| D | Long-term, basis reported to IRS |
| E | Long-term, basis NOT reported to IRS |
| F | Long-term, no 1099 at all |
For most crypto in 2026: Use B or C for short-term, E or F for long-term. Starting with 2025 transactions, some exchanges issue 1099-DA — use A or D if you received one.
Example — Reporting 3 Crypto Transactions
| Description | Acquired | Sold | Proceeds | Basis | Code | Gain/Loss |
|---|---|---|---|---|---|---|
| 1 BTC | 01/15/2025 | 03/20/2026 | $92,000 | $45,000 | F | $47,000 (LT) |
| 2 ETH | 06/01/2026 | 09/15/2026 | $7,500 | $6,800 | C | $700 (ST) |
| 500 DOGE | 11/10/2025 | 04/05/2026 | $120 | $350 | C | −$230 (ST) |
The BTC goes in Part II (long-term). The ETH and DOGE go in Part I (short-term).
Schedule D — The Summary
After completing Form 8949, transfer the totals to Schedule D:
| Schedule D Line | Source |
|---|---|
| Line 1a | Short-term totals from Form 8949 Part I |
| Line 8a | Long-term totals from Form 8949 Part II |
| Line 16 | Total net gain or loss (combined) |
Schedule D is the summary — Form 8949 has the details.
What About Staking, Mining, and Airdrops?
These are NOT reported on Form 8949. They're income, not capital gains:
| Income Type | Where to Report |
|---|---|
| Staking rewards | Schedule 1, Line 8z |
| Mining income (hobby) | Schedule 1, Line 8z |
| Mining income (business) | Schedule C |
| Airdrops | Schedule 1, Line 8z |
| Crypto received as payment | W-2 or Schedule C |
When you later sell these tokens, THAT sale goes on Form 8949. The cost basis = the fair market value you reported as income when received.
Handling Hundreds of Transactions
If you traded actively, Form 8949 could be dozens of pages. Options:
Option 1 — Attach a statement Instead of filling each row on Form 8949, you can attach a separate statement with the same columns. Write "See attached statement" on Form 8949 and include the totals.
Option 2 — Use crypto tax software Services like Koinly, CoinTracker, TaxBit, and TokenTax:
- Import transactions from exchanges and wallets
- Calculate gains using your chosen method (FIFO, HIFO, etc.)
- Generate completed Form 8949 and Schedule D
- Export TurboTax or TaxAct compatible files
Option 3 — TurboTax / H&R Block import Most tax software accepts CSV imports from exchanges or crypto tax tools. This populates Form 8949 automatically.
Common Mistakes
- Reporting gross proceeds without cost basis — this makes it look like your entire sale is a gain
- Forgetting crypto-to-crypto swaps — each swap is a taxable disposal
- Double-counting exchange 1099 data — if you also use crypto tax software, ensure no overlap
- Ignoring the 1040 crypto question — checking "No" when you had transactions is a red flag
Use the Federal Tax Calculator to see how crypto gains affect your total tax bill.
Share this article