We use cookies

We use essential cookies to run the site, and optional cookies for analytics. We never sell your data. Cookie Policy · Privacy Policy

Form 8949 for crypto: reporting your disposals, line by line

Form 8949, *Sales and Other Dispositions of Capital Assets*, is where US taxpayers report the individual disposals behind their capital gains — and crypto sales, swaps and spends belong on it. This guide explains what the form is, who files it, how each column maps to a crypto disposal, how the totals flow onto Schedule D, and how CryptaTax turns a year of on-chain and exchange activity into a filing-ready 8949. General information, not tax advice — verify against current IRS guidance or a professional.

Start your crypto tax report

This page explains the form in general terms; it is not tax advice and not a substitute for the IRS instructions or a qualified professional. Crypto tax rules — including 1099-DA broker reporting and the treatment of wash sales — change over time and specifics depend on your circumstances. Verify against current IRS guidance before filing.

Form 8949 for crypto: reporting your disposals, line by line

What Form 8949 is

Form 8949, *Sales and Other Dispositions of Capital Assets*, is the IRS form on which you list each disposal of a capital asset during the year — one line per transaction. Because the IRS treats cryptocurrency as property, a crypto disposal is a capital-asset disposal, so it is reported here just like a sold stock. The form itself does not compute your tax; it is the detailed schedule that supports the summarised capital-gain and capital-loss totals you carry to Schedule D. Think of it as the working paper that shows *how* each gain or loss was reached, transaction by transaction.

Who files it for crypto

You generally need Form 8949 if you disposed of crypto during the tax year — sold it for dollars, traded one coin for another, or spent it on goods or services. Simply *buying* and *holding* crypto is not a disposal and does not go on the form; neither does moving your own coins between your own wallets. What triggers a line is a taxable disposal: a point at which you parted with a unit of crypto and realised a gain or loss against its cost basis. If you had even one such disposal, its detail belongs on 8949.

How it fits with Schedule D

The two forms are a pair. Form 8949 carries the line-by-line detail — each disposal, its dates, proceeds, basis and resulting gain or loss. Schedule D carries the summary — the short-term and long-term totals, netted together, that ultimately reach your Form 1040. In practice you complete 8949 first, subtotal it, and those subtotals flow onto Schedule D. If every one of your disposals was already reported to the IRS on a 1099-B with basis, there are narrow cases where you can summarise directly on Schedule D; for most crypto, where basis is not broker-reported, the per-transaction 8949 detail is what you need.

The columns, and what each means for crypto

Each disposal occupies one row with the same columns. Knowing what each one wants makes it obvious what to put where — and where a crypto figure tends to go wrong:

  • (a) Description of property — what you disposed of, e.g. "0.75 BTC" or "1,200 USDC". Enough to identify the lot.
  • (b) Date acquired — when you originally obtained that unit. For crypto this is the acquisition date of the specific lot being disposed of, which your cost-basis method determines.
  • (c) Date sold or disposed of — when the disposal happened (the sale, swap or spend).
  • (d) Proceeds — what you received, measured in US dollars at the time of disposal (the fair-market value received, net of selling fees where applicable).
  • (e) Cost or other basis — what the lot cost you: the acquisition price plus fees, or its fair-market value on receipt if it came in as income.
  • (f) and (g) Codes and adjustments — used when an adjustment to gain or loss applies; most straightforward crypto disposals need none.
  • (h) Gain or (loss) — proceeds minus basis, with any adjustment applied. This is the number that rolls up to Schedule D.

Which crypto events go on it

Only disposals of a capital asset belong here. The common crypto ones are:

  • Selling crypto for fiat — the classic disposal; proceeds are the dollars received.
  • Trading one crypto for another — a crypto-to-crypto swap is a disposal of the coin you gave up, valued in dollars at the moment of the trade, even though no fiat moved.
  • Spending crypto — paying for goods or services with crypto disposes of it at its dollar value at the time of the purchase.

Crypto received as income — staking rewards, airdrops, mining, or payment for work — is *not* an 8949 event when received; it is ordinary income reported elsewhere (see Schedule 1 or Schedule C). That receipt value then becomes the cost basis used when you later dispose of those coins, at which point the disposal does appear on 8949.

