Skip to main content
All posts

Trader Tax Basics: What Your Journal Needs to Survive an Audit

What records the IRS expects, why a structured journal is easier than reconstructing from broker PDFs, and what your CPA still needs from you that no tool can produce.

This piece is not tax advice. Nothing on Tapeboard is tax advice. If your taxable trading P&L is high enough to matter, you need a CPA who specializes in trader taxes, full stop. What this piece does cover is the question of what records you need to keep so that the CPA's job is possible at all, and what a structured journal gives you versus what you still have to assemble from elsewhere.

The short version: the IRS expects you to be able to reconstruct, on demand, every realized gain and loss for the tax year on a per-lot basis. Brokers help — they send you Form 1099-B and most also publish a consolidated PDF — but the broker records have gaps, especially around wash sales, lot identification, and any trading you did across multiple accounts. A structured trade journal closes the gaps.

What the IRS actually expects

Three forms cover the bulk of active-trader filings.

Form 8949 is where every individual transaction is listed. Each line item carries the security description, the date acquired, the date sold, the proceeds, the cost basis, the wash-sale adjustment (if any), and the resulting gain or loss. For active traders, this form can run hundreds of lines. The broker's Form 1099-B covers most of the data, but it doesn't cover any trade you didn't make through that broker, and the wash-sale handling is only as good as what the broker's system can detect within its own account.

Schedule D aggregates the 8949 totals into short-term and long-term capital gains. Less detail; more summary. Most CPAs use 8949 line totals from the broker 1099-B and append manually for any cross-broker reconciliation.

Form 4797 is the form to use only if you've made the mark-to-market election under Section 475(f) — which is a different tax regime, has a separate set of requirements, and a separate set of trade-offs. Don't make this election without talking to a CPA. The election deadline for the current tax year is the April 15 of that year (yes, before you've traded most of it), which is why the decision is usually made the previous year.

Wash-sale tracking is what most retail traders miss. A wash sale is when you take a loss on a security and buy a substantially identical security within 30 days before or after — the loss is disallowed and gets added to the cost basis of the replacement shares. The broker tracks wash sales within a single account, but not across multiple accounts or across substantially-identical securities (an ETF and a similar ETF; a stock and an in-the-money option on the same stock). The cross-account / cross-substantial-identical wash-sale tracking is on the taxpayer, not the broker.

Why brokers don't get you all the way

Three gaps show up in every active trader's broker records.

Multi-account gap. If you trade the same ticker through two brokers (or through a broker and an IRA), the brokers don't talk to each other. Wash-sale and cost-basis reconciliation across accounts is the taxpayer's job. A spreadsheet or journal that aggregates across accounts closes this gap; the broker statements alone do not.

Substantially-identical-security gap. Wash sales apply not just to identical securities but to substantially identical ones. The broker has no opinion on whether SPY and VOO are substantially identical for wash-sale purposes (the IRS arguably treats them as such; the broker won't flag the cross-product wash). A trader's journal that tracks the actual ticker traded plus any closely-related symbols gives the CPA something to work with.

Mark-to-market reconciliation gap. If you've elected mark-to-market, every position open at year-end is marked to its 12/31 closing price and the unrealized P&L is treated as realized for tax purposes. The broker doesn't necessarily produce this report cleanly; the journal that tracks positions through year-end does.

What a structured journal gives you

A journal that captures every fill with the timestamp, side, quantity, price, fees, and ticker gives the CPA the raw transaction record they need. The minimum useful columns:

  • Timestamp (with timezone)
  • Symbol
  • Side (buy / sell / short / cover)
  • Quantity (signed; shorts as negative)
  • Price
  • Commission and fees
  • Account ID (if you trade through multiple brokers)
  • Notes (free-form; useful for context)

That schema covers Form 8949 line items, lets the CPA cross-reference against the broker 1099-B, and lets them compute wash-sale adjustments across accounts and substantially-identical pairs.

The Tapeboard trade journal captures every paper-sim fill with this schema natively; for live trades, the CSV-import path supports the same columns. The CSV export ships with a Form 8949-compatible column ordering so a CPA can pull it directly into their reconciliation workflow.

What the journal does not give you

This is where the "not tax advice" disclaimer matters.

The journal does not compute your tax liability. The journal produces records. A tax calculation requires applying the appropriate cost-basis method (FIFO, LIFO, specific-lot, average), the wash-sale rules across all your accounts and substantially-identical securities, the long-term vs short-term holding-period determination, and any applicable elections. That's the CPA's job. The journal makes it possible; it does not do it.

The journal does not flag wash sales. Some journal tools attempt automated wash-sale flagging, but the rules around substantially-identical securities are subjective enough that no tool I trust would claim full coverage. The CPA will do the wash-sale pass against the journal's transaction history, not against an automated flag.

The journal does not file your taxes. Obviously. But this is where traders sometimes overestimate what an active-trader journal does for them. The journal is the input. TurboTax / Drake / a CPA's preparation software is what produces the actual filing.

The journal does not give you mark-to-market treatment. Mark-to-market is a tax election. You either qualify and have elected (you'll know — there's paperwork), or you haven't. The journal records the same transactions either way; the tax treatment is independent of the journal.

Why structured beats reconstruction

The alternative to a structured journal is reconstructing the year from broker PDFs in March. Three things go wrong in the reconstruction approach.

First, the broker PDFs don't include the same level of detail as the journal — they aggregate by symbol, they don't include your custom tags or notes, and they don't include cross-account transactions. The CPA can work from broker PDFs alone, but they'll bill you more hours because the reconciliation work is manual.

Second, any transaction you did outside the broker — a transfer from a different account, a corporate action you handled manually, a paper trade you ran in a sim that you're tracking for personal review — is invisible to the broker. The structured journal captures these; the broker PDF does not.

Third, the reconstruction approach almost always misses something. The miss is usually a wash sale or a cost-basis adjustment that the trader didn't realize they needed to track. The audit risk on these misses is real if your trading volume is high enough that the IRS notices, and the audit pain of trying to reconstruct a year's worth of trades after the fact is significantly worse than the audit pain of handing over a structured CSV from a journal.

The minimum discipline

If your annual trading P&L is below the threshold where a CPA is worth the cost (call it $10K-$25K depending on complexity), the minimum discipline is: keep every broker 1099-B, keep an annual CSV export of any journal you maintain, and don't trade the same security through multiple accounts in a way that creates wash-sale ambiguity. That covers most retail traders.

If your annual P&L is above that threshold, the minimum discipline is: structured journal across all accounts, CSV export at year-end, hand it to a CPA who specializes in trader taxes, do not file yourself. The journal makes the CPA's job possible. The CPA produces the actual return.

The journal isn't the answer to your taxes. It's the input to the answer. Build it right and the rest of the process gets cheaper and more accurate. Build it as you go, not in March from broker PDFs.

Again: this is not tax advice. If your situation is complex, get a CPA. The Tapeboard journal is one option for the input layer; the rest of the stack is up to you and your professionals.

Institutional-grade tools, browser-based.

Get every ticker in this post on a real terminal, scanner, charts, filings, insider trades, and 800K+ economic series in one tab. Free tier, no credit card.

Try Tapeboard free → 14-day Pro trial · no card