If you're searching "Schedule D vs Form 8949," you're asking the wrong question. They aren't alternatives. You file both — Form 8949 lists every individual transaction from your 1099-B, and Schedule D summarizes the totals. Miss either one and your return is incomplete.
This post explains what each form does, how they relate, and exactly where the numbers from your 1099-B end up.
IRS Schedule D vs. Form 8949: Comparison Table
| Form 8949 | Schedule D | |
|---|---|---|
| Purpose | Per-transaction detail | Year-level summary |
| Level of detail | Every row from your 1099-B | Totals by box (A–F) |
| Source of numbers | Your 1099-B transactions | Form 8949 totals |
| Attached to | Schedule D | Form 1040 |
| Required when | You have individual transactions with dates and basis | You have any capital gains or losses |
| Parts | Part I (short-term) / Part II (long-term) | Part I (short-term) / Part II (long-term) / Part III (summary) |
| Goes to 1040 line | Indirect (via Schedule D) | Line 7 |
The pattern is hierarchical: 1099-B → Form 8949 → Schedule D → Form 1040 Line 7. Each level summarizes the one above it.
Difference Between Schedule D and Form 8949
Form 8949 is the detail (row-by-row transactions). Schedule D is the summary (totals by category). Your 1099-B feeds into Form 8949 first, then Form 8949's totals roll up into Schedule D.
Put another way: Form 8949 proves the math, Schedule D reports the result. The IRS needs both — the proof and the result — for any return with capital gains or losses. The only time you can skip Form 8949 is a narrow exception we cover below, and it doesn't apply to most 1099-Bs.
What Form 8949 Does
Form 8949 is where you list every capital gain and loss transaction individually. Each row has: description of the property, date acquired, date sold, proceeds, cost basis, any adjustments, and the resulting gain or loss.
It's split into two parts:
- Part I — Short-Term (held one year or less)
- Part II — Long-Term (held more than one year)
Each part has three boxes (A, B, C for short-term; D, E, F for long-term) based on whether the broker reported basis to the IRS. For a full breakdown of which box applies when, see Form 8949 from 1099-B: the complete guide.
What Schedule D Does
Schedule D is the capital gains summary attached to your Form 1040. It has two parts that mirror Form 8949:
- Part I — Short-Term Capital Gains and Losses (rolls up 8949 Part I totals)
- Part II — Long-Term Capital Gains and Losses (rolls up 8949 Part II totals)
For each part, you enter totals by box type (A/B/C or D/E/F): total proceeds, total cost basis, total adjustments, total gain or loss. Schedule D then combines short-term and long-term into your net capital gain or loss for the year (Part III), which flows to Form 1040 Line 7.
That's the number that actually changes your tax bill. Form 8949's job is to prove it's correct.
Form 8949 Codes: Boxes A–F Explained
Each transaction on Form 8949 lands in one of six boxes, determined by two things: whether it was short-term or long-term, and whether your broker reported the cost basis to the IRS.
| Box | Part | Term | Broker reported basis? | 1099-B section |
|---|---|---|---|---|
| A | Part I | Short-term | Yes (covered) | "Basis reported to IRS" |
| B | Part I | Short-term | No (noncovered) | "Basis not reported to IRS" |
| C | Part I | Short-term | Not reported on 1099-B | N/A (private sales, some inherited lots) |
| D | Part II | Long-term | Yes (covered) | "Basis reported to IRS" |
| E | Part II | Long-term | No (noncovered) | "Basis not reported to IRS" |
| F | Part II | Long-term | Not reported on 1099-B | N/A |
Covered vs. noncovered is the vocabulary your 1099-B uses. Covered means the broker sent the cost basis to the IRS; noncovered means you're on your own. For noncovered lots, you have to compute the basis and prove it. See 1099-B noncovered securities: fixing missing cost basis for how.
Getting the box wrong is one of the most common 1099-B filing mistakes. The box determines which Schedule D line picks up the rollup — a short-term covered sale dropped into Box D (long-term) corrupts both short-term and long-term totals, and the IRS will notice.
Your 1099-B Goes Into Both — Here's the Flow
Picture a 1099-B with three trades. Here's the pipeline end-to-end:
1099-B (from your broker)
├─ Trade 1: AAPL, short-term, $1,000 gain, Box A
├─ Trade 2: MSFT, long-term, $500 loss, Box D
└─ Trade 3: GOOG, short-term, $200 gain (wash sale), Box A
Form 8949
Part I (Short-Term)
Box A: Trade 1 row, Trade 3 row (with wash-sale adjustment code W)
Part II (Long-Term)
Box D: Trade 2 row
Schedule D
Part I, Line 1a (Box A totals): proceeds, basis, adjustments, gain/loss
Part II, Line 8a (Box D totals): proceeds, basis, adjustments, gain/loss
Part III: net capital gain/loss → Form 1040 Line 7
Every number on Schedule D must be traceable back to specific rows on Form 8949, which must match rows on your 1099-B. If they don't reconcile, the IRS computer will kick back a CP2000 notice.
The one shortcut: for Box A and Box D transactions with no adjustments, the IRS lets you enter totals directly on Schedule D Lines 1a and 8a without filing Form 8949 at all. See 1099-B summary totals vs individual rows for when that applies and when it doesn't. Any wash sale, any adjustment to basis, any mismatch with the 1099-B — and you're back to listing every row on Form 8949.
Common Mistakes
Filing only Schedule D with no Form 8949. If you have any Box B, C, E, or F transactions, or any adjustments on Box A/D rows, Form 8949 is mandatory. Skipping it looks like you're hiding detail.
Ignoring Form 8949 adjustment codes. Wash sales (code W), nondeductible losses (code L), disallowed losses on related-party sales (code L), and corrected basis (code B) all go in Column (f) with amounts in Column (g). Leave them off and Schedule D's totals will be wrong. The Form 8949 adjustment codes reference covers every code and when to use it.
Mis-matching box letters. A transaction's box is determined by what the 1099-B reports, not what you wish it reported. Box A means the broker reported basis; Box B means they didn't. Get this wrong and your Schedule D rollup sits in the wrong line.
Double-counting. Each transaction gets reported once. It goes on Form 8949, then its total flows into Schedule D. You don't add the transaction to Schedule D separately.
Forgetting noncovered securities. Noncovered basis (the broker didn't report it to the IRS) goes in Box B or E. You have to compute the basis yourself and prove it.
What This Means in Practice
If you have a clean 1099-B with all-covered, no-adjustment transactions, you can get away with Schedule D alone — the summary-totals shortcut. The moment wash sales, noncovered lots, or basis corrections appear, you owe the IRS a full Form 8949 listing every row.
For most active traders with 100+ transactions, that's a tedious pile of data entry. The point of our converter is to do exactly that rollup: we parse your 1099-B PDF, produce a CSV or TXF with every row tagged to the correct box, and hand you a file your tax software imports directly. The summary totals on Schedule D then come from real, audit-ready detail — not typed approximations.
FAQ
What's the difference between Schedule D and Form 8949?
Form 8949 lists every individual capital-gain transaction row-by-row, with dates, proceeds, cost basis, and adjustments. Schedule D summarizes the totals by category (short-term covered, long-term noncovered, and so on) and carries the net gain or loss to Form 1040 Line 7. Form 8949 is the detail; Schedule D is the summary.
Do I need to file both Form 8949 and Schedule D?
In almost every case, yes. Schedule D is required any time you have capital gains or losses. Form 8949 is required whenever you have individual transactions that need row-level reporting — which includes any Box B, C, E, or F transaction and any Box A/D transaction with an adjustment. Only Box A/D transactions with zero adjustments qualify for the Schedule D summary-totals shortcut.
Can I skip Form 8949 if I have a 1099-B?
Only for Box A and Box D rows (broker reported basis to the IRS) with no adjustments. You enter the totals directly on Schedule D Lines 1a and 8a. Any wash sale, corrected basis, or noncovered lot disqualifies you and puts you back on Form 8949.
Where do 1099-B transactions go on Schedule D?
They don't go on Schedule D directly — they flow through Form 8949 first. Form 8949 totals by box (A/B/C for short-term, D/E/F for long-term) then roll up into Schedule D Part I (short-term) and Part II (long-term). Schedule D Part III combines the two into your net capital gain or loss.
Does Schedule D include short-term and long-term gains?
Yes. Part I handles short-term (held one year or less) and Part II handles long-term (held more than one year). Part III nets them together. The split matters because short-term gains are taxed as ordinary income, while long-term gains get the preferential 0/15/20 percent rate.
Do wash sales go on Form 8949 or Schedule D?
Form 8949. Each wash-sale row goes in Column (f) with code W, and the disallowed loss amount goes in Column (g). The adjustment is already baked into the total that rolls up to Schedule D — you don't add it again at the Schedule D level.
What happens if my Form 8949 totals don't match Schedule D?
The IRS computer will flag it and send you a CP2000 notice asking for a reconciliation. The match has to be exact, down to the dollar, for proceeds, cost basis, adjustments, and gain/loss — and it has to match your 1099-B too. If you're using tax software, it handles this automatically; if you're filing by hand or using summary totals, double-check the rollup before you send it.
What's the order: 1099-B, Form 8949, or Schedule D?
Your broker sends you a 1099-B at the start of the year. You use the 1099-B to fill out Form 8949 row by row. Form 8949's box totals roll up into Schedule D. Schedule D's net gain or loss flows to Form 1040 Line 7. Every step summarizes the step above it, so a mistake in Form 8949 propagates all the way to your tax bill.
Bottom Line
Schedule D and Form 8949 aren't competing options — they're two layers of the same report. Form 8949 is the row-level detail that proves your numbers, Schedule D is the summary that changes your tax bill, and both are built from the same 1099-B you got in the mail.
If you have a large or complicated 1099-B — wash sales, noncovered lots, RSU/ESPP adjustments, hundreds of rows — the work is in getting Form 8949 right. Schedule D follows automatically. Get the detail layer clean and the summary takes care of itself.
Ready to skip the manual entry? Convert your 1099-B free — we extract every row, tag each transaction to the right Form 8949 box, and produce a CSV, TXF, or Excel that's ready for TurboTax, TaxAct, or H&R Block. Your Schedule D rollup will match to the dollar.