Methodology & Trust
How this planner estimates taxes, Social Security, and your money over 30+ years — explained first in plain English, then with the technical details. You'don't need to read the fine print to trust the big picture — but it's there if you want to double-check the math.
Federal taxes — what you’ll owe the IRS each year
We simulate the real IRS rules, not a flat percentage.
Think of tax brackets as buckets stacked on top of each other. Your first dollars fill the 10% bucket, next dollars the 12% bucket, and so on up to 37%. We always use the actual IRS bucket sizes for that year, and we subtract your standard deduction first (the free amount everyone gets — larger if you’re 65+).
- Buckets are real: 10% → 12% → 22% → 24% → 32% → 35% → 37%. We use the official IRS brackets for 2024, 2025, and 2026. Later years grow with the inflation rate you assume.
- Freedom amount: Standard deduction is subtracted first. If you’re 65+, you get an extra bonus on top.
- Investment gains are cheaper: Long-term gains and qualified dividends sit on top of wages and are taxed at 0%, 15%, or 20% — not the same as your paycheck rate.
- Social Security may be partly taxed: Depending on other income, 0%, 50%, or 85% of your Social Security counts as taxable (thresholds $25k/$34k single, $32k/$44k joint — these don’t grow with inflation).
- Big-income surtax: 3.8% extra on investment income over $200k (single) / $250k (joint).
- Medicare warning: Medicare premium surcharges (IRMAA) are shown for awareness and based on income from two years earlier. A small income bump can cross a threshold and jump your premiums.
ACA Premium Tax Credit — health insurance help before Medicare
If you buy marketplace coverage before 65, the government may pay part of your premium.
We take your area's benchmark silver plan price (you enter it manually) and subtract what the IRS says you should pay based on income. The rest is your subsidy. It shrinks as income rises — at about 150% of poverty you pay 0%, at 400% you pay 8.5%. After 65 you switch to Medicare, so it stops.
- You enter the price: No premium database — privacy first. Find your ZIP's second-lowest silver at healthcare.gov and enter it per person under 65 in the Wizard.
- Math:
FPL = MAGI / poverty threshold(2025: single $15,650, family 2 $21,150, CPI-indexed) →expected %via IRS Rev Proc 2024-35 table (0% under 150%, 0→2% at 150–200%, 2→4% at 200–250%, 4→6% at 250–300%, 6→8.5% at 300–400%, flat 8.5% beyond) →PTC = max(0, benchmarkAnnual − MAGI × expected%). - MAGI definition: For ACA, MAGI = AGI + tax-exempt interest (the engine already includes it). AGI includes taxable SS, LTCG/qualified dividends, taxable interest and tDeferred withdrawals + Roth conversions.
- Enhanced expiry: The enhanced subsidies from the Inflation Reduction Act expire at the end of 2025. For 2025 and earlier, subsidy continues beyond 400% at 8.5% cap; for 2026+ the permanent law cliffs to $0 above 400% FPL (we model that cliff).
- State quirks: Silver loading and state-specific premium variations require manual entry — we don't guess your state's benchmark.
- Roth interaction (our differentiator): Each $1 of Roth conversion above ~250% FPL reduces PTC by up to ~8.5¢, raising effective marginal rate. Bracket-fill caps conversion when combined federal + PTC loss exceeds target+5%, and we flag a warning when MAGI crosses 150/200/250/300/400% bands.
Social Security — when you claim changes your paycheck
The earlier you claim, the smaller the monthly check — for life.
At your full retirement age (66–67) you get 100% of your earned benefit. Take it at 62 and it’s about 30% smaller forever; wait until 70 and it’s about 30% bigger forever.
- Your number: Based on your average lifetime earnings (bend points). Example: 2024 $1,174 / $7,078; 2026 $1,286 / $7,749.
- Timing penalty/bonus: −5/9% per month for 36 months early, then −5/12%; +8% per year delayed to 70.
- Three views: Current plan vs. your ideal age vs. maximum (70) — plus spousal & survivor when married.
- Annual raise: COLA increase applied each year after you start.
RMD — the required withdrawal the IRS forces
Leave money in pre-tax accounts too long and the IRS says “now you must withdraw.”
Once you reach a certain age, you must take a minimum amount out of traditional IRAs/401(k)s each year (and pay tax on it) — even if you don’t need the cash. Miss it and there’s a penalty.
- Starts at: Age 73 if born 1951–1959, age 75 if born 1960+ (SECURE 2.0).
- Amount: Your account balance ÷ life-expectancy factor from the IRS Uniform Lifetime Table (so the older you get, the larger the %).
- We flag: Shortfall (didn’t withdraw enough) and early-withdrawal penalty before 59½.
Deferred comp — payouts you can’t change
Some money comes out on a contract’s calendar, not yours. We model that schedule exactly.
Nonqualified deferred compensation (NQDC) pays out on a schedule locked in when you deferred the money — §409A makes it nearly irrevocable. You can’t spend this account early, take RMDs from it, or convert it; it simply sends you payments on the dates you set. Each dollar you enter is in today’s dollars and grows with the account’s assumed earnings until its payout year.
- Two styles: Equal — the balance split into N equal installments (today’s $) starting a year you choose; the last installment also pays the earnings that accumulated on the unpaid balance, so the account fully drains. Custom — an arbitrary list of (year, amount) rows; they must sum to the balance (the wizard enforces this), and then the last payout true-ups exactly like Equal — so equal-N×$X and custom-N×$X give identical results.
- Grown to the payout year: nominal payout = today’s amount × (1 + g)years from today, where g is the account’s blended assumed holdings return (the same rate the balance compounds at — there is no separate payout rate). A $20,000 election paid in 2027 with 5% growth arrives as $21,000; $25,000 in 2028 arrives as $27,562.50.
- Capped at the balance: if a payout (or a bad market path in Monte Carlo) exceeds what remains, it pays the rest and later installments go to zero — the schedule can never overdraw the account.
- Taxes: NQDC payouts are 100% ordinary income in the year paid. They carry no 10% early-distribution tax — §72(t) applies to qualified plans/IRAs, not NQDC.
- MAGI knock-on: NQDC income raises MAGI exactly like wages — it can push you into a higher IRMAA tier (charged two years later) and shrink ACA subsidies while under 65. The model responds automatically because the payout enters ordinary income before tax is computed.
- Guaranteed cash: each year’s payout reduces what your withdrawal strategy must take from other accounts, dollar-for-dollar; the account is excluded from RMDs, spending withdrawals, tax payments, Roth conversions, and surplus routing. Contributions to these accounts are ignored (payout-only).
- Depletion: the plan is considered out of money when the spendable accounts run dry and no scheduled payout is still to come. The projection then shows one final unfunded year — the year the money runs out — at $0: leftover balance in an account whose schedule has fully paid out can’t fund spending, so it’s written off rather than faking wealth to age 95.
Projection — year-by-year walk into the future
We step through every year from now until you’re 95, adding income, subtracting spending, and applying taxes.
Imagine flipping through a calendar: each year your investments grow, Social Security/pension arrives, bills inflate, you withdraw to cover the gap, and the IRS takes its cut. We repeat that for 30+ years.
- Growth: Stocks/bonds grow by your assumed return minus fees; we rebalance yearly if you choose.
- Bills inflate differently: Regular bills use general inflation (CPI); healthcare uses faster medical inflation.
- Phases: Optional Go-Go (active years) → Slow-Go → No-Go spending steps (e.g., 100% → 80% → 70%).
- Money flow: Incomes first, then taxable account dividends/interest, then withdrawals, then tax paid from cash first.
- Survivor: If one spouse passes, filing flips to Single and total spending steps down to 70%.
Accumulation — working years before retirement
Optional. Add salary & savings on the Incomes step of the Plan wizard and every projection includes the years you are still working.
Until each person's retirement age, the model pays their salary (grown by your raise assumption), deducts payroll tax (FICA) and your chosen contributions into 401(k)/IRA/Roth accounts — capped at real IRS limits with age-50 and 60–63 catch-ups — adds the employer match, and runs living costs from today rather than only from retirement. So "what if I retire a year later?" counts both the extra savings and the extra working year.
- Salary: grows at the plan's CPI by default, or a custom raise % per person; wages stop at the employment's work-until age or death. Persons without a salary entry are treated as already retired — living costs (blank start ages) always begin at today's age.
- Elective deferrals to 401(k)-type accounts reduce taxable wages and FICA, and are capped per person at the 402(g) limit — 2026: $24,500, +$8,000 catch-up at 50+, $11,250 for ages 60–63 (SECURE 2.0 §109). Amounts over the cap are dropped and flagged in the projection.
- IRA & Roth IRA contributions are capped at $7,500 (2026) plus a $1,100 catch-up at 50+; combined employee + employer additions to one plan respect the 415(c) limit ($72,000 in 2026). All limits are CPI-indexed beyond 2026.
- Employer match: "X¢ per $1 up to Y% of salary" (50¢ up to 6% is the most common formula), deposited straight into the matched account.
- Payroll tax (FICA): 6.2% up to the Social Security wage base plus 1.45% Medicare — reported separately from income tax.
- Living costs while working come out of wages; if salary (after taxes and savings) can't cover them, the portfolio bridges the gap — the early-retirement or job-loss scenario, modeled honestly.
- Simplifications: Traditional IRA deductibility and Roth IRA income phase-outs, the 2026 Roth catch-up mandate (§603), 457(b) separate pools, mega-backdoor Roth, vesting schedules, and state taxes are not modeled. Sources: IRS Notice 2025-67 (src/data/contributionLimits.ts).
Withdrawals — which account to tap first
Order matters a lot for taxes.
Taxable first preserves Roth; Roth conversions fill low-tax buckets on purpose; guardrails adjust spending with markets; VPW spends a safe % of what you actually have.
- Sequential (default): Spend taxable → then pre-tax → then Roth (defers taxes, saves Roth for later). Your account type implies its tax treatment — 401(k)/Traditional IRA are pre-tax, Roth accounts and HSAs are tax-free, Brokerage/Savings/Checking are taxable.
- Proportional: Take a little from every pot equally — keeps allocation balanced but less tax-smart.
- Roth bracket-fill: Intentionally convert pre-tax → Roth up to a chosen bracket (e.g., 22%) in a window like 62–70 before Social Security/RMDs. You pick the window on the dashboard.
- Guardrails: Keeps spending inside a band — raises 10% if portfolio is 20% ahead, cuts 10% if 20% behind (never below RMD).
- VPW: Spend a higher % as you age (like an annuity factor) — more when you’re older, less when markets dip.
- Compare: Save up to 10 snapshots (12% vs 22% Roth, sequential vs VPW…) and see lifetime tax & legacy diff side-by-side.
Monte Carlo — thousands of what-if futures
One path is a guess; thousands of random paths show odds.
We roll the dice 5,000 times (or 10k) for stock, bond, and inflation returns — each roll is a different future. Then we ask: in how many futures did your money last?
- Correlated randomness: Stocks, bonds, and inflation move together the way they historically have — stock/bond correlation defaults to ~0.1 and stocks vs inflation to ~−0.1, so bad-market years can also be high-inflation years.
- Two flavors: Pure random vs. Block Bootstrap that replays real 12-month history chunks (keeps crashes & recoveries realistic).
- Result: Median & spread (10th–90th percentile), success rate (money > 0 at death), histogram of ending balances. Runs in the background so the page stays fast.
- Sanity check: If we set market swings to zero, the “random” simulation lands exactly on the single straight-line projection — a built-in consistency check.
Backtest — what if you retired in 1929, 1966, or 2000?
Replay your plan through real history, not random numbers.
We take actual U.S. stock/bond returns and inflation from 1871–2025 and ask: if you’d started your plan in every historical year, how often would you have survived? Worst cases (1966, 1929) are annotated.
- Real data: Robert Shiller’s public 1871–2025 annual returns + CPI (no guessing).
- Same engine: Each historical year replays through the same tax, RMD, and withdrawal logic — apples-to-apples.
- Heatmap: Start year × horizon (10–40 yrs + your plan length) — green success, red failure — with slider to inspect 1929 / 1966 / 2007–08.
- Interpretation: We translate “88% success” into guardrails guidance and chance-of-success wording.
Wellness Score & Guardrails — is your plan healthy?
Like a credit score, but for retirement.
19 little health checks (withdrawal rate, must-spend coverage, cash flow, chance of success, and more) are weighted into a 0–100 score → grade A/B/C/D. Guardrails then say: you can safely spend X, raise if >95% success, caution if <70%.
- Score is weighted: Success matters most, then Must coverage, withdrawal rate, etc. — not all equal.
- Grade: A ≥85, B ≥70, C ≥55, D below — with plain suggestions to improve.
- Guardrails banner: Shows Safe Spending target, upper (95%) and lower (70%) bands — actionable dollar amounts, not just a %.
Disclaimer — please read
This is an educational simulator, not personalized advice.
- Not a professional: We aren’t a CPA, financial planner, or fiduciary. Your real taxes depend on details we don’t cover (state taxes, recent law changes, your exact situation).
- Estimates only: We use federal rules only, bundle 2024–2026 numbers, and project future years by inflation — a good estimate, not a filing.
- Past ≠ future: Monte Carlo and backtest (1871–2025) show history and odds, not guarantees. Markets can still surprise.
- Double-check: Before acting, confirm with IRS Publication 17, SSA.gov, and a qualified professional.
- You own your data: Everything lives in your browser's local storage — no accounts, no tracking, no data sent to a server. Use Wizard → Export Data / Import Data to backup or transfer your full plan JSON.