A plain-language map from a Bitcoin sale to a Form 8949 worksheet line. This page is not a filing.

Not tax advice · last updated 25 October 2026

How to file Form 8949 for Bitcoin

Form 8949 is where a sale or other disposition of a capital asset is listed before the totals move to Schedule D. A bitcoin sale is that kind of row when you are reporting it as a capital gain or loss. BasisFix writes a review with a tax pro. It does not file a return and it does not decide what you owe.

What one row needs

  1. A description, such as the quantity and BTC.
  2. The date acquired and the date sold. BasisFix uses UTC dates from the CSV.
  3. Proceeds, after the sale fee when the export states one.
  4. Cost basis of the lots that were sold.
  5. Gain or loss, which is proceeds minus that basis.

Short-term and long-term sales are listed apart. a sale is long-term only when the UTC sale date is after the one-year anniversary of the acquisition date. A sale on the anniversary is short-term. A February 29 anniversary falls on February 28 of the following year.

Which box this worksheet writes

IRS Instructions for Form 8949 (2025) give digital-asset transactions their own checkboxes. Short-term sales use box G, H, or I. Long-term sales use box J, K, or L. The instructions say not to use box C or box F for a digital asset. BasisFix writes those digital-asset letters. It does not write boxes A through F. The default, when you have not said a 1099-DA reported basis, is box I or box L.

1099-DA reported basis to the IRS1099-DA did not report basisNo 1099-DA and no 1099-BSchedule D line
Short-termGHI, the default1b, 2, or 3
Long-termJKL, the default8b, 9, or 10

The 2025 Form 8949 tells you where each box total goes. Box G totals go to Schedule D line 1b, box H to line 2, and box I to line 3. Box J totals go to line 8b, box K to line 9, and box L to line 10. BasisFix’s Schedule D summary uses those lines, one group per box that actually has rows. The combined net of the included rows is pointed at line 16. That figure is only the net of this worksheet. Other Schedule D lines — carryovers, K-1s, Form 6252 — are outside BasisFix.

BasisFix does not connect to a broker and does not read a 1099-DA. On the reconciler, each lot has a control for the three statuses: no 1099-DA, a 1099-DA that did not report basis, or a 1099-DA that reported basis. The command-line tool takes the same choice in a JSON file of lot ids. A letter you type has to match the holding period: G, H, or I on a short-term lot, and J, K, or L on a long-term lot. How a 1099-DA fits these boxes is on Form 1099-DA explained.

The description the instructions ask for includes the name or symbol, the exact units, and the sale’s transaction id when you have one. Basis includes fees and other acquisition costs. BasisFix’s proceeds are after the sale fee when the CSV states one.

Lots, not a single average

Each purchase, and each income payout, opens its own lot. A later sale consumes lots in that same account:

A send and a receive that share a transaction id, or that are the only amount match inside three days, are treated as a move between your own wallets. That move is not a sale. The original basis and acquisition date travel with the coins. An unmatched send is not turned into a sale; the lots stay in the account they started in, and the worksheet warns you.

Income is not a Form 8949 line

Interest, mining, and referral payouts are ordinary income at fair market value on the day you can use them. BasisFix lists that income on a separate summary and opens a new lot at that value. When you later sell those coins, the gain on Form 8949 is proceeds minus that fair market value, not proceeds minus zero. A payout with no USD value still opens a lot, and it is left out of the income total until a value is known.

Cash deposited to an exchange, and an internal transfer of the same asset inside one account, are not sales and do not open a second lot.

A missing number stays missing

If a deposit has no USD basis and no matched send from another file you imported, the worksheet will not invent a price. A sale that consumes that lot is shown on the worksheet and excluded from the gain total. Add the missing history, or leave the row for a tax pro. Wash-sale adjustments and foreign-currency conversion are outside BasisFix.

How BasisFix uses a tax year

Lot matching still walks the whole history, because a 2022 purchase can be the basis of a 2024 sale. The preview and the export then keep only the sales and the income that fall in the year you picked. You can read the short-term total, the long-term total, and the warnings for free. The CSV download — Form 8949 worksheet, the Schedule D summary, and the income summary — stays behind the license-key check on this machine. There is no payment provider in this build.

The demo report is a fictional 2024 FIFO slice of the sample files. The reconciler runs the same engine in the browser. For River’s own column names, see River CSV to Form 8949. Interest is covered on bitcoin interest income. A lot with no cost is covered on missing basis. Where the box totals land is on Schedule D from this worksheet. The one-year rule BasisFix uses is on bitcoin holding period.

Questions

Which Form 8949 box is a bitcoin sale?

This worksheet writes the 2025 digital-asset boxes. Short-term is G when a 1099-DA reported basis to the IRS, H when a 1099-DA did not report basis, and I when there is no 1099-DA and no 1099-B. Long-term is J, K, and L in that same order. The default is I or L, and you can override that status on each lot.

Is interest a Form 8949 line?

No. Interest, mining, and referral payouts are ordinary income at fair market value. They open a lot. The Form 8949 line is the later sale, and the basis is that fair market value.

Does BasisFix file the return?

No. The file is labeled review with a tax pro. It does not file, and it does not decide what you owe.