Form 8949 and Schedule D Filing Tips

By Equicurious intermediate 2025-09-16 Updated 2026-03-22
Form 8949 and Schedule D Filing Tips
In This Article
  1. What Form 8949 and Schedule D Actually Do (And Why Both Exist)
  2. The Box-Check System (Where Most Mistakes Start)
  3. Adjustment Codes (Column f) — The Reconciliation Engine
  4. Worked Example: Filing Form 8949 and Schedule D
  5. 2025 Long-Term Capital Gains Rate Brackets (Reference Table)
  6. Common Pitfalls (And How to Avoid Them)
  7. The New Digital Asset Reporting Rules (2025)
  8. Filing Checklist
  9. Your Next Step

Every year, investors leave money on the table — or trigger unnecessary IRS scrutiny — because they misreport capital gains and losses on Form 8949 and Schedule D. The errors are predictable: wrong box checks, missed wash-sale adjustments, and basis discrepancies that don’t match what the broker reported. The practical antidote is a systematic, line-by-line reconciliation process that catches mistakes before you file.

TL;DR

Form 8949 reports every individual sale of a capital asset. Schedule D aggregates those transactions into net gains or losses and applies preferential long-term rates (0%, 15%, or 20%). Getting these two forms right — especially the adjustment codes and box categories — is the difference between a clean filing and an IRS notice.

What Form 8949 and Schedule D Actually Do (And Why Both Exist)

Form 8949 is the transaction-level detail form. Every sale or disposition of a capital asset gets its own line: date acquired, date sold, proceeds, cost basis, and any adjustments. You attach it to Schedule D.

Schedule D is the aggregation form. It pulls subtotals from Form 8949, separates short-term from long-term, nets gains against losses, and determines whether you owe tax at ordinary rates or preferential capital gains rates.

The point is: Form 8949 is where errors happen (wrong basis, missing adjustment codes, incorrect box checks). Schedule D is where those errors compound into the wrong tax bill.

Key terms you need to know:

The Box-Check System (Where Most Mistakes Start)

Form 8949 uses a box-check system to categorize every transaction. Getting the wrong box means your form won’t reconcile with what the IRS already has from your broker’s 1099-B (or the new 1099-DA for digital assets).

Short-term transactions (held one year or less):

BoxWhen to CheckBasis Reported to IRS?
A1099-B shows basis was reported to IRSYes
B1099-B shows basis was not reported to IRSNo
CNo 1099-B received at allN/A
G1099-DA (digital assets), basis reportedYes
H1099-DA (digital assets), basis not reportedNo
IDigital asset transactions, no 1099-DAN/A

Long-term transactions (held more than one year):

BoxWhen to CheckBasis Reported to IRS?
D1099-B shows basis was reported to IRSYes
E1099-B shows basis was not reported to IRSNo
FNo 1099-B received at allN/A
J1099-DA (digital assets), basis reportedYes
K1099-DA (digital assets), basis not reportedNo
LDigital asset transactions, no 1099-DAN/A

Why this matters: boxes G through L are new for 2025, created specifically for digital asset transactions reported on the new Form 1099-DA. If you traded crypto through an exchange in 2025, you’ll use these boxes — not the traditional A through F.

The test: look at box 12 on your 1099-B. If it says “basis reported to IRS,” you check Box A (short-term) or Box D (long-term). If it says basis was not reported (common for securities acquired before the phase-in dates), you check Box B or E and must supply your own basis.

Covered vs. noncovered securities — this trips up investors who’ve held positions for years. Securities acquired after these dates are “covered” (basis reported to IRS automatically):

Anything acquired before those dates is “noncovered,” meaning you’re responsible for calculating and reporting basis yourself (Box B or E territory).

Adjustment Codes (Column f) — The Reconciliation Engine

When your basis or proceeds differ from what the broker reported on the 1099-B, you enter an adjustment code in column (f) and the dollar adjustment in column (g). The three codes you’ll encounter most often:

The point is: adjustment codes exist to explain discrepancies to the IRS. If you skip them, the IRS sees a mismatch between your 1099-B and your Form 8949 — and that mismatch generates automated notices.

Worked Example: Filing Form 8949 and Schedule D

Here’s how this works with actual numbers (using a single-filer scenario for 2025).

Phase 1 — The Transactions

You made three stock trades during the year:

TransactionAcquiredSoldProceedsCost BasisGain/Loss
Stock A (long-term)March 15, 2023April 10, 2025$15,000$10,000+$5,000
Stock B (short-term)September 1, 2025November 15, 2025$8,000$9,500−$1,500
Stock C (short-term, wash sale)June 1, 2025August 20, 2025$6,000$7,200−$1,200 (but repurchased within 30 days)

