Wash Sale Alert Calculator
Free wash sale alert calculator detects 30 day rule violations and calculates adjusted cost basis for replacement shares. See disallowed loss, wash dates, and corrected gain or loss instantly.
Like this tool? Help keep portfolios.tools free forever.
How It Works
Enter buy and sell transactions with ticker symbol, trade date, direction, share amount, and cost basis for purchases. The tool scans sell at loss transactions and flags repurchases of the same or substantially identical security within thirty days before or after the loss sale. Track taxable account trades separately from IRA purchases when harvesting losses. US rules can disallow loss in taxable account when substantially identical security purchased in IRA within thirty day window even without taxable repurchase. Build a chronological ledger of every taxable sale at loss and repurchase within the IRS thirty day window before and after the sale. Include fractional share purchases from dividend reinvestment plans because those small buys can trigger wash treatment on harvested losses if timing overlaps.
Review flagged violations showing loss sale ID, repurchase ID, ticker, both trade dates, and disallowed loss amount. Clean ledger shows no wash sale violations detected. Substantially identical includes different share classes of same ETF or options on same underlying in many interpretations. Export violation list to spreadsheet for CPA handoff at year end. Adjusted basis on replacement lot equals original purchase basis plus disallowed loss amount per IRS publication guidance. When multiple round trips occur on the same ticker in one month, violations can stack and each disallowed loss adjusts a different replacement lot basis. Review total disallowed loss against estimated tax savings from the original harvest plan.
Consider different share classes of same ETF as substantially identical when screening for wash violations. IRA purchases can wash taxable account loss sales under current IRS guidance even without direct taxable repurchase. Run the calendar forward thirty days after each loss sale before buying back the same ticker even in a different brokerage account. Accumulated violations across multiple round trips on one ticker pile up disallowed losses that defer rather than eliminate the deduction.
Use Wash Sale Alert whenever inputs change: after market moves, new contributions, or revised personal assumptions. Bookmark the page for quick reruns without installing software.
Step by step
- Add sell and buy transactions with ticker, date, direction, shares, and cost basis
- Review flagged wash sale violations and disallowed loss amounts
- Adjust cost basis on replacement shares and avoid repurchase within thirty day window
Worked example
Enter buy and sell transactions with ticker symbol, trade date, direction, share amount, and cost basis for purchases. Enter the sample inputs described in How it works to reproduce the scenario step by step.
Adjust one input at a time to see sensitivity. Wash Sale Alert updates instantly so you can stress test optimistic and conservative assumptions before acting.
When to use this calculator
Reach for Wash Sale Alert when detect 30 day wash sale violations and adjusted cost basis.. It suits quick what if analysis before trades, allocation changes, or plan updates.
Pair with related tools when the decision spans taxes, liquidity, or multi year projections beyond what one formula captures.
Common mistakes
Copying outputs without checking input units or stale market prices is a frequent error with Wash Sale Alert. Confirm tickers, percentages, and dates before acting.
Running a single baseline scenario ignores tail risks. Stress test with conservative inputs and compare against related tools listed below when the decision is material.
The Formula
For each sell transaction with negative amount:
For each buy transaction of same ticker within 30 days:
disallowedLoss = min(abs(sell.amount), buy.amount)
adjustedBasis = buy.costBasis + disallowedLoss
Violations flagged when days between sell and buy <= 30
Thirty day window before and after loss sale. Disallowed loss equals loss amount on washed sale. Basis adjustment adds disallowed loss to replacement purchase basis. Manual transaction ledger tool. Verify substantially identical definitions with tax advisor for ETF pairs and options on same underlying before relying on violation flags alone.
Limitations and assumptions
Thirty day window before and after loss sale. Disallowed loss equals loss amount on washed sale. Basis adjustment adds disallowed loss to replacement purchase basis. Manual transaction ledger tool. Verify substantially identical definitions with tax advisor for ETF pairs and options on same underlying before relying on violation flags alone. Wash Sale Alert does not replace personalized advice. Fees, slippage, account specific rules, and behavioral constraints may change real world outcomes.
Key terms
- What exactly is a 30-day wash sale
- Wash sale occurs when you sell a security at a loss and buy the same or substantially identical security within thirty days before or after the sale.
- How do I enter my transactions
- Enter chronological transactions with ticker, date, buy or sell direction, quantity, and basis on buys.
- Model assumption
- Disallowed loss increases cost basis of replacement shares.
Compare alternatives
Plan gain harvesting with Tax Harvest Planner and estimate annual capital gains tax with Capital Gains Tax calculator on portfolios. Use those calculators when wash sale alert alone does not capture the full decision.
Internal links on portfolios.tools help you chain calculators: run Wash Sale Alert first, then validate edge cases with a specialized tool from the related section below.
FAQ
What exactly is a 30-day wash sale?
Wash sale occurs when you sell a security at a loss and buy the same or substantially identical security within thirty days before or after the sale. Loss deduction is disallowed and added to replacement share cost basis. Wash sale rules defer loss deduction rather than cancel it permanently. The disallowed amount increases replacement share basis which reduces future gain or increases future loss when those shares sell.
How do I enter my transactions?
Enter chronological transactions with ticker, date, buy or sell direction, quantity, and basis on buys. Tool checks every loss sale against purchases within thirty day window.
What happens to the disallowed loss?
Disallowed loss increases cost basis of replacement shares. When you eventually sell replacement shares, the deferred loss reduces gain or increases loss on that sale. Replacement shares can be in a different account at the same taxpayer level in many cases. IRA purchases can wash taxable losses under current US guidance.
Does this only apply to identical stocks?
Substantially identical is broader than exact ticker match. Different share classes and highly correlated ETFs may trigger wash treatment. IRA purchases can wash taxable account loss sales under US rules.
What related tools should I use?
Use Tax Harvest Planner for proactive gain harvesting before year end. Document adjusted basis after wash sales for next year cost basis records.
How do I use this wash sale alert calculator on a phone or tablet?
Yes. Wash Sale Alert runs entirely in your mobile browser with the same formulas as desktop. Optional localStorage may remember inputs on your device when enabled in browser settings.
Where is my data stored when I use Wash Sale Alert?
Nowhere on our servers. Calculations execute locally in your browser. Optional localStorage saves form fields on your device only and never transmits portfolio numbers over the network.
Should I rely on Wash Sale Alert for tax or legal decisions?
No. Wash Sale Alert provides educational math only. Tax law, account rules, and personal circumstances vary. Consult a qualified tax or legal professional before transactions with material consequences.
Related Tools
Plan gain harvesting with Tax Harvest Planner and estimate annual capital gains tax with Capital Gains Tax calculator on portfolios.tools after resolving wash sale violations.