Skip to main content
Tax SeasonApril 24, 2026 · 7 min read

How to Fill Out Form 8949 for Crypto (With a Real Example)

A step-by-step worked example of Form 8949 for crypto in 2025. Covers the new digital asset checkboxes G/H/I/J/K/L, every column, and the three most common errors.

Form 8949 worked example showing Box K checked, a filled row for 1 ETH sale with $1,300 long-term capital gain routing to Schedule D line 9

Form 8949 is where every crypto sale, swap, and disposal in 2025 gets reported. Not Schedule D directly. Not the 1099-DA alone. Form 8949 is where the actual gain or loss on each transaction is calculated, line by line, and then totaled on Schedule D.

The form has two pages. Page 1 is short-term (held one year or less). Page 2 is long-term (held more than one year). Each page has a checkbox section at the top and a grid with columns (a) through (h) below.

Most crypto holders get two things wrong this year. They check the wrong box at the top, and they leave the cost basis column blank because the 1099-DA didn't fill it in. Both mistakes cost real money.

This is how to do it correctly, with a worked example using a single transaction.

The Boxes at the Top

For the 2025 tax year, the IRS added new checkbox groups specifically for digital assets. These are different from the traditional stock boxes.

Page 1 (short-term):

  • Box G: digital asset transactions reported on Form 1099-DA with basis reported to the IRS
  • Box H: digital asset transactions reported on Form 1099-DA with basis NOT reported to the IRS
  • Box I: digital asset transactions not reported on Form 1099-DA or Form 1099-B

Page 2 (long-term):

  • Box J: digital asset transactions reported on Form 1099-DA with basis reported to the IRS
  • Box K: digital asset transactions reported on Form 1099-DA with basis NOT reported to the IRS
  • Box L: digital asset transactions not reported on Form 1099-DA or Form 1099-B

For the 2025 tax year, brokers are required to report gross proceeds only. Cost basis reporting is optional. In practice, that means most people filing for 2025 will check Box H (short-term) or Box K (long-term). Your 1099-DA arrived, it shows proceeds, but the basis field (Box 1g) is blank, and the broker entered Code Y in the "Applicable checkbox on Form 8949" field at the top of the 1099-DA to signal that basis was not reported. That puts you in the "basis not reported to IRS" column on Form 8949.

If you also have transactions that no exchange reported (DEX swaps, self-custody wallet sales, staking rewards sold off-exchange), those go on a separate Form 8949 page with Box I or Box L checked. You cannot mix box types on the same page.

One thing to watch. Boxes A, B, and D, E are for stock and bond transactions reported on Form 1099-B. Box C is for non-digital-asset transactions that weren't reported on any broker form at all. Crypto does not use any of these. The IRS instructions for the 2025 form explicitly state: "Do not use box C to report short-term digital asset transactions." Using the wrong box is one of the most common errors this filing season and it guarantees an IRS mismatch notice.

The Columns

Every row on Form 8949 has the same eight columns:

  • (a) Description of property. Write "1.5 ETH" or "0.2 BTC" rather than "ethereum sale."
  • (b) Date acquired. The date you originally bought or received the lot.
  • (c) Date sold or disposed of. The date the sale or swap happened.
  • (d) Proceeds. Gross proceeds from the sale, in US dollars. This comes from your 1099-DA if the transaction is on an exchange.
  • (e) Cost or other basis. What you paid to acquire the asset, including fees.
  • (f) Code. Usually blank for most crypto. Specific codes apply for wash sales, incorrect 1099 data, and a few other situations.
  • (g) Amount of adjustment. Usually zero. Only filled in if a code is used in column (f).
  • (h) Gain or loss. Column (d) minus column (e), combined with column (g).

A Worked Example

Say you bought 1 ETH on Coinbase on February 3, 2024 for $3,200. You sold that 1 ETH on Coinbase on August 15, 2025 for $4,500. Coinbase sends you a 1099-DA showing the $4,500 proceeds, but Box 1g (cost basis) is blank and Code Y appears at the top.

The holding period is 18 months, so this is a long-term transaction. It goes on Page 2 of Form 8949.

The sale was reported on a 1099-DA, but basis was not reported to the IRS. Check Box K at the top of Page 2.