Phase 2 — Form 8949 Entries

Stock A goes on a Box D page (long-term, basis reported). No adjustment codes needed — proceeds and basis match the 1099-B.

Stock B goes on a Box A page (short-term, basis reported). Straightforward $1,500 loss.

Stock C requires a wash-sale adjustment. You repurchased a substantially identical security within the 61-day window. On the Box A page, you enter code W in column (f) and +$1,200 in column (g). The $1,200 loss is disallowed for now — it gets added to the replacement shares’ cost basis.

Phase 3 — Schedule D Aggregation

Short-term results (Schedule D, Part I):

Long-term results (Schedule D, Part II):

Combined: +$5,000 long-term gain minus $1,500 short-term loss = net gain of $3,500.

Phase 4 — Tax Impact

Assuming your taxable income (before capital gains) is $85,000 as a single filer:

If your total MAGI exceeds $200,000, you’d also owe the 3.8% Net Investment Income Tax on the lesser of your net investment income or the amount by which MAGI exceeds the threshold. (In this example, at $85,000, the NIIT doesn’t apply.)

The practical point: the wash-sale adjustment on Stock C didn’t eliminate the loss permanently — it deferred it. When you eventually sell the replacement shares, their higher basis will produce a smaller gain (or larger loss). But if you miss the wash-sale coding, you’ll claim a $1,200 loss the IRS knows is disallowed, and you’ll get a notice.

2025 Long-Term Capital Gains Rate Brackets (Reference Table)

RateSingle FilerMarried Filing Jointly
0%$0–$48,350$0–$96,700
15%$48,351–$533,400$96,701–$600,050
20%Over $533,400Over $600,050

Two special categories apply higher maximum rates:

Common Pitfalls (And How to Avoid Them)

1. Ignoring wash-sale rules across accounts. You sell Stock X at a loss in your taxable account and buy it in your IRA within 30 days. The wash-sale rule still applies — the loss is disallowed, but since the replacement is in a tax-advantaged account, you may never recover the disallowed loss. Your broker may not flag cross-account wash sales on the 1099-B.

2. Using the wrong box check. If your 1099-B says basis was reported to the IRS and you check Box B (basis not reported), the IRS’s automated matching system flags a discrepancy. Always match the box to what’s actually on the 1099-B.

3. Forgetting to carry forward capital losses. If your net capital losses exceed $3,000 in a given year, the excess carries forward indefinitely — but you have to track it yourself using the Capital Loss Carryover Worksheet in the Schedule D instructions. The IRS doesn’t send reminders. (This is one of the most common sources of overpaid taxes.)

4. Missing the NIIT threshold. Capital gains push up your MAGI. A large realized gain in one year can push you above the $200,000 (single) or $250,000 (MFJ) NIIT threshold, adding 3.8% on top of your capital gains rate. These thresholds are not indexed for inflation — they haven’t changed since 2013, so more taxpayers hit them each year.

5. Not reconciling 1099-B line items. Your broker’s reported basis may differ from your actual basis (especially for noncovered securities, gifted shares, or inherited property). Every 1099-B entry needs to be checked against your records — there is no materiality exception.

The New Digital Asset Reporting Rules (2025)

Starting January 1, 2025, brokers and exchanges must report digital asset transactions on the new Form 1099-DA (replacing the inconsistent 1099-B reporting that existed before). Form 8949 now has six new box categories (G, H, I for short-term; J, K, L for long-term) specifically for 1099-DA transactions.

The takeaway: if you traded crypto, NFTs, or other digital assets through a reporting exchange in 2025, expect a 1099-DA and use the new box categories. If you used a decentralized exchange or self-custodied wallet with no 1099-DA, you still owe tax — you’d check Box I (short-term) or L (long-term) and self-report.

Filing Checklist

Essential (high ROI — prevents most common errors):

High-impact (workflow and accuracy):

Optional (good for active traders and crypto investors):

Your Next Step

Pull your 2025 1099-B (and 1099-DA, if applicable) and compare each line item against your own transaction records. For every entry where the broker’s reported basis differs from your actual basis, note the adjustment code you’ll need (B, W, or D) and the dollar amount for column (g). Start with your largest transactions first — that’s where mismatches create the biggest tax impact.

Related Articles

Disclaimer: Equicurious provides educational content only, not investment advice. Past performance does not guarantee future results. Always verify with primary sources and consult a licensed professional for your specific situation.