Wash Sale Adjustment
The wash sale adjustment is the basis modification under §1091(d) when a wash sale is triggered: the disallowed loss is added to the cost basis of the replacement lot, the holding period of the original lot carries over, and the deferred tax benefit is recovered when the replacement lot is eventually sold. The adjustment is mechanical — the loss is not eliminated, just deferred to the replacement lot's eventual disposition.
The adjustment mechanism distinguishes the wash sale rule from a true tax penalty. A loss that would have been recognized immediately is instead encoded into the basis of the replacement security; when that replacement is eventually sold, the encoded loss reduces the gain (or increases the loss) on that disposition. The economic effect is a deferral, not a forfeiture — except when the replacement is held in an IRA, where §1091(d) bars the basis adjustment entirely and the loss is permanently lost.
The holding-period carryover is the second piece. The replacement lot inherits the original lot's holding-period tenure. A wash sale of a 2-year-old lot against a same-day purchase produces a replacement lot that's already long-term — even though purchased today. This is occasionally useful in scenarios where the taxpayer wants long-term character on a recently-purchased position, achievable by sandwiching a deliberate wash sale.
The combined effect of basis-add-on and holding-period-carryover means the replacement lot is functionally a continuation of the original lot for tax purposes. Software systems that don't preserve this lineage produce incorrect tax outcomes on subsequent dispositions of the replacement lot — the basis is wrong, the holding period is wrong, and the resulting gain or loss is wrong. The §1091(d) basis ledger has to flow through every position that's been touched by a wash sale.
B_replacement = P_replacement + L_disallowed- B_replacement
- = adjusted basis of the replacement lot
- P_replacement
- = purchase price of the replacement lot
- L_disallowed
- = disallowed loss from the original sale (positive value)
Synthetic lot-level data should carry the wash_sale_disallowed field at the lot level — the dollar amount of disallowed loss encoded into that lot's basis. Subsequent dispositions of those lots should correctly compute gain/loss using basis + adjustment. Test scenarios should include both the standard adjustment (loss deferred to replacement, tax benefit eventually recovered) and the IRA-trapped variant (loss permanently lost under §1091(d)).
Common pitfalls
- Storing the disallowed loss as a separate field on the position rather than adding to the replacement lot's basis — the IRS-correct treatment is basis modification, not separate tracking.
- Failing to carry the holding period over to the replacement lot — produces wrong short-vs-long determinations on subsequent dispositions.
- Treating the IRA-trapped wash sale (replacement in IRA) as a basis adjustment — §1091(d) explicitly bars the adjustment for IRA replacements, making the loss permanently lost.
- Computing the adjusted basis at trade date — the adjustment applies at settlement, when the basis is actually established.
Examples
Sell 100 XYZ at $40 (lot acquired at $50, basis $5,000). Loss: $1,000. Buy 100 replacement XYZ 12 days later at $42, total $4,200. Disallowed loss: $1,000. Adjusted basis on replacement lot: $4,200 + $1,000 = $5,200. Holding period of original lot carries over. Eventual sale of replacement at $52 = $5,200 proceeds − $5,200 basis = $0 — the deferred loss has now offset the gain, exactly recovering the tax benefit.
Sell 100 XYZ in taxable account at $1,000 loss on March 1. Buy 100 replacement in your traditional IRA on March 12. §1091(d) bars adding the disallowed loss to the IRA's basis. Result: $1,000 loss is permanently lost (no future deduction available).