The row looks like this:

  • (a) 1 ETH
  • (b) 02/03/2024
  • (c) 08/15/2025
  • (d) $4,500
  • (e) $3,200
  • (f) blank
  • (g) 0
  • (h) $1,300

That $1,300 is a long-term capital gain. Your Box K totals flow to Schedule D line 9, where they combine with other long-term gains and losses. The overall long-term and short-term results on Schedule D then flow into Form 1040 as part of your taxable income.

If you had held the ETH for less than a year, the row would be identical but it would land on Page 1 under Box H, and the $1,300 would be a short-term capital gain. Box H totals flow to Schedule D line 2, and short-term gains are taxed at ordinary income rates.

What Happens When You Have a Hundred Transactions

A single worked example is clean. Real crypto activity rarely is. Active holders commonly have hundreds of transactions across exchanges, DEXs, and wallets.

The IRS allows two practical options. The first is to list every transaction on Form 8949. The form can run dozens of pages. Any modern e-filing software handles this by attaching the detail as a statement.

The second is to enter summary totals on Form 8949 and attach a separate statement with the complete transaction detail. This is "Exception 2" in the Form 8949 instructions. The totals go on a single line with "Various" in the date columns and the sum of proceeds and basis in the value columns. The supporting statement must list every transaction with the same column structure.

Either way, the math has to tie out. The totals on Schedule D must match what the IRS receives from your 1099-DAs, minus any legitimate adjustments you document.

Where Most People Get This Wrong

A few errors show up again and again on 2025 returns.

Using Box C instead of Box H or Box K. Box C is for non-digital-asset transactions that weren't reported on any broker form. It has nothing to do with crypto. If you check Box C for a crypto sale, the IRS's automated matching system sees a 1099-DA on its side with no corresponding entry in your 1099-DA checkbox group on your side. That triggers a CP2000 notice asking you to explain the discrepancy.

Leaving column (e) blank. The 1099-DA arrives with the cost basis field empty because brokers weren't required to report basis for 2025. That doesn't mean basis is zero. It means you supply it. If you leave column (e) empty or enter zero, the IRS treats the entire proceeds amount as taxable gain. On a $50,000 sale, that's the difference between paying tax on $15,000 of gain versus $50,000.

Mixing up the holding period. Short-term and long-term live on different pages. Run the holding period from the acquisition date in column (b) to the disposal date in column (c). One year or less is short-term. Anything longer is long-term. If your 1099-DA has Code X at the top (meaning the broker doesn't know your holding period, usually because the asset was transferred in), use your own records to determine whether the gain is short or long term.

Reporting transfers as sales. Moving ETH from Coinbase to MetaMask is not a sale. It's a transfer. It does not go on Form 8949. Only actual dispositions (sale for cash, swap for another crypto, spending crypto, gifting above the annual exclusion) get reported.

How Cryptofolio Handles This

Cryptofolio produces a downloadable report with everything needed for Form 8949. Every disposal shows the asset, the acquisition date, the disposal date, the proceeds, and the cost basis that traces back to the actual acquisition event. Short-term and long-term are separated. Transactions covered by a 1099-DA are flagged and grouped separately from on-chain activity that never hit a broker.

The report is built to be handed directly to a CPA or imported into tax software. It gives the information needed to complete the form correctly without forcing you or your preparer to rebuild cost basis from raw exchange exports.

Your 2025 Form 8949 should match what the IRS already has.

Cryptofolio produces a downloadable report with every disposal, the right basis, and the short-term and long-term split ready for your CPA or tax software.

Get Early Access →

The Bottom Line

Form 8949 is the form that matters. Schedule D is just the totals. Form 1040 is just where the number lands. If the 8949 is wrong, everything downstream is wrong, and the IRS will have the 1099-DA data to see it.

For 2025 returns, the two most common failure points are the wrong checkbox at the top (Box C instead of H or K) and a missing cost basis in column (e). Fix those two things, tie the totals to what's on your 1099-DAs, and the rest is arithmetic.

Disclaimer: This article is for informational purposes only and does not constitute legal, tax, financial, or investment advice. Cryptocurrency tax rules are complex, depend on your specific situation, and are subject to frequent regulatory changes. While we strive to keep our content accurate and up to date, information in this article may become outdated as policies evolve. Consult a qualified professional for advice on your individual circumstances.