Short-term versus long-term: Part I and Part II

Form 8949 splits into two parts by holding period. Part I is for assets held one year or less (short-term); Part II is for assets held more than one year (long-term). The distinction matters because long-term gains are generally taxed at more favourable rates than short-term. For crypto this makes the acquisition date of each specific lot decisive — and getting it right depends on an unbroken cost-basis history, because the lot you are treated as disposing of is set by your cost-basis method, not by which coins you happened to move.

The reporting-category boxes (A/B/C and D/E/F)

Within each part, transactions are grouped by how they were reported to the IRS. Short-term boxes A, B and C (and their long-term equivalents D, E and F) distinguish disposals reported on a 1099-B with basis, reported without basis, and not reported on a 1099-B at all. Historically, most crypto disposals fell into the "not reported on a 1099-B" category, because crypto exchanges were not treated as brokers issuing basis-tracked 1099-Bs. That is the box most self-filed crypto has used.

The 1099-DA change — read this conditionally

This area is changing, so treat any specific timing as something to verify rather than take from this page. The IRS has introduced Form 1099-DA for digital-asset broker reporting, phased in over recent tax years — with gross-proceeds reporting starting before basis reporting. As that rollout proceeds, more crypto disposals will arrive already reported, shifting which 8949 box they use and changing how much you must reconcile yourself. Because the exact effective dates and scope have moved and may still, confirm the current 1099-DA rules with up-to-date IRS guidance or your advisor before relying on any specific year. The safe posture either way is to keep your own complete, reconciled record — a broker figure never removes your responsibility to report correctly, and broker basis can be incomplete for coins you transferred in.

Crypto-to-crypto trades: the part people miss

The single most common Form 8949 error for crypto is leaving out crypto-to-crypto trades. Swapping ETH for SOL feels like a like-for-like move, but for tax it is a disposal of the ETH at its dollar value at that moment, with a gain or loss against the ETH's basis — a line on 8949 — followed by the acquisition of SOL at that same dollar value as its new basis. A year of active trading can generate hundreds of these, none of which involved fiat, and every one belongs on the form. This is exactly where a plain exchange export understates your reportable activity.

Where the numbers come from

Every 8949 line needs four figures — acquisition date, disposal date, proceeds and basis — and for crypto they rarely sit in one place. Proceeds and disposal dates come from your exchange and on-chain records; basis and acquisition dates come from wherever you originally obtained the coin, which may be a different exchange, a wallet, or an income event years earlier. Reconstructing a defensible basis therefore means combining your *entire* history across every wallet and exchange, matching transfers between your own accounts so they are not mistaken for disposals, and applying one consistent cost-basis method allowed in your jurisdiction.

Common crypto mistakes on this form

  • Omitting crypto-to-crypto trades — the biggest one; each swap is a disposal, not a non-event.
  • Missing cost basis on coins transferred in from another platform, which makes the gain come out wrong.
  • Booking self-transfers as sales — moving your own coins is not a disposal and should not create a line.
  • Wrong holding period — mis-dated acquisitions push disposals into the wrong part (short vs long).
  • Ignoring fees — trading and network fees adjust proceeds and basis and change the gain.
  • Using a partial history — starting from this year alone breaks the basis chain for older lots.

A note on wash sales — verify current treatment

You may have read that the wash-sale rule, which disallows a loss when you rebuy a "substantially identical" security within 30 days, does not currently apply to crypto because crypto is property rather than a security. That has been the common understanding, but it is an area where legislative change has repeatedly been proposed, so do not treat the position as permanent — confirm the current rule before relying on it for a specific year. This page explains the form, not a tax-planning position.

Why your 8949 may not match an exchange's numbers

If you compare a Form 8949 built from your full history against a summary a single exchange gives you, the totals often differ — and the difference is usually the exchange's blind spot, not an error in your report. An exchange only sees what happened on that exchange. If you bought coins elsewhere and moved them in, it does not know their original cost basis, so any gain it shows can be overstated or understated. It also cannot see disposals you made on other venues or on-chain. A correct 8949 reconciles across every wallet and exchange, so each disposal is measured against its real basis rather than a partial one — which is precisely why a per-exchange figure should never be filed on its own.

