Free tool · No signup · Runs in your browser

Free Form 8949 CSV Validator

Paste your 1099-B / Form 8949 CSV and get instant validation. Catches inverted dates, missing cost basis, wash-sale rows without code W, and gain/loss inconsistencies — all the things that trigger a CP2000 or break your TurboTax import.

Expected columns: Date Acquired, Date Sold, Description, Quantity, Cost Basis, Proceeds, Gain/Loss, Wash Sale Loss Disallowed, Security Type, Federal Tax Withheld

Don’t have a CSV yet?

Convert your PDF 1099-B

Upload a PDF 1099-B from any major broker and get a clean, validator-ready CSV in 30 seconds. $4.99 per conversion.

Convert 1099-B PDF
Need TXF or Excel?

All three formats, one upload

Our converter generates CSV, TXF (for TurboTax Desktop), and formatted Excel from a single PDF upload.

PDF to TXF converter
Confused about Schedule D vs Form 8949? They're not alternatives — you file both, and the order matters. Read the guide to see how your 1099-B flows into each form.

Form 8949 Validation FAQ

What is Form 8949 Box F?

Box F on Form 8949 Part II is for long-term transactions NOT reported on a 1099-B. You use it when you sold something the broker didn't report to the IRS — private sales, some older noncovered lots, or gifts/inherited stock. If all your trades are on a broker 1099-B, you probably don't need Box F.

What is Code B on Form 8949?

Code B in Form 8949 Column (f) means the broker-reported basis is incorrect. You enter the amount of the correction in Column (g). Common cases: wash sales not flagged by the broker, ESPP transactions where the basis needs adjustment for the compensation portion, or corrected 1099-B data. The validator flags rows that have a basis adjustment but no code B.

Why do I need a CSV validator?

TurboTax, TaxAct, and H&R Block all silently accept bad rows and push the problem to the IRS instead. A single inverted date or missing wash-sale flag can trigger a CP2000 notice months later. Validating the CSV before import catches these issues while you can still fix them.

What does this tool check?

Column headers match the standard 8949/1099-B schema; Date Sold is after Date Acquired (or marked VARIOUS); Cost Basis is present for every row; any row with a Wash Sale Loss Disallowed amount is flagged with Security Type that matches; Gain/Loss equals Proceeds minus Cost Basis. It does NOT verify tax calculations — just data quality.

Is my CSV data sent to a server?

No. The validator runs entirely in your browser — your CSV never leaves your machine. You can validate sensitive 1099-B data without creating an account or uploading anything.