Crypto tax guide
How to Report Crypto on Your Taxes
Short answer
Report every crypto disposal on Form 8949, total it on Schedule D, and report crypto received as income on Schedule 1 or Schedule C at its fair market value on the day you received it. Answer the digital asset question on page 1 of Form 1040 yes if you sold, traded, spent, or earned crypto during the year.
Step 1 — Pull a complete transaction history
Export the full CSV or API history from every exchange, wallet, bridge, and DeFi protocol you touched during the year, not just the ones that sent you a tax form. Gaps are what create wrong numbers later.
- Centralized exchange CSVs plus any Form 1099-DA, 1099-B, or 1099-MISC
- Self-custody wallet addresses for every chain you used
- Records of transfers between your own wallets (these are not taxable, but they look like sales without documentation)
- Staking, mining, airdrop, referral, and interest reward statements
Step 2 — Separate disposals from income
Disposals — selling for dollars, trading coin for coin, spending crypto, paying a fee in crypto — produce capital gains and losses. Income events — staking rewards, mining, airdrops, interest, and crypto paid for work — are ordinary income at receipt, and that receipt value becomes your cost basis for the later disposal.
Step 3 — Establish cost basis per wallet or account
Basis is tracked per account or wallet, and the method you use must be applied consistently and documented before you dispose. When exchange data shows a zero or missing basis, reconstruct it from purchase records, bank statements, and block explorer history rather than accepting a $0 basis that inflates your gain.
Step 4 — Fill out the forms
- Form 8949 — every disposal, split between short-term and long-term
- Schedule D — totals, loss limits, and carryforwards
- Schedule 1 (other income) or Schedule C (business/self-employment) — crypto income
- Form 1040 digital asset question — answered yes or no
- Schedule B / Form 8938 / FBAR — where foreign platforms or interest are involved
Step 5 — Reconcile before you file
Compare the totals on your software report against each 1099 you received. Mismatched proceeds are the number one cause of automated IRS notices — a matching return with an attached explanation beats a clean-looking return that disagrees with third-party data.
Which form covers which crypto activity
| Activity | Tax treatment | Where it goes |
|---|---|---|
| Sold crypto for USD | Capital gain or loss | Form 8949 → Schedule D |
| Traded BTC for ETH | Capital gain or loss | Form 8949 → Schedule D |
| Spent crypto on a purchase | Capital gain or loss | Form 8949 → Schedule D |
| Staking / interest rewards | Ordinary income at receipt | Schedule 1 or Schedule C |
| Mining as a business | Ordinary income + self-employment tax | Schedule C → Schedule SE |
| Airdrop received | Ordinary income at receipt | Schedule 1 |
| Paid in crypto for work | Wages or self-employment income | W-2 or Schedule C |
| Moved coins between your own wallets | Not taxable | Nothing — but keep the records |
FAQ
How to report crypto — FAQ
Keep reading
Related crypto tax answers
Do You Pay Crypto Taxes Before Withdrawing to Cash?
Yes — tax is triggered when you dispose of or earn crypto, not when you withdraw dollars to your bank. Coin-to-coin trades, spending crypto, and staking or airdrop rewards are all taxable in the year they occur. Withdrawing your own dollars from an exchange is not itself a taxable event.
Read the guideAre Crypto Losses Tax Deductible?
Realized crypto capital losses are deductible: they offset capital gains dollar for dollar, then up to $3,000 per year of ordinary income ($1,500 if married filing separately), with any remainder carried forward indefinitely. Paper losses on coins you still hold are not deductible, and theft or scam losses follow separate, far narrower rules.
Read the guideCrypto taxes, handled
Get your crypto reported right.
Free 30-minute Consultation Call with a CPA and former IRS Revenue Agent. We'll scope your wallets, exchanges, and prior years before you owe us anything.
Replies within 24 hours · Mon–Fri 9–6 ET · or email andy@sidegrowthpartners.com