To fill out Form 8949, you list each sale or exchange of a capital asset on its own row, sorted first by how long you held the asset and then by how the sale was reported to you, and you finish by carrying the totals to Schedule D. The form itself does no tax math. It organizes the details of every stock, bond, mutual fund, cryptocurrency, or real estate sale so the IRS can match them against the 1099s your broker already sent in.1Internal Revenue Service. About Form 8949, Sales and Other Dispositions of Capital Assets
First, Check Whether You Need the Form at All
Some straightforward stock sales can be reported directly on Schedule D and skip Form 8949 entirely. The exception applies to a transaction only if all of the following are true: you received a Form 1099-B or Form 1099-DA showing that basis was reported to the IRS, there are no adjustments in boxes 1f or 1g (or boxes 1h and 1i on a 1099-DA), the “Ordinary” box is not checked, you don’t need to correct the reported basis or gain type, and you’re not deferring gain through a Qualified Opportunity Fund.2Internal Revenue Service. Instructions for Form 8949 – Sales and Other Dispositions of Capital Assets Qualifying sales get totaled on Schedule D line 1a (short-term) or 8a (long-term). If any transaction needs an adjustment, that one goes on Form 8949 even if the rest qualify for the shortcut.
Sort Every Transaction Two Ways
Before you write anything, group your sales. Each transaction has to land in one of six buckets, and each bucket is a separate page of the form.
Part I or Part II: Holding Period
Part I is for short-term transactions, meaning you held the asset for one year or less. Part II is for long-term, meaning more than one year.3Office of the Law Revision Counsel. 26 USC 1222 – Definitions Pull the dates from your trade confirmations rather than memory, especially for sales close to the one-year line. The gap between short-term and long-term tax treatment is often thousands of dollars on the same sale.
Box A, B, or C: How the Sale Was Reported
Within each Part, check one box at the top of the page. Every transaction on that page has to match.
- Box A: You received a 1099-B or 1099-DA and basis was reported to the IRS. This covers most recent stock and ETF sales.
- Box B: You received a 1099-B or 1099-DA but basis was not reported to the IRS. Older securities and some digital asset sales fall here.
- Box C: You didn’t receive a 1099-B or 1099-DA at all. Sales of personal property, some private transactions, and certain real estate go here.
If your transactions cross categories, you’ll have more than one page. Someone with short-term Box A sales and long-term Box B sales needs at least two pages.1Internal Revenue Service. About Form 8949, Sales and Other Dispositions of Capital Assets
Fill In Each Row, Column by Column
One transaction, one row. The columns walk from what you sold through to the gain or loss.
Column (a): Description
A short, specific description of the asset. For stock, something like “100 sh XYZ Corp.” For bonds, include the maturity date. For options, note the strike and expiration. Keep it brief but specific enough that the IRS can match the row to your 1099.
Columns (b) and (c): Dates Acquired and Sold
Column (b) is the acquisition date. Column (c) is the sale date. Use MM/DD/YYYY. These dates set the holding period, so pull them from written records rather than estimating.
Column (d): Proceeds
What you received from the sale. For most stock trades this matches Box 1d on your 1099-B. If the broker netted commissions and fees out of the reported proceeds, use that net figure. If the broker reported gross proceeds instead, you can either reduce column (d) or use adjustment code E in column (f) to account for the fees.4Internal Revenue Service. Instructions for Form 8949
Column (e): Cost or Other Basis
What you paid for the asset, including any purchase commissions.5Office of the Law Revision Counsel. 26 USC 1012 – Basis of Property – Cost For Box A sales, this should generally match Box 1e on your 1099-B unless you know the broker’s number is wrong. For Box B and Box C, calculate basis from your own records.
A few situations change basis. Reinvested dividends add to it because you already paid tax on those dividends. Return-of-capital distributions reduce it. If you bought the same security at different prices, specific identification or your broker’s default (usually first-in, first-out) determines which lot’s cost you use.
Columns (f) and (g): Adjustment Code and Amount
These handle the difference between what the broker reported and what you actually owe tax on. If the 1099-B is right and no special rule applies, leave both columns blank. Otherwise, column (f) takes a letter code and column (g) takes a dollar amount. A positive number in column (g) increases basis and reduces gain; a negative number does the opposite.
Column (h): Gain or Loss
Column (d) minus column (e), plus or minus column (g). Positive is a capital gain. Negative is a loss, written in parentheses.1Internal Revenue Service. About Form 8949, Sales and Other Dispositions of Capital Assets
Adjustment Codes That Come Up Most
Column (f) uses single letters to explain why you’re adjusting the reported numbers. A few show up often enough to know cold.
Wash Sales (Code W)
A wash sale is when you sell a security at a loss and buy the same or a substantially identical security within 30 days before or after the sale.6Office of the Law Revision Counsel. 26 USC 1091 – Loss From Wash Sales of Stock or Securities The loss is disallowed on the original sale and instead added to the basis of the replacement shares.
Enter W in column (f) and the disallowed loss as a positive number in column (g). Say you sold 100 shares for $750 that you bought for $1,000, then rebought the same stock within 30 days for $800. The $250 loss is disallowed, so column (g) is +$250, which wipes out the loss on this row. Your replacement shares get a basis of $1,050 ($800 plus the disallowed $250).7Internal Revenue Service. Link and Learn Taxes – Case Study 1: Wash Sales Brokers flag wash sales in Box 1g of the 1099-B, so you usually know when one applies.
Other Codes You’ll See
- Code B: The basis on your 1099-B or 1099-DA is wrong for a reason other than a wash sale. Put the correction in column (g).
- Code E: Selling expenses, option premiums, or digital asset transaction costs not reflected on your 1099.
- Code H: You sold your main home at a gain and can exclude part or all of it under the home sale exclusion.
- Code Q: You sold qualified small business stock and can exclude part of the gain. Stock acquired after September 2010 and held at least five years may qualify for a 100% exclusion, subject to a per-issuer dollar cap.8Office of the Law Revision Counsel. 26 USC 1202 – Partial Exclusion for Gain From Certain Small Business Stock
- Code T: The short-term or long-term classification on your 1099-B is wrong.
- Code O: A catch-all for adjustments that don’t fit anywhere else.
The full list is in the Form 8949 instructions.4Internal Revenue Service. Instructions for Form 8949 When two codes apply to the same transaction, split it across two rows with the same proceeds and basis on each, one code per row.
Inherited, Gifted, and Digital Assets
A few asset types have their own basis rules that change what goes in column (e).
Inherited assets take a stepped-up basis: generally the fair market value on the date the original owner died, not what they paid.9Office of the Law Revision Counsel. 26 USC 1014 – Basis of Property Acquired From a Decedent The estate’s records should give you the date-of-death value. Inherited assets are treated as long-term regardless of how long you or the decedent held them. Write “INHERITED” in column (a), and if you don’t know the acquisition date, write “INHERITED” in column (b) instead of a date.
Gifted assets generally carry over the donor’s basis.10Office of the Law Revision Counsel. 26 USC 1015 – Basis of Property Acquired by Gifts and Transfers in Trust There’s a wrinkle: if the donor’s basis was higher than fair market value at the time of the gift, your basis for calculating a loss is limited to that lower fair market value. Basis may be increased by a portion of any gift tax paid, but only up to fair market value. Write “GIFTED” in column (a).
Digital assets are new territory in 2026. For sales after December 31, 2025, cryptocurrency exchanges and custodial brokers report transactions on Form 1099-DA.11Internal Revenue Service. About Form 1099-DA, Digital Asset Proceeds From Broker Transactions Brokers report gross proceeds for all digital asset sales, but they report cost basis only for “covered securities” — digital assets acquired after 2025 in a custodial account with that broker and held there until sale.12Internal Revenue Service. Instructions for Form 1099-DA, Digital Asset Proceeds From Broker Transactions Anything acquired before 2026, transferred in from an external wallet, or bought on a non-custodial platform is a noncovered security, and you calculate the basis yourself from exchange statements, blockchain records, and wallet histories. Digital asset sales go on Form 8949 the same way stock sales do: Box A if basis was reported, Box B if it wasn’t, Box C if you got no form at all.
If You Have Hundreds of Transactions
Active traders don’t have to squeeze every trade onto the printed rows. The IRS accepts supplemental statements in the same columnar format.1Internal Revenue Service. About Form 8949, Sales and Other Dispositions of Capital Assets Most brokerages and tax software produce these automatically. Fill out one summary Form 8949 page per box category, check the box, write “See attached statement” in column (a), and put the aggregated totals in columns (d), (e), (g), and (h).
Move the Totals to Schedule D
Form 8949’s totals feed specific lines of Schedule D:13Internal Revenue Service. Instructions for Schedule D (Form 1040)
- Short-term Box A totals go to line 1b
- Short-term Box B totals go to line 2
- Short-term Box C totals go to line 3
- Long-term Box A totals go to line 8b
- Long-term Box B totals go to line 9
- Long-term Box C totals go to line 10
Transactions that qualified for the skip-the-form exception go straight to line 1a or 8a. Schedule D nets short-term gains and losses, nets long-term gains and losses, and offsets one against the other if needed.14Internal Revenue Service. Topic No. 409, Capital Gains and Losses The final figure lands on Form 1040 line 7.
Records to Keep
Hold onto anything that supports basis and sale details for at least three years after filing the return that reports the sale — the general statute of limitations for the IRS to assess additional tax.15Internal Revenue Service. Topic No. 305, Recordkeeping The clock starts when you sell and file, not when you bought. Stock purchased in 2015 and sold in 2026 means keeping the 2015 purchase records until at least 2030. For anything with adjusted basis, such as reinvested dividends, return-of-capital distributions, or stock splits, keep every statement that documents the adjustment. Reconstructing basis years later is the hardest part of Form 8949, and the easiest to avoid.