A hypothetical, educational model — not financial advice. Talk to a Certified Financial Planner for actionable advice.
How to use it: Enter your target monthly or annual spend at retirement, current age, expected retirement age, what you've saved so far, and your state (for taxation). The model then solves for the withdrawal and tax strategy that maximizes your lifetime account balance. If the annual income you need in retirement can't be funded by your existing savings, the model suggests what to change — save more before retiring, spend less, or retire later. Everything runs locally in your browser. Use Export / Import at the bottom of the page to save your inputs or pick up where you left off.
Middle-of-the-road: 6% return, 2.5% inflation, average medical-cost trends, and mean life expectancy. Sets returns, inflation, medical trends, out-of-pocket costs and planning age together — you can still fine-tune any field below.
1 · The essentials
You & your household
We compute your birth year from your age. Enter a spouse age to switch the whole model to married filing jointly — Social Security, Medicare and taxes all adjust automatically.
$
Sets the annual target below (×12). You can also edit the annual figure directly.
$
b. 1966
Retiring now — assessing readiness today.
What you've saved
Enter actual dollar balances. Pre-tax and Roth are tracked separately for you and your spouse — this matters because SEPP (72t) rules and Roth conversions apply per account owner. Your taxable brokerage splits into already-taxed principal and unrealized capital gains.
$
Withdrawals taxed as ordinary income; RMDs apply from 75. Roth conversions come from this account.
$
If spouse retires under 55, SEPP (72t) draws come from this account only.
$
Qualified withdrawals are tax-free; no RMDs.
$
Qualified withdrawals are tax-free; no RMDs.
$
Brokerage cost basis, invested in the market — spendable with no tax.
$
Realized proportionally on withdrawal, taxed at long-term rates.
$
Cash held outside the market — CDs, HYSA, Treasuries or money market. Spent first in down-market years; earns only inflation, so it is separate from the savings above.
$
Pays Medicare premiums tax-free from 65; any leftover is then an ordinary-income account.
Other income in retirement
Pensions, annuities, rental or part-time income, dividends — anything beyond Social Security and your accounts. Split out the portion that is qualified dividends or long-term capital gains (taxed at preferential rates).
$
$
The remainder is taxed as ordinary income.
Pre-filled with your target annual income above, held flat for every year. Edit any year to model a change in spending — for example, a lower figure once a mortgage is paid off, or a higher one for early "go-go" travel years. Every figure here is in today's dollars and grows with inflation from now until that year, so purchasing power stays consistent across the years you don't edit.
2 · Social Security, taxes & assumptions
Social Security
We estimate each person's benefit from their own career earnings record. Claiming ages are optimized for your household (see the verdict) and can be overridden in Advanced assumptions. Expand the earnings records below to type actual SSA wages.
Your earnings & benefit
$
Seeds the earnings record (back-projected by wage growth).
First year of earnings — when your work history begins.
Optional override of the computed PIA (monthly, today's $).
Spouse's earnings & benefit
$
Seeds the spouse's earnings record (back-projected by wage growth).
First year of the spouse's earnings history.
Optional override of the spouse's computed PIA (monthly, today's $). Whoever earned less automatically gets their own benefit plus a spousal top-up toward 50% of the higher earner's PIA once both have filed (deemed-filing rules) — no need to choose.
Estimated earnings record (capped at the Social Security wage base). Edit any year; figures index to wage growth, feed the AIME → PIA benefit formula, and update everything.
Year
Age
Earnings (capped)
1988
22
1989
23
1990
24
1991
25
1992
26
1993
27
1994
28
1995
29
1996
30
1997
31
1998
32
1999
33
2000
34
2001
35
2002
36
2003
37
2004
38
2005
39
2006
40
2007
41
2008
42
2009
43
2010
44
2011
45
2012
46
2013
47
2014
48
2015
49
2016
50
2017
51
2018
52
2019
53
2020
54
2021
55
2022
56
2023
57
2024
58
2025
59
Taxes
Filing status: Single (set automatically by whether a spouse age is entered). Federal brackets, standard deduction, taxable-Social-Security, long-term capital-gains rates and the Net Investment Income Tax are all modeled. Bracket/IRMAA smoothing and Roth conversions are auto-optimized (see the verdict) and can be overridden under Advanced.
No state income tax — $0 modeled for all years.
%
For a state not listed (e.g. NY, NJ, OH): enter its approximate effective rate. Applied to all income including Social Security.
Withdrawal strategy
By default the model solves each year's withdrawals to hit your target income. Switch to a plain percentage rule to use a fixed withdrawal rate instead.
Solve withdrawals to deliver the target income above.
%
Year 1 = rate × starting balance, then grown by inflation. The classic “4% rule.”
Social Security claiming ages
By default these are set to the optimal claiming strategy — the ages that maximize the expected household benefit in today's dollars, weighting each future year by the probability of being alive to collect it (a male and a female survival curve from the SSA life table; the higher earner is also weighed for the survivor benefit). This doesn't depend on your plan-to age. Override either age below; click Use optimal to restore.
62–70. FRA is 67; delaying adds ~8%/yr to age 70.
62–70. A spousal benefit can't begin until the other spouse has filed.
%
Above inflation, for valuing future benefits. Default ≈ the 20-yr TIPS real yield (the safe asset given up to delay); a higher rate favors claiming earlier.
Re-applies the optimized claiming ages.
Tax strategy
These settings are auto-optimized for maximum ending portfolio value — the combination of smoothing, Roth conversions, and SEPP that leaves the most in your accounts at the end of the plan (which also maximizes what heirs receive). Override any setting manually; the optimizer re-runs every time inputs change.
When on, pre-tax draws are held under the first IRMAA cliff and the 24% bracket where possible, using already-taxed savings then Roth for the rest. Pre-tax is still drained first, just capped.
In low-income years, convert pre-tax → Roth up to the chosen bracket top. Builds Roth for later (tax-free, no RMDs, doesn't raise IRMAA when drawn). Conversion tax is paid from taxable savings.
When Off (default), the model never touches your pre-tax account before 59½ — funding any gap from Roth or savings instead. No distribution = no SEPP commitment. Turn On only if you plan to use 72(t) distributions as a deliberate income source before 59½.
When on, the model picks the combination that maximizes your ending portfolio (heirs' value). Toggle off to use your manual selections above.
Note: Optimal portfolio strategy ≠ optimal tax strategy. The combination with the lowest lifetime tax bill is not always the one with the largest portfolio — paying taxes earlier reduces compounding even if the total tax is similar. The optimizer prioritizes portfolio value; taxes are only a tiebreaker.
Health care: premiums & out-of-pocket
Retiring before Medicare (65) means buying ACA coverage. We model the unsubsidized benchmark Silver premium from your age(s), then apply the ACA Premium Tax Credit sliding scale based on your MAGI vs. the Federal Poverty Level. Above 400% FPL the subsidy phases out (current law cliff). From 65, Medicare carries its own premiums plus real out-of-pocket costs. All costs grow at the medical trend you set.
Children or other dependents covered on your marketplace plan. Adds to household size for FPL subsidy calculation (you + spouse counted automatically).
$
Unsubsidized benchmark Silver premium; computed from age & household size, override for your plan. The subsidy is applied on top of this automatically based on MAGI. Cannot be paid from an HSA tax-free.
$
Deductibles, copays & coinsurance on a marketplace plan (avg. deductible ~$3,800, OOP max $10,600; KFF 2026). Paid from HSA first.
$
Cost-sharing, dental/vision/hearing & uncovered care beyond Part B/D premiums (KFF: ~$6,460/yr incl. premiums). Paid from HSA first.
Drives Part B/D premiums. Part B has grown ~4.5%/yr over 20 yrs, ~5.8% recently (CMS); Trustees project ~5.5%.
Market & horizon assumptions
%
Nominal, blended across accounts.
%
Grows your target, SS COLA & brackets.
%
Career earnings growth above inflation (SSA's Average Wage Index trend, ≈1.1%). Lifts Social Security for future retirees while keeping the benefit in today's dollars. Set 0 to freeze wages in real terms.
Defaults to SSA life-table life expectancy for your age & sex; editable (≈50% live longer — consider 90+ to be safe).
%
Annual swing around the expected return — drives the volatility stress test in the verdict. ≈9% for a 30/70 portfolio, ≈12% for 60/40, ≈17% for all-stock; the assumption preset sets it to match its return (9% / 12% / 16%). Set 0 to disable.
The projection runs until whoever lives longer. After the first spouse passes (at the earlier plan-to age), the survivor files as single, keeps only the larger Social Security benefit, and has one-person Medicare & out-of-pocket costs.
3 · The Verdict
Educational only, not financial advice — consult a financial advisor before making any decisions.
The verdict above is the summary; the full projection lives in three views — switch between them with the tabs: Accounts over time (balances, withdrawals & chart), the Social Security summary (each benefit, lifetime totals & the claiming-age comparison), and the Income & Tax ledger (year-by-year income, tax, Medicare & spendable).
Rule of 55 (flexible 401k, 55–59½) 72(t) SEPP (fixed, retire under 55) § = early-withdrawal rule · ‡ = forced RMDOther income = cash in from outside Social Security and your accounts — a working spouse's after-tax pay, pensions, annuities, rental or part-time income, dividends (hover for the split). It counts toward Spendable.
Lifetime figures are summed across the plan. Nominal = future dollars actually received (with COLA); today's $ = the same benefits expressed in today's purchasing power. Edit your earnings records under the Social Security input section above.
All figures nominal (future dollars). Spendable = total income − federal tax − state tax − Medicare − out-of-pocket medical − pre-65 premiums. Hover any Medicare cell for the IRMAA breakdown.
💾 Save / restoreNothing is saved automatically — Export downloads every input and all output tables as one CSV. Import a saved file to restore your inputs; or open it in Excel / Google Sheets.
Your data stays on your device. Everything you enter runs entirely in your browser — nothing you type is sent to a server or stored anywhere. See the Privacy Policy for details on the analytics and advertising services used on this site.