Amending a prior year

If you filed a past year without reporting all your crypto disposals — or reported them with the wrong basis — it is generally not too late to correct it. In the US that is done by amending the return, attaching a corrected Form 8949 with the disposals restated. Because your exchange history and the blockchain are permanent, a prior year can be rebuilt from source data even if you tracked nothing at the time, rather than guessed at. Reconstructing each affected year on the same consistent basis is what lets you bring earlier filings up to date accurately; check the current amendment rules and any deadlines for your situation, or take professional advice, before you file a correction.

Records to keep

A Form 8949 is only as defensible as the records behind it — every line should trace back to a real transaction you can produce if asked. At a minimum, keep the date, amount and US-dollar value of every acquisition and disposal, the fees on each trade and transfer, the transfers between your own accounts so basis follows the coins, the cost-basis method you applied, and the receipt value of any income (staking, rewards, airdrops) that later became basis. Keeping the underlying detail — not just the summary you filed — is what lets you answer a query without reconstructing a year of activity under pressure.

How CryptaTax produces your data

CryptaTax connects every wallet and exchange you use, matches transfers between your own accounts so they are not counted as disposals, rebuilds cost basis with a consistent method across all sources, and classifies each disposal — sale, swap or spend — with its acquisition date, disposal date, proceeds and basis. The result is a per-disposal record that maps directly to the columns of Form 8949, split into short- and long-term, with every figure traceable to a source transaction — ready to file or hand to your preparer. Generate your report → · All crypto tax reports →

Start your crypto tax report

Related forms and reports

the form rarely stands alone. Whether you had to file it at all begins with the Form 1040 digital-asset question →; its totals then flow to Schedule D →. If a broker sent you a Form 1099-DA →, its proceeds are reconciled against these lines; and crypto you *gave away* rather than sold falls under Form 709 → instead of here. Crypto *income* — staking, airdrops, rewards — is reported separately; see the crypto income guide →. For the underlying summary of disposals in any jurisdiction, a capital gains report → or gain/loss report → is the working document behind the form. Filing outside the US? See crypto tax by country →, including the US.

Putting it together

the form is where each crypto disposal becomes a reportable line, and Schedule D is where those lines become the totals on your return. The form itself is mechanical; the real work is behind it — a complete history, matched transfers, consistent basis, correct holding periods, and every crypto-to-crypto trade captured. Get that reconciliation right and filling the form is straightforward; get it wrong and no amount of neat formatting fixes the totals. That is precisely the part worth automating, so your effort goes into checking the result rather than assembling hundreds of lines by hand.

FAQ

What is the form used for with crypto?

It reports each disposal of crypto during the year — sales, crypto-to-crypto trades and spends — with the dates, proceeds, cost basis and resulting gain or loss. Its totals feed Schedule D.

Do I file the form or Schedule D for crypto?

Usually both. the form lists each disposal in detail; Schedule D summarises the short- and long-term totals from it. You complete 8949 first, then carry its subtotals to Schedule D.

Do crypto-to-crypto trades go on the form?

Yes. Trading one coin for another is a disposal of the coin you gave up, valued in US dollars at the time of the trade, and each such trade is a line on the form — even though no fiat was involved.

Does staking or airdrop income go on the form?

No. Crypto received as income is ordinary income reported elsewhere (such as Schedule 1 or Schedule C) at its value on receipt. That value becomes the cost basis used later, when you dispose of the coins — and that disposal does go on the form.

What about Form 1099-DA — do I still need 8949?

1099-DA broker reporting is being phased in and changes which disposals arrive pre-reported, but you are still responsible for reporting your disposals correctly, and broker basis can be incomplete for transferred-in coins. Confirm the current 1099-DA rules with up-to-date IRS guidance for your tax year.

How does CryptaTax help with the form?

It reconciles your full cross-platform history, matches self-transfers, rebuilds cost basis consistently, and produces a per-disposal record — dates, proceeds, basis, gain/loss, short vs long — that maps straight to the columns of the form.

Related