Without the appointment. Without the subscription.
Your real retirement numbers. Honestly. In five minutes.
0
Success
Very strong — portfolio survives to age 90
Across 1,000 simulations of your real numbers.
Median ending balance: $2.85M.
Age 67
SS begins
Age 73
RMDs start
$36K
Tax this year
A retirement decision platform that does the work of professional software — Monte Carlo simulation,
actuarially correct Social Security, tax-optimal withdrawal modeling — without
the cost, the appointment, or the account signup.
Free to calculate$79 one-time to optimizeNo subscription. Ever.
The middle is empty
Most retirement tools fail in one of two ways.
Free calculators don't take you seriously. Subscription software demands
an hour of setup before you see an answer. Both miss the largest segment
of people who just want to know where they stand.
Free + dumb
4%-rule calculators that don't engage with your situation.
They're funnels into wealth management or insurance products — not real planning tools.
Paid + complex
$144/year subscriptions that demand 30 minutes before delivering an answer.
Designed for people who enjoy financial planning as a craft. Most people don't.
Retirement Scenario Explorer
A real answer. In five minutes. $79 once if you want to go further.
Your actual numbers. Plain language. No appointment.
No subscription. No account required to calculate.
How it works
From "where do I start" to "I know exactly what to do."
01
01 · Tell us about you
Start in plain language. No jargon.
The way you'd describe your situation to a friend is the way you can describe it to us.
We turn it into a real plan automatically — no financial vocabulary required.
Your plan
Current age
years
Household
Just meMarried
Saved for retirement
$
Target retirement age
62656770
Social Security claim age
62656770
Monthly spending goal
$/mo
Building your plan…
AI Advisor
Quick way to get started — just tell me about your situation. Where are you now, where do you want to go? I'll turn it into a real plan.
You
Got it. Let me run the numbers…
02
02 · See the answer
1,000 simulations. One real answer.
We run your actual situation through a thousand market futures — not a 4% rule, not a guess.
You see a clear verdict and the numbers behind it. The math you'd expect from professional software.
Simulating
TodayAge 70Age 80Age 90
0/ 1,000 simulations
Running…
Your result
0
Success
Solid — but bridge years thin
78% of simulations sustain through age 90.
Years 65–67 are the soft spot.
↗
$7,500/mo
Your Income Picture
At goal
↗
$3.2K/mo
Guaranteed Income
SS + pension
↗
$420K
Nest Egg
$2.4M projected
↗
Age 67
SS Claiming
$2,940/mo at FRA
↗
2 years
SS Bridge
Age 65 → 67
↗
$1,470/mo
Spousal Coordination
Spouse benefit
Want to know why? Ask the advisor→
03
03 · Change the answer
Pick what matters. Smart Moves surfaces the rest.
Four retirement goals. The app reads your numbers and surfaces the moves that actually shift each one — not a generic checklist, the ones the math says will work for you. Toggle a move on and watch the projection change.
Smart Moves
Pick a retirement goal:
Retire earlierSpend moreLeave a legacyWeather a downturn
Moves that apply to your numbers
✓
Max your 401(k)
Tax-deferred
✓
Max your Roth
Tax-free growth
✓
Phase your retirement spending
Late-life draw
✓
Start an HSA
Triple tax-free
Your projection
Goal: retire earlier — same lifestyle
Stack four moves. Get years back.
Today's earliest
Age 65
→
With these moves
Age 65
Pick moves to see the impact
Projection, not prediction. Each move is modeled against your real numbers — you decide which ones fit your actual life.
04
04 · Have a real conversation
Not a chatbot. A retirement concierge.
The advisor reads your numbers, navigates the app, and proposes specific changes — you stay in control of every decision. Ask anything. Watch your plan respond.
Your plan
My Plan
Projection
Results
Stress Test
Current age
52
Retirement age
65
Social Security claim age
67
Monthly spending
$7,500
Plan updates as you change inputs.
Portfolio over timeBridge years 65–66
60708090
Age
SS Monthly
Portfolio Draw
End Balance
62
$0
$0
$510K
64
$0
$0
$575K
65
$0
$7,500
$485K
66
$0
$7,500
$405K
67
$2,940
$4,560
$365K
70
$2,940
$4,560
$310K
80
$2,940
$4,560
$185K
78
Success
Solid — bridge years thin
Retire at 65, claim SS at 67.
+$11.4K/yr
More Social Security
+$168K
Lifetime benefit
+13pp
Success rate
Recalculating…
AI Advisor
You're at 78% — solid. Ask me anything about it.
?
→Suggested change
Set Social Security claim age = 70
05
05 · Where the money flows
Where the money comes from. Where it goes.
Retirement isn't just spending down savings. Real income flows from Social Security, pensions, and your portfolio — split across living, taxes, and healthcare. See the whole picture, not a single number.
Your portfolio is one source among three — not the whole story.
Tax weight
Taxes are often the second-largest expense in retirement, ahead of healthcare.
Real headroom
See exactly where each dollar goes — not just whether you "have enough."
06
06 · Test what could break it
Honest about what could go wrong.
Real retirement risks aren't averages — they're sequences of returns, healthcare shocks, longevity. Test your plan against each one. See exactly which threats move the needle, and by how much.
Stress scenarios against your plan
Your plan91%success
Market crashes early
−0pp
drops to 91%
Sequence-of-returns risk in years 1–3
Crash severity−25%
−10%−25%−40%
Long-term care event
−0pp
drops to 91%
3 years of memory care at age 80
Inflation hits 5%
−0pp
drops to 91%
Sustained for 5 years mid-retirement
Live to 100
−0pp
drops to 91%
10 extra years of withdrawals
Spouse passes early
−0pp
drops to 91%
Loss of one Social Security check
Bond returns drop
−0pp
drops to 91%
Real returns near zero for a decade
Even worst-case stays in the recoverable range — and your advisor can recommend specific moves to soften each one.
AI ADVISOR
→
AI Advisor
10 / 10×
I see you just stress-tested a severe market crash.
At −40%, your plan drops to 62% — that's where it gets uncomfortable. The fix is a 2-year bridge fund.
Want me to size the bridge fund and apply it to your plan?
07
07 · Some plans need a human
Built to be shared.
We don't try to keep everyone. We try to be the place that helps you know what you need next.
AI Advisor
10 / 10×
Running deep analysis…
01Overall assessment
Strong plan with a 91% success rate. Your bridge years are well-funded and your withdrawal sequence is tax-efficient.
02Key risks
A severe early market crash would drop you to 62%. Long-term care costs are the second-largest exposure.
03Recommended moves
Add a 2-year bridge fund. Consider long-term care coverage between ages 60-65, when premiums are still reasonable.
📄Analyze and export
Your Retirement Plan
May 2026 · Generated by RetirementScenario.com
Plan summary
91%
Success rate
65
Retirement age
$7,500
Monthly income
Projection through age 90
Analysis & recommendations
Overall assessment
Strong plan with a 91% success rate. Your bridge years are well-funded and your withdrawal sequence is tax-efficient.
Key risks
A severe early market crash would drop you to 62%. Long-term care costs are the second-largest exposure.
Recommended moves
Add a 2-year bridge fund. Consider long-term care coverage between ages 60-65, when premiums are still reasonable.
↓Export plan · take it to your CFP
08
08 · Stay on course
Plans go stale. Check in.
Life moves. The market moves. Your numbers move. Save a check-in whenever something changes — a raise, a spending bump, a market drop — and watch the plan hold or drift over time. The AI Advisor reads the trajectory and tells you what's actually driving it.
Your check-ins
Tracked over time
1 check-in
Success rate
72%
Sustainable spend
$7,200/mo
Nest egg at 90
$480K
Jun 2025
72%
Baseline
—
Dec 2025
79%
Maxed 401(k)
+7pp
Today
84%
Pushed retirement to 66
+5pp
+Save a check-in
AI Advisor
Reading your trajectory
You're up 12 points since your June baseline. Both changes carried it.
What helped
Maxing the 401(k) added 7 points — your account had headroom. Pushing retirement to 66 added another 5 and held your spending plan in place.
What's next
Maxing your Roth could add another 3–4 points and stack tax-free growth into your bridge years. Want me to model it?
Ask me to model another move
Pricing
No subscription. No account. Just answers.
Free does the math. Navigator does the planning — $79 once, no subscription.
The AI Advisor that reads your plan — 25 deep analyses · 50 conversations
Smart Moves — the moves that get you to retire earlier, spend more, leave a legacy, or weather a downturn
Deep Search — ten optimizers that search your plan for the best answer: the couple's Social Security claim, your coordinated bridge plan (Roth conversions + gain harvesting), what your plan hinges on, solve-for-any-goal, how much you can really afford to spend, your spending guardrails, pausing work, your next home, whether two risks compound, and one-click Deep Scan
AI Plan Score — holistic plan strength beyond raw Monte Carlo
Save scenarios · compare side-by-side
PDF export — for your CFP, your family, your records
Most retirement questions don't have rule-of-thumb answers — they have your-numbers answers. Here's what the platform helps you figure out, and why these questions are harder than they look.
The first conversation about retirement. Not the last.
Some people leave reassured.
Some go deeper into specialized software.
Some book a CFP appointment.
All three are wins.
We don't try to keep everyone — we try to be the place that helps you know what you actually need next.
CFP
Boldin
ProjectionLab
RetirementScenario
Price
$200–500 / hour
$144 / year
$109 / year
$79, once
First answer
3+ weeks (book)
1–2 hours setup
30+ min setup
5 minutes
AI Advisor
Human (limited)
Bolted-on, shallow
None
Yes, deep
Privacy
Full disclosure
Account required
Account required
No account
Best for
Complex life events
Planning as a craft
Serious FIRE workflow
A clear first answer
Choose us if you want clarity fast — no subscription, no account, no waiting room.
Why you can trust this. And how we keep it that way.
The math
Every formula. Every assumption. Every source.
A retiree with $100K in brokerage gains and $40K in Social Security pays roughly $5,000 more in tax than free calculators predict — because most ignore that brokerage gains push your Social Security into higher tax tiers. We model the IRS rules properly. Details like that matter.
No account, no copy of your plan — your inputs stay in your browser, and we never sell them or use them to train AI.
State impact, same plan
$1.5M nest egg, $7,500/mo goal, retire 65, married. Run the same plan in four different states:
Florida
$8.05M
No state income tax
Pennsylvania
$7.96M
Excludes retirement income
New York
$7.39M
4.5% effective on retirement income
Minnesota
$7.01M
6.09% rate + taxes Social Security
Same inputs. Different state tax codes. Over a million dollars of difference at life expectancy. Most calculators ask for one state-tax percentage and apply it to every dollar — we use the real structure for each state, including which exclude pensions, which tax Social Security, and which apply preferential capital gains rates.
The engine
How we keep the math honest.
For FIRE planners
5–15 years from FIRE? You'll find what you need.
🔥Built for the FIRE-specific questions that matter.
For standard FIRE — W-2 income, 401k/IRA, brokerage, the classic accumulate-and-withdraw arc — this may be enough on its own. For deep multi-asset craft modeling, ProjectionLab and cFIREsim go further. Send us to anyone who wants a real answer without making retirement modeling a hobby.
You've been meaning to figure this out. Today's a good day.
Five minutes from where you are now to knowing where you stand.
No appointment, no signup, no subscription.
Questions, bug reports, feature requests — all welcome. I read every message.
🔒 The short version: there's no account, and the retirement numbers you enter stay in your browser — we never receive them and keep no copy. Two things send your numbers out, and only when you choose them: the AI Advisor and Share links. Separately, we record anonymous usage — which features you open, never a figure you typed. All of it is detailed below.
What we collect
There are no user accounts. The retirement numbers, assumptions, and scenarios you enter are stored in your browser's local storage — on your device. We never receive them and we keep no copy. We do run a server, and it holds two small things. If you buy, it stores what you purchased and how much of your AI allowance you've used — that's what makes your purchase work across sessions and devices. And we record anonymous usage, described under Analytics below. Neither one ever contains a dollar figure you entered.
What stays on your device
All of your inputs (age, savings, income, goals), all calculated results, and any scenarios you save are stored locally in your browser. If you clear your browser data, that information is gone — we have no copy of it.
Payment processing
If you upgrade to Navigator, payment is processed by Stripe. We receive confirmation that a payment was made, but Stripe handles all financial data. We do not store your credit card number or billing details. You can review Stripe's privacy policy at stripe.com/privacy.
Analytics
We record anonymous product analytics ourselves rather than handing them to someone else — which features get opened, where people get stuck, and whether anything is crashing. Events are tied to a randomly-generated local UUID, not to any personal identifier, and they include a general description of your plan: whether it's for one person or two, whether you've already retired, the goal you chose, and roughly how well-funded it is. Never a dollar figure you entered, never a retirement number you typed, never an AI Advisor conversation. Raw records are deleted after 90 days. While we finish moving off our previous provider, these events are also still sent to PostHog (posthog.com/privacy); that will end shortly.
AI Advisor data
When you use the AI Advisor, the numbers from your plan (anonymized — no name, account numbers, or institution names) are sent to our API and forwarded to Anthropic for processing. We do not log the request contents or store conversation history on our servers. Anthropic processes the request to generate the response and returns it to your browser. Their privacy practices are documented at anthropic.com/privacy.
Share links
When you click "Share Your Plan" and copy a link, the scenario inputs in your plan are encoded into a URL and sent to our short-link provider, short.io, which generates a shorter URL on link.retirementscenario.com for easy sharing. The encoded data contains only the numbers you've entered — no name, account information, or anything that identifies you. short.io may log clicks on the short link as part of their normal redirect service. You can review their privacy practices at short.io/privacy. This is the only situation in which any plan data leaves your browser, and only when you explicitly choose to share.
Cookies
We use a session cookie solely to track whether you've completed the onboarding wizard in this browser session. It contains no personal information. Separately, if you arrive through a partner's referral link, our affiliate platform (Rewardful) sets a cookie holding a random referral ID so the partner who sent you is credited if you later buy — it identifies the link you clicked, never you, carries nothing you've entered, and expires after 90 days. Arrive any other way and no referral cookie is set. Neither cookie is used for advertising.
Contact form and newsletter
If you submit our contact form or sign up for our newsletter, we receive your email address and any message you send. These are processed by Resend (our email provider) and stored only to enable us to respond and (for newsletter subscribers) to send periodic updates. We do not share email addresses with anyone, and you can unsubscribe from the newsletter at any time.
Third-party sharing
We do not sell, rent, or share your data with anyone, and we never will. The only outside companies that touch anything are the processors named above — Stripe for payment, Anthropic for AI Advisor requests, short.io for share links, Resend for email, Rewardful for crediting partner referrals — each doing one job and nothing else.
Children
This service is intended for adults planning for retirement. We do not knowingly collect information from anyone under 18.
Changes to this policy
If we change this policy in a meaningful way, we'll update the date at the top. The current version always lives at retirementscenario.com.
Contact
Questions? Use our contact form at the bottom of the page.
⚠️ RetirementScenario.com is a planning tool, not a licensed financial advisor. Nothing here is financial, tax, investment, or legal advice. Always consult a qualified professional before making retirement decisions.
What this tool is
RetirementScenario.com provides a retirement planning calculator and scenario modeling tool for educational and informational purposes. It is designed to help you think through retirement decisions — not to replace professional financial advice.
Not financial advice
All projections, estimates, scenarios, and outputs generated by this tool are hypothetical and based solely on the inputs you provide. They do not account for all real-world variables. Past performance of markets does not guarantee future results. We make no representation that any projection will be achieved.
No guarantee of accuracy
We work hard to make the calculations accurate, but we make no warranty that the tool is free from errors. Tax laws change. Social Security rules change. Economic conditions change. You are responsible for verifying any figures that inform real decisions.
Feature changes
Features available on RetirementScenario.com may be added, modified, removed, or improved over time as the product evolves. Features in your tier of access at time of purchase will continue to be available; new features added in the future may be made available to existing users at our discretion. We will not retroactively remove core features that you paid to access.
Your responsibility
By using this tool, you agree that: (a) you are using it for personal, informational purposes only; (b) you will not rely solely on its output for major financial decisions; (c) you will consult a licensed CFP, CPA, or other qualified professional for advice specific to your situation.
Navigator, Advisor Plus, and Advisor 365 purchases
Navigator is a one-time $79 purchase that includes 25 deep AI analyses, 50 AI Advisor conversations, and ongoing access to all paid features. There is no subscription and no recurring charge. All features available at time of purchase, plus future feature additions, are included.
Advisor Plus is an optional $29 add-on that adds 10 deep analyses and 25 AI Advisor conversations to your existing Navigator account. It stacks with any unused quota you have, and never expires.
Advisor 365 is a separate, optional one-time $79 purchase that extends AI Advisor access to unrestricted use for 365 days. It does not auto-renew. After 365 days you may choose to repurchase or revert to your standard Navigator usage limits. There is no automatic billing under any circumstance. See "AI Advisor fair use" below for the background bounds that protect the service against abuse.
We do not offer refunds after purchase, but if you have a problem, reach us via the contact form at the bottom of the page and we'll make it right.
AI Advisor fair use
The AI Advisor includes both per-tier conversation limits and per-session exchange limits. Each new conversation starts with fresh context. Free users get 3 conversations of up to 5 exchanges each (15 messages total). Navigator users get 50 conversations of up to 10 exchanges each (500 messages total). Advisor Plus purchases ($29 each) add 10 deep analyses and 25 conversations and stack indefinitely with no expiration.
Advisor 365 ($79 / 365 days) provides unrestricted AI Advisor use for the year. "Unrestricted" means your normal usage is not metered — you do not need to track or limit your message count, and you will not encounter upgrade prompts during use. The system includes fair-use bounds (per-conversation exchange caps, conversation context resets, per-IP rate limits, output length caps, and system-wide cost alerts) that run in the background to prevent abusive automated patterns; these bounds will not be encountered by normal use. We reserve the right to contact subscribers whose usage patterns suggest abuse and, in extreme cases, restrict access for accounts engaged in clearly abusive behavior. We will reach out before acting.
These limits exist to manage operating costs and ensure response quality, not to restrict legitimate use; if you have a problem, reach us via the contact form.
Intellectual property
The tool, its code, design, and content are owned by RetirementScenario.com. You may use it for personal planning purposes. You may not copy, reproduce, or redistribute the tool or its source code.
Limitation of liability
To the maximum extent permitted by law, RetirementScenario.com is not liable for any financial loss, decision, or outcome arising from use of this tool. Your use of the tool is at your own risk.
Governing law
These terms are governed by the laws of the State of Indiana, without regard to conflict-of-law principles. Any disputes arising from these terms will be resolved in the state or federal courts located in Indiana.
Changes to these terms
We may update these terms from time to time. Continued use of the tool after changes constitutes acceptance of the updated terms.
Contact
Questions about these terms? Use our contact form at the bottom of the page.
I built this because I needed it.
Why this exists
Most retirement calculators are either too simple or too complicated. The free ones miss the math that actually matters — Social Security filing strategy, spouse coordination, tax drag, sequence-of-returns risk. The professional software gets it right, but it's slow, expensive, behind a login, and built for advisors managing client portfolios — not someone who just wants to run a few scenarios on a Sunday afternoon.
So I built something in between. It's free to use. The AI Advisor is $79, once.
Every assumption in this tool is documented in How It Works — formulas, source data, tax brackets, Monte Carlo distribution. Nothing is hidden.
How the pricing works
The app and everything it produces — your projections, your scenarios, your Social Security analysis — is free. I only charge when you want the AI Advisor to read your plan and give you specific recommendations. That's Navigator — $79, once, with 25 deep AI analyses and 50 conversations included. (If you run out, Advisor Plus is $29 and adds 10 more deep analyses plus 25 more conversations; Advisor 365 at $79 for 365 days unlocks unrestricted AI access for the year, though most never need that.) The AI costs real money to run, so I charge for it. No required subscription.
I'd genuinely rather more people use this for free than pay me. If it helps someone retire smarter, that's the point. The money keeps the lights on.
On your data
There's no account, no server storing your numbers, no database holding your plan — it lives in your browser. Two things can send your numbers out, and only if you choose them: the AI Advisor, which sends anonymized numbers to generate your reply and then discards them, and Share links, which encode your numbers into the URL you copy. Otherwise no figure you enter reaches me — I don't even require an account.
The export is designed to be useful on its own — or as preparation for a conversation with a financial advisor.
Who built it
My name is Luke. I have a software and financial services background, and I've spent enough time around retirement planning to know what good math looks like — and what shortcuts to avoid. I'm not a financial company, a fintech startup, or a registered investment advisor. I'm someone who spent time and money solving a problem I had, and figured others might find it useful too. This is a tool I'd want to exist — so I built it.
You can also find me on Reddit as u/lnewton_me, where I'm active in r/DIYRetirement, r/Fire, r/ChubbyFIRE, and a few other personal-finance communities. If you've got a question and would rather post it publicly, that's a good place to flag me.
Get in touch
Questions, bug reports, feature requests, or just telling me how your plan looks — all welcome. Use the contact form at the bottom of the page. I read every message and reply to most.
Most retirement planning software wants a piece of you forever. We built this on a different posture. Here are the four commitments behind it.
01
One purchase. Yours forever.
Pay once. Never again.
Navigator is $79. Once. Not $79 a month. Not "with a free trial that quietly converts." The app and the AI Advisor are yours from the moment you pay. Step away for two years, come back — your purchase still works. Nothing about the tool depends on you being "active."
If you ever want more AI capacity, Advisor Plus ($29) adds it. If you want unrestricted AI for a year, Advisor 365 ($79) does that. Both are optional, both are one-time, neither auto-renews. You always know exactly what you're paying for and when.
02
We keep no copy of your plan.
No account. No copy of your plan. Nothing for us to leak or sell.
Your inputs live in your browser, not a database we control. Your spouse's name, your account balances, your real numbers — there's no account system and no server-side copy of your plan to lose, leak, or sell. We couldn't sell your plan if we wanted to; we don't keep it.
The AI Advisor sends only the parts of your plan you ask it about, only when you ask, and only inside bounded retirement-domain prompts. We don't train models on your inputs.
03
No account. No login. No marketing follow-up.
Nothing to sign up for. Nothing to cancel.
You don't sign up. You don't create a password. There's no email required to use the tool, and no automated drip campaign waiting for you. Bookmark the page and your work persists in your browser. The only inbox we'd ever touch is the newsletter at the bottom of the page, which is opt-in and only sends when something material changes.
04
Open math. No black box.
Every formula documented. Every source cited.
Every formula in this tool is documented. Every assumption sourced. Every methodology decision explained. The trust framework documents 32 pre-push gates, 99 AI evals, and 46 personas tested before every release. If you ever want to know exactly why the AI Advisor said what it said, the answer is on the page.
You pay for a tool. You get a tool. You own it.
We're not building a recurring revenue stream that depends on keeping you subscribed — we're building software you can rely on whenever retirement questions come up, whether that's once a month or once a decade. Same tool. Same math. No invoices.
It's not unusual because it's clever. It's unusual because the industry stopped doing it.
The questions we actually get asked. If yours isn't here, use the contact form at the bottom of the page.
What's the difference between free and paid?
The free version gives you the full calculator: 1,000-scenario Monte Carlo simulation, Social Security optimizer, stress testing, tax-optimal withdrawal ordering, Roth conversion sweet spot analysis, and the cohort benchmark. Navigator (the $79 paid upgrade) adds the AI Advisor that reads your specific numbers (25 deep analyses and 50 conversations included), Smart Moves — the moves that get you to retire earlier, spend more, leave a legacy, or weather a downturn — AI Plan Score (holistic plan strength beyond raw Monte Carlo), Deep Search — ten optimizers that search your plan for the best answer (the couple's Social Security claim, your coordinated bridge plan of Roth conversions + gain harvesting, what your plan hinges on, solve-for-any-goal, how much you can really afford to spend, your spending guardrails, pausing work, your next home, whether two risks compound, and one-click Deep Scan) — saved scenarios with side-by-side comparison, and PDF export. One-time purchase — no subscription required.
Is this a subscription?
Navigator is a one-time $79 payment — no recurring charge, no cancellation needed. If you ever exhaust your 25 included deep analyses or 50 conversations, you can buy Advisor Plus ($29) which adds 10 more deep analyses and 25 more conversations with no expiry, or upgrade to Advisor 365 ($79 for 365 days of unrestricted AI Advisor access, never auto-renews). Most people never need either.
What does the AI actually do?
The AI Advisor does two things. It runs deep analyses — a full read of your plan with specific recommendations ranked by impact. And it chats with you about your scenarios, answering specific questions like "should I claim SS at 67 or 70?" or "what's my Roth conversion window?". Navigator includes 25 deep analyses and 50 conversations. Most people use 3-5 analyses over the lifetime of their plan as their numbers change.
Does the AI do the math?
No. Every number you see is calculated by our simulation engine — 1,000 Monte Carlo runs, deterministic tax modeling, and actuarially correct Social Security. The AI Advisor reads those results and helps explain what they mean for your specific situation. It interprets the numbers. It doesn't produce them.
How accurate are the projections?
The Monte Carlo simulation runs 1,000 scenarios using randomized market returns based on historical data. It accounts for inflation, Social Security timing, tax estimates, and withdrawal sequencing. No model is perfect — tax laws change, markets surprise, and life doesn't follow a formula — but we work hard to make the math honest and the assumptions transparent. Click "See Our Math" in the footer to see exactly how every number is calculated.
Can I model spending that adjusts to market conditions?
Yes — the engine supports Guyton-Klinger dynamic spending guardrails, the academic best-practice strategy widely used in the FIRE community. Instead of the static 4% rule (where you spend the same amount every year, adjusted only for inflation), guardrails adjust spending based on portfolio performance: cut 10% in bad markets, bump 10% in good ones. The academic research finds initial withdrawal rates of 5–5.5% historically sustained under this framework — meaningfully higher than the 4% rule. It's opt-in: enable it from Inputs, the Stress Test scenarios, or any of the four Smart Moves lenses (Retire Earlier, Spend More, Leave a Legacy, Weather a Downturn).
Can I model stopping retirement contributions early (Coast FIRE)?
Yes — the engine supports Coast FIRE. Set a "Stop contributing at age" in Inputs (and the parallel field for your spouse if you're a household). When that age is reached, all retirement contributions and the employer match stop, but existing balances keep compounding at your pre-retirement return through retirement age. Coast FIRE is the variant where you front-load enough savings to remove savings pressure by your mid-40s or 50s, then downshift to lower-paying or more enjoyable work — your income covers expenses, but no new money goes into retirement accounts. The appeal is the workload change, not the timeline change: you typically still retire at 60–65, but the back half of your career changes. Default is 0 (no Coast — contribute right up to retirement); opt in by setting an age between your current age and retirement.
What if my situation changes — can I come back and update my numbers?
Yes — that's the whole point. Your plan changes when your numbers do, so the tool is designed to be revisited. Update your salary, contributions, retirement age, or anything else, and the projections recalculate immediately. Navigator is lifetime access, so come back as often as you need. Most people return when they get a raise, change jobs, sell a house, get an inheritance, or just want to check in on whether they're still on track.
Is my data saved anywhere?
No. Your inputs are stored in your browser's local storage — on your device. There are no user accounts, and no server-side copy of your plan — we never receive your numbers. Two things can send your numbers out, and only if you choose them: the AI Advisor, which sends anonymized numbers (no names or account info) to generate your response and then discards them, and Share links, which encode your numbers into the URL you copy. Otherwise we never receive your numbers. If you clear your browser data, the information is gone.
Is it safe to use the AI Advisor?
Yes. The AI Advisor sends only the numbers from your plan — no name, no account numbers, no institution names. We don't log the request contents, and no conversation history is stored on our end, so there's no account and no saved transcript to breach. That's the real difference from a personal ChatGPT or Claude.ai account, where your conversations are saved and tied to your login.
Is this financial advice?
No. RetirementScenario.com is an educational planning tool. The projections are based on your inputs and historical assumptions — they are not a guarantee of any outcome. Before making major financial decisions, please consult a licensed CFP or other qualified professional.
No account, no copy of your plan — your inputs stay in your browser, and we never sell them or use them to train AI.
Why this is more accurate than other calculators
Most free calculators assume the same return every single year. This one runs 1,000 simulations of your retirement — each with randomized market returns drawn from a realistic distribution. Your success rate reflects all of them, including the bad sequences that derail real retirements.
Most free calculators ignore taxes on withdrawals. This one models the IRS provisional income formula for Social Security taxability, long-term capital gains rates on brokerage draws, and tax-optimal withdrawal ordering — taxable first, then pre-tax 401(k), then Roth last. The order you withdraw determines how much goes to the IRS vs. your retirement.
Most free calculators apply the same tax rate every year regardless of your income that year. This one stratifies long-term capital gains across the 0%, 15%, and 20% brackets based on your other income each year, includes brokerage gains in the AGI calculation that determines how much of your Social Security is taxable, applies state tax to home sale gains above the IRS Section 121 exclusion, and inflates federal brackets and the standard deduction forward each year to match how the IRS actually adjusts them. These details matter — a single retiree with $100K in brokerage gains and $40K in Social Security pays roughly $5,000 more in tax than a calculator that ignores the LTCG-into-AGI interaction would suggest.
Most free calculators use a generic Social Security estimate. This one adjusts your benefit for your actual claiming age using SSA adjustment factors, models spousal benefits correctly, and accounts for the bridge period your portfolio has to cover before SS kicks in.
How we keep this math reliable
The calculations below are documented section-by-section. Before any of them reach you, the engine runs through a verification discipline designed to keep your projections accurate and stable.
Reproducibility. Every change is tested. We don't ship around failing tests.
Real-scenario coverage. The math is exercised against realistic retirement profiles — early retirees, FIRE plans, household and single, multiple states — not toy examples. Every profile re-runs when the engine changes.
No silent drift. Your projection won't change without us telling you. Every code change is locked against a regression gate that fails on any output drift, so we can't accidentally shift your numbers. When we do deliberately change calculator fidelity — a tax law update, a methodology refinement, a bug fix — we document it. You'll never see your retirement numbers shift without knowing exactly why.
Source-vs-shipped parity. What you run in your browser is verified against the version we test in development. If they ever diverge, we catch it before you see it.
About the AI Advisor
The AI Advisor is powered by Claude (Anthropic) and has full visibility into your retirement plan — your numbers, your gap, your Social Security strategy, your highest-impact moves, and your earliest retirement age. It doesn't give generic advice. Every response is grounded in your actual inputs.
Your data is sent to the AI model only to generate your response, then discarded. No account required. No data retention, and your numbers are never used to train models.
The AI Advisor is a thinking tool, not a licensed financial advisor. It interprets your calculator results and surfaces things worth considering. All output is for informational and educational purposes only — it is not financial, tax, investment, or legal advice. For decisions involving significant money, consult a qualified CFP, CPA, or estate attorney. Many people find this tool helps them have a much better conversation when they do.
How the Math Works
1
📈 Pre-Retirement Accumulation
We grow each account (401(k), Roth, savings, brokerage) separately using the future value of an annuity-due formula, accounting for both your existing balance and ongoing contributions.
r = pre-retirement return, n = years to retirement. Lump sums (home sale, inheritance) are grown to retirement age. Household plans grow each spouse independently then combine at your retirement date. In retirement, a household plan runs to whichever spouse lives longer — set each spouse's life expectancy separately — and switches to survivor economics at the first death: spending drops to your survivor goal (default 75% of your monthly goal), the larger of the two Social Security checks is kept (the smaller stops), tax filing becomes single, and half of the deceased spouse's pension continues while the survivor's own pension continues in full. When the two life expectancies differ, this materially changes projected legacy and survivor planning.
2
🏛️ Social Security Adjustment
Your benefit is calculated from your Full Retirement Age (FRA) benefit and adjusted for when you claim. Claiming before FRA permanently reduces it; delaying past FRA increases it up to age 70.
Adjusted benefit = FRA benefit × SSA factor(claimAge)
SSA factors: ~0.70 at 62, 1.00 at FRA (67 for most), 1.24 at 70. This tool assumes a Full Retirement Age of 67, which applies to anyone born in 1960 or later. If you were born before 1960, your FRA is slightly lower (66 for born 1943–1954, graduating to 67 by 1960) — enter your actual FRA benefit to keep the math accurate regardless. Spousal benefit is the higher of their own record or 50% of your FRA benefit. Benefits are inflation-adjusted to retirement-year dollars. Stress-testing for legislative shortfall: the SSA Trustees project the trust fund hitting depletion in 2033, after which scheduled benefits would be reduced by ~20-23% absent congressional action. To stress-test your plan against this, set the "SS Benefit Confidence" slider to 80% (or another haircut you find plausible) — the engine will scale all SS benefits accordingly.
3
💸 Sustainable Monthly Income
Your Monthly After-Tax Income headline is the spend level your projection actually sustains through your full retirement horizon. We compute it by bisecting the deterministic projection: probe a spend amount, run the year-by-year simulation, check whether the portfolio depletes; raise the probe if it survives, lower it if it depletes. The result is the maximum monthly spend you can fund without running out — a readout of the projection itself, not a separate model.
Find max S where projection(monthlyGoal = S) does not deplete
Bisect within $25; up to 10 iterations to converge
The Monte Carlo success rate (Section 6) tells you the probability of that draw working across 1,000 different market scenarios — use the deterministic headline for capacity, the MC rate for confidence. The 4% rule was calibrated to a 30-year horizon with ~95% historical survival; it was not designed for someone retiring at 55 with a 35+ year horizon, and it doesn't account for guaranteed income streams (Social Security, pensions) that change the math materially. The bisection answer respects your actual horizon and your actual income streams.
4
🧾 Tax Calculation
We model post-retirement taxes using 2026 federal brackets (inflation-adjusted forward to each future year), state-specific tax codes for all 50 states plus DC (see Section 19), and the IRS Publication 915 provisional income formula for Social Security taxability. Tax is computed on your full income each year — pension, taxable SS, ordinary 401(k) draws, and long-term capital gains on brokerage draws. Brokerage gains count in your AGI when determining how much of your Social Security is taxable, which materially affects retirees with significant taxable accounts. Both the deterministic projection and Monte Carlo simulations use tax-optimal withdrawal ordering and stratified LTCG. The provisional-income thresholds themselves ($25,000/$34,000 single, $32,000/$44,000 married) are held FIXED in future years, matching the statute — Congress has never inflation-indexed them, which is why a growing share of Social Security becomes taxable over a long retirement — while tax brackets, the standard deduction, and capital-gains breakpoints do index forward. The engine also applies the 3.8% Net Investment Income Tax on realized gains and cash interest above the statutory $200,000/$250,000 MAGI thresholds — which the law also leaves unindexed — the additional standard deduction from age 65 (per person, indexed, and correctly reduced to the single amount in survivor years), and ordinary income tax on high-yield savings and bridge-reserve interest in the year it accrues (interest the model previously grew tax-free).
Provisional income = ordinary income + LTCG + 50% of SS
SS taxability tiers (single):
≤ $25k → 0% of SS taxable
$25k–$34k → up to 50% of SS taxable
> $34k → up to 85% of SS taxable
Baseline tax = federal + state on (pension + taxable SS + part-time)
Marginal tax = federal + state + LTCG on portfolio draws beyond baseline
401(k) draws are ordinary income. Brokerage draws are taxed at stratified long-term capital gains rates (0% / 15% / 20%) — the rate depends on where the LTCG sits relative to your other income that year, not a flat 15%. Roth withdrawals are tax-free. Savings (HYSA) withdrawals are also tax-free — principal is treated as already-taxed cash; interest is assumed taxed annually as it accrues, consistent with real-world HYSA behavior. Tax brackets and the standard deduction inflate forward each year (when "Inflation-adjust brackets" is enabled in your inputs), matching the inflation applied to your spending and balances — so your real tax burden tracks consistently across the projection. The tax estimate shown each year combines baseline tax (owed on guaranteed income alone) plus marginal tax (additional tax caused by any portfolio draw or RMD). For households with strong guaranteed income — pensions, multiple SS streams — baseline tax can be $20-50K/yr even when no portfolio draw is needed. Many free retirement calculators skip this entirely, inflating end balances by $30-80K/yr. IRMAA (Medicare Part B + D Income-Related Monthly Adjustment Amount): when MAGI exceeds bracket thresholds (2026: $109K single / $218K MFJ for tier 1, scaling up to $500K / $750K for tier 5), Medicare premiums add a per-person surcharge ranging from ~$1,000 to ~$6,950/yr. We model these surcharges in healthcare cost for any year a household member is 65+ and the household's MAGI crosses a tier threshold; thresholds inflate at general CPI to track real-world bracket creep. Documented simplifications: we use current-year MAGI rather than the IRS's 2-year lookback, and the MAGI estimate assumes draws are ordinary-taxable (slightly overestimates for Roth/LTCG-heavy plans). Brokerage cost basis: long-term capital gains tax is computed on the realized GAIN portion of a brokerage withdrawal — not the full withdrawal amount. The engine tracks your brokerage cost basis (original principal + ongoing contributions + any lump sums routed to brokerage) and computes realized gain as withdrawal × (1 − basis/balance) when you draw. Pre-May 2026 the engine simplified by treating full draws as gain, which over-stated LTCG tax for plans with substantial taxable brokerage; the May 16 update corrected this and shifted projections up for brokerage-heavy plans by $40K–$550K at life expectancy. State tax modeling is state-level only — county, city, and local income taxes (e.g., NYC, Indiana counties, Ohio cities, Kentucky counties, MD/MO/AL/IA/MI municipalities) are not currently modeled and may add 0.5%–3.5% in affected jurisdictions. If you live in a high-local-tax area, consider bumping the "State tax %" input upward to approximate your combined burden.
5
📋 Required Minimum Distributions
The IRS requires minimum annual withdrawals from pre-tax accounts. Under SECURE 2.0, your start age depends on your birth year: 73 if born 1951–1959, 75 if born 1960 or later. The amount is your projected balance divided by an IRS life expectancy factor that decreases each year.
RMD = account balance / IRS distribution period
Start age: 73 (born 1951-59) or 75 (born 1960+)
We use the IRS Uniform Lifetime Table (2022+) and SECURE 2.0 Act start-age rules. RMDs stack on top of SS and portfolio draws, potentially pushing you into higher brackets. Roth accounts have no RMDs. When your RMD exceeds your spending need (common for households with strong guaranteed income), we compute the marginal income tax on the overage using your year-specific bracket position — including any capital gains bracket cliff your other income causes — pay the tax, and reinvest the after-tax remainder into your brokerage account, preserving wealth that would otherwise be unnecessarily drawn down. Household plans run each spouse's share of the pooled pre-tax balance on that spouse's own clock: your share follows your birth-year start age and your attained age's divisor, your spouse's share follows theirs — so an older spouse's required withdrawals begin when THEY reach their start age, which can be years before yours. The share split is fixed at retirement in proportion to each spouse's pre-tax balances (draws and conversions deplete both shares proportionally — a simplification; real households may drain one spouse's accounts first). Two disclosed edges: a spouse already past their start age before the projection begins has their pre-retirement RMDs unmodeled (forced draws start at the first retirement year), and the survivor analysis keeps the surviving person's own schedule without modeling inherited-IRA elections.
6
🎲 Monte Carlo Simulation
We run 1,000 simulations of your retirement, each with randomized annual returns drawn from a log-normal distribution. The success rate is the percentage where your portfolio survives to life expectancy. Results are hypothetical and do not reflect actual investment results — they depend on your return and volatility assumptions.
Annual return = exp(μ + σ × Z) − 1 where Z ~ N(0,1)
μ = ln(1 + mean return) − σ²/2, σ = volatility. Random draws use the Box-Muller transform. 85%+ is a common benchmark for 30-year retirements — for longer horizons (40+ years), many planners target 95%+. Default volatility (σ) is 12% — consistent with a balanced 60/40 portfolio. You can adjust this in the Inputs tab under Return Assumptions. Higher volatility widens the range of outcomes and lowers your success rate; lower volatility narrows it. Savings (HYSA) balances are NOT subject to market volatility in the simulations — they grow at your entered savings rate deterministically each year, since cash doesn't experience equity drawdowns. This matters for plans with significant cash positions: many calculators (including ours, prior to April 2026) accidentally subjected cash to market swings, distorting both upside and downside scenarios. Limitation: returns are modeled as independent year-to-year using your fixed mean and volatility assumptions. If future market conditions differ significantly from your inputs, outcomes will differ. Use the stress test and try lower return assumptions to understand your plan's sensitivity.
7
🤖 AI Plan Score
When you run a deep AI analysis, the success ring updates from a raw Monte Carlo percentage to a Plan Score — a holistic assessment that weighs your simulation results alongside factors the Monte Carlo doesn't model: sequence-of-returns vulnerability during your bridge period, Social Security timing risk, account concentration, and the sustainability of your spending assumptions.
Plan Score = f(MC success rate, sequence risk, SS timing risk, account mix, spending sustainability)
A plan with 95% Monte Carlo success but significant sequence-of-returns exposure during an 8-year bridge period may score 85 — not because the math changed, but because the AI identified risks the simulation masked. The score uses the same health labels as the AI analysis: Excellent, Strong, Solid, At Risk, Critical. If you haven't run a deep analysis, the ring shows the raw Monte Carlo success rate.
8
🏦 Account Withdrawal Ordering
Each year — both in the deterministic projection and in every Monte Carlo simulation — withdrawals follow tax-optimal order: any earmarked bridge reserve first (during the gap before SS starts), then savings (zero tax — already-taxed cash), then brokerage (long-term capital gains rates, stratified across 0/15/20% brackets), then pre-tax 401(k) as ordinary income, then HSA at age 65 or later (treated as ordinary income for non-medical use, like a traditional IRA), then Roth last at zero tax. Pre-65 HSA only funds qualified medical expenses (tax-free). As accounts deplete the tax burden shifts naturally — we model this rather than holding the Year 1 account mix fixed for 40 years. RMDs from your applicable start age (73 or 75 — see Section 5) are enforced as a 401(k) floor on top of voluntary draws.
When your RMD exceeds your spending need, we compute the marginal tax on the excess at your year-specific bracket position and reinvest the after-tax remainder into your brokerage account — preserving wealth that would otherwise be unnecessarily drawn down. This is the same approach used in professional planning software; most free calculators either skip RMDs entirely or treat the full RMD as consumption. After portfolio depletion, the projection shows what you can actually fund from remaining sources (guaranteed income), not your original goal — so the "spending" line reflects reality rather than wishful thinking.
Bridge reserve mechanics. The reserve can be funded from explicit cash savings (the "Cash reserve" input) OR earmarked from expected one-time inflows (home sale proceeds, inheritance, severance, other lump sums). Each source has its own toggle in Inputs — flipping the earmark routes that money to the bridge bucket instead of the general portfolio. The reserve grows at your high-yield savings rate (not equity returns), reflecting that it's parked in HYSA-style cash — protecting it from sequence-of-returns risk during the highest-risk withdrawal window. Bridge reserves not consumed during bridge years remain available as a last-resort source after all other buckets are exhausted (the engine tracks them through to end-of-plan rather than orphaning unused balance).
9
📉 Phased Spending (Retirement Smile)
Research shows retirees spend more in early retirement (active years), less in the middle (slower pace), and more again late in life (healthcare). Every plan models three distinct spending phases — Go-Go, Slow-Go, and No-Go — each running independently through every simulation. You can adjust each phase amount and the age at which the next phase begins.
Annual draw = phase spend × (1 + inflation)ᵗ per simulation year
New plans default to Go-Go (100% of monthlyGoal), Slow-Go (85%), and No-Go (75%) — fully customizable in the Inputs tab. Setting all three phases equal models flat spending across retirement. monthlyGoal is a derived weighted average across the three phases, not a fixed monthly draw.
10
📊 Return Rate & Inflation Assumptions
The model uses a single pre-retirement return rate and a single post-retirement return rate for your entire portfolio. This is a deliberate simplification — a full plan would model equity/bond allocation with correlated assets. For scenario modeling, the user controls these assumptions directly, which is more honest than hiding them inside an allocation model.
Healthcare costs inflate at the higher of your general inflation rate plus 2% or 5%, reflecting the historical premium of medical inflation over general CPI (typically 5-7%). This applies automatically — you don't need to enter an inflated healthcare estimate. If your actual healthcare spending will track general inflation more closely (some Medicare recipients), you can lower your monthly healthcare input directly. To test your plan's sensitivity to return assumptions, try running your scenario at 1–2% lower than your expected return.
11
🎯 Smart Moves & the Lens System
Smart Moves are concrete actions you can apply to your plan to improve specific outcomes — earning a part-time bridge income, converting to Roth, delaying Social Security, harvesting capital gains, and others. The Results tab organizes them into four lenses, each measuring impact in the currency that matters to that goal: Retire Earlier (how much younger can you stop?), Spend More (how much more can you sustain?), Leave a Legacy (how much larger is the median ending balance?), and Weather a Downturn (how much higher is the survival rate under stress?). Click any move to see its individual impact in the active lens; toggle a move on to apply it to your plan and see the live effect on every other metric.
Per-lens metric (each computed via a dedicated engine scan):
Retire Earlier: youngest age sustainable at 85% Monte Carlo success
Spend More: additional $/month sustainable at 85% MC success
Leave a Legacy: median end balance at life expectancy (today's dollars)
Weather a Downturn: Monte Carlo success rate under a 5-year bear market at retirement
Each move's impact is measured against your CURRENT plan (baseline), not against other selected moves. The "See if this combined plan works" button at the bottom of each lens runs a unified Monte Carlo with all selected moves applied together — capturing interaction effects (e.g., part-time bridge income + Roth conversion timing + delayed SS) that aren't visible from individual impact deltas summed. Some moves are lens-aware: spend-reduction moves are excluded from the Spend More lens (contradicts intent); retirement-deferral moves are excluded from Retire Earlier (same reason); gain harvesting only appears when bridge years exist. The AI Advisor can recommend specific moves in conversation and deep-link you to the relevant lens with the move pre-toggled — useful when you want to explore a specific strategy without manually scanning all four lenses.
12
🔗 Combined Bar — Interacting Pairs
When multiple moves are selected, independent moves sum their deterministic deltas. For known interacting pairs — bridge income + Roth conversion, retire later + SS delay — the combined bar runs 1,000 Monte Carlo simulations to capture the joint effect accurately, since these moves meaningfully affect each other.
Independent: combined pp = Σ(individual pp)
Interacting pairs: combined pp = MC(all selected) − base MC
Single-move selections always use the card delta directly. The combined bar updates live as you select and deselect moves.
13
📅 Earliest Retirement Age
Ignores your entered retirement age. Scans candidate ages 50–75, runs 750 Monte Carlo simulations at each, and returns the earliest age that hits 85% confidence. When moves are applied, each move's override is recomputed at the candidate age — so bridge sizing, SS windows, and other age-dependent overrides are accurate for each age tested, not pre-baked from your entered retirement age.
Find min age ∈ [50,75] where MC(inp with overrides at age) ≥ 85%
750 sims per age balances scan speed with accuracy. The 85% threshold is fixed as a common benchmark. For very long retirements (40+ years), a higher target like 90–95% is more appropriate.
14
🎯 SS Optimal Claim Age
Scans Social Security claim ages 62–70 and finds the age that best fits your specific scenario. For early retirement plans, near-term income is weighted more heavily because the bridge period cost is real. For normal retirement timing, lifetime benefit optimization dominates.
This is a heuristic that finds a good answer for most scenarios — not a full actuarial NPV analysis. A rigorous breakeven calculation would account for joint life expectancy and mortality tables for married couples. For high-stakes SS timing decisions, specialized tools or a CFP are worth consulting.
15
🔑 Roth Building Strategies
We model three lifetime phases of building Roth assets: direct Roth IRA contributions while working, the Roth conversion sweet spot during your bridge years, and backdoor + mega backdoor Roth for high earners locked out of direct contributions. Each phase has different rules, eligibility, and tax treatment.
Backdoor: $7.5k or $8.6k catch-up per spouse, gated on MAGI > $165k single / $246k married
Mega: user-supplied amount up to $46k/yr, plan-dependent
Conversion sweet spot: min(bracket headroom, IRMAA headroom, LTCG bracket-cliff headroom)
Backdoor and mega backdoor amounts are sourced from after-tax savings, so we deduct them from your brokerage contribution to avoid double-counting. The pro-rata rule applies if you have existing Traditional IRA balances — we surface this as an informational flag rather than modeling the tax cost precisely (would require knowing your trad IRA balance). When you set an annual Roth conversion amount, the engine routes that amount from 401k to Roth each bridge year (until the 401k is exhausted), computes the marginal income tax using your year-specific bracket position, and pays the tax from savings or brokerage. Conversions show up in your projection as a 401k → Roth movement and reduce future RMDs. The three phases address different lifetime windows: direct contributions during income years, conversions during low-income bridge years, and backdoor when you're income-gated out of direct contributions. LTCG bracket-cliff handling: when you have significant taxable brokerage drawing in the same year, the sweet spot calc also checks the LTCG 0%/15% bracket boundary — a conversion that pushes your ordinary income high enough to spill long-term capital gains from the 0% bracket into 15% is bracket-cliff territory, and the sweet spot conservatively backs off below that line. This prevents the sweet spot from recommending a conversion amount that triggers an unexpected 15% LTCG tax on your brokerage withdrawals in the same year.
Roth conversion ladder (FIRE framing). The FIRE community refers to a multi-year conversion sequence as a "ladder" — converting a deliberate amount each bridge year, then withdrawing seasoned conversions to fund pre-59½ retirement. Each year's conversion starts its own IRS 5-year clock for penalty-free principal access (separate from the contribution and earnings 5-year rules). The engine models the conversion side year-by-year — amount, tax impact, future-RMD reduction — and the sweet-spot calc above helps size each rung. The engine doesn't enforce the withdrawal-side 5-year clock, so anyone running a true ladder needs to track each conversion's seasoning themselves and pair the strategy with a bridge reserve to cover the first 5 years before any conversion is withdrawable.
16
📊 Cohort Benchmark Comparison
The Compare tab includes a Median Saver in Your Cohort benchmark — automatically matched to your age band, income group, and household type. The benchmark uses cohort-appropriate balance, contribution rate, and Social Security benefit, but mirrors YOUR retirement goal and structural assumptions — so the comparison answers "if I had what a median saver has, would my plan still work?" rather than "can a median saver fund a synthetic 75% replacement target?" (the latter produces 0% success for most cohorts and isn't useful).
Balance: SCF 2022 mean ÷ 2.0 (mean→median) × age scaling factor
Social Security: SSA hypothetical scaled worker mapped to per-spouse income
Goal & assumptions: mirrored from your plan
Household split: balance and contribution scaled by your earnings split (handles SAHM-rejoiner and single-earner-household patterns)
Sources: (1) Federal Reserve Board, "Changes in U.S. Family Finances from 2019 to 2022" (October 2023), Box 1 Table A — household-level mean retirement balances by income percentile group, working families ages 35-64 with retirement accounts (combined IRA + DC); (2) SSA Office of the Chief Actuary, Actuarial Note 2025.3 (June 2025) — hypothetical scaled worker AIMEs already account for real career arcs from the Continuous Work History Sample, with PIAs computed using 2024 bend points and the standard 90/32/15 progressive formula; (3) Center for Retirement Research at Boston College, Issue Brief 23-25 — published median 401(k)+IRA balances by age band for working households, used to calibrate the age-progression factors. The benchmark is anchored to published, household-level data — no per-individual synthesis. The mean→median conversion uses the ~2.0× ratio observed between SCF's published mean ($331k for 35-64 working savers) and CRR's published median ($204k for 55-64 working savers with a 401(k)).
17
🏠 Lump Sum Tax Handling
Home sales, inheritances, and other expected lump sums each get different tax treatment based on real-world IRS rules. The amount that lands in your brokerage is the after-tax net, not the gross.
Taxable gain = max(0, profit − Section 121 exclusion)
Home sale net = profit − (taxable gain × 15% federal LTCG)
− (taxable gain × your state rate)
Exclusion: $250,000 single / $500,000 married
Inheritance: arrives untaxed (stepped-up basis)
Other lump: routed gross — enter your expected after-tax amount
Home sale: We apply the IRS Section 121 primary residence exclusion ($250K single / $500K married) and tax the excess at 15% federal LTCG plus your entered state tax rate. The 15% federal rate is an approximation — your actual rate could be 0% (very low total income that year) or 20% (very high), but 15% is the standard rate for typical retirees. Most states (CA, NY, NJ, MA) tax LTCG at ordinary income rates, so applying your state rate to the gain is conservative and matches how most state tax codes work. Section 121 requires meeting the IRS ownership and use tests (lived in home as primary residence at least 2 of the last 5 years). If you live in a no-state-tax state (FL, TX, NV, WA), set state tax to 0% in your inputs and only the federal portion applies. Inheritance: Generally not subject to income tax under stepped-up basis rules — the recipient's cost basis is reset to the fair market value at the decedent's date of death, so liquidating immediately produces zero capital gain. We model inheritance as arriving untaxed. (Federal estate tax only applies to estates above $15M individual / $30M married in 2026; if you expect that, enter the after-estate-tax inheritance amount.) Other lump sum: Treated as a generic windfall routed at face value. If your expected lump is taxable (severance, deferred comp, lottery, business sale gain), enter the after-tax amount you expect to receive.
18
🌪️ Stress Test & Sequence-of-Returns Risk
The Stress Test tab models specific, named risks rather than abstract market volatility. Each scenario card runs 1,000 Monte Carlo simulations with one stated change applied to your plan — nothing hidden. The SS Cut card models exactly your SS reduction; it does not also lower your return assumption or shorten your retirement. The combined bar runs a single MC pass with all selected moves applied jointly, so interacting effects (bridge income + Roth conversion timing) are captured accurately rather than approximated as a sum.
Per scenario: MC(your inputs with one override) × 1,000 sims
Combined bar: MC(your inputs with all selected overrides) × 1,000 sims
Projection stress band: same engine as MC, with -8% mean returns for first 5 years
The stress band on the Projection chart shows what happens if you retire into a 5-year bear market (sequence-of-returns risk). It uses the same calculation engine as the deterministic projection and Monte Carlo — same per-account sequential drawdown, same tax math, same Roth conversion modeling — and only differs in applying a -8% mean return to the first 5 retirement years. For most people this is the most important stress test in the tool: a bad market in early retirement, when your portfolio is largest and you're drawing down, is far more dangerous than the same bad market 15 years in. Plans that look healthy under normal Monte Carlo can show dramatically lower survival rates under sequence-of-returns stress, especially if heavily weighted toward equities. If your stress band looks much worse than your Monte Carlo result, that is the model telling you something true about your specific plan — not a glitch. Common responses: hold more cash or short-term bonds at retirement, delay retirement by 1-2 years, reduce early-retirement spending, or build a larger bridge reserve.
19
🗺️ State Tax Modeling
Most calculators ask for a single state tax rate and apply it to every dollar of retirement income. State tax codes are far more varied than that. Pennsylvania doesn't tax retirement income at all. Hawaii excludes employer pensions but still taxes 401(k) withdrawals and Roth conversions. Six states tax Social Security at typical retirement incomes. Eight states apply preferential rates to long-term capital gains. We model 51 jurisdictions individually using their actual structure — when you pick your state in Inputs, the engine looks up the right rules and applies them year-by-year through your entire projection.
For each jurisdiction: { rate, taxesSS, taxesRetirementIncome, ltcgRate }
9 states with no income tax:
AK · FL · NH · NV · SD · TN · TX · WA · WY
14 states fully exclude retirement income (401k, IRA, pension):
AK · FL · IA (55+) · IL · MI · MS · NH · NV · PA · SD · TN · TX · WA · WY
1 state partially excludes (employer pensions only):
HI
6 states tax Social Security at typical retirement incomes:
CT · MN · MT · RI · UT · VT
8 states with preferential long-term capital gains rates:
AR · AZ · ND · NM · SC · VT · WA · WI
Verified against authoritative sources (Tax Foundation 2026, Kiplinger,
state revenue departments) as of 2026-05-07.
Concrete impact — a married couple with $1.5M nest egg, $7,500/mo goal, retiring at 65 ends with $8.05M in Florida (no state tax), $7.96M in Pennsylvania (excludes retirement income but taxes the small brokerage portion of withdrawals), $7.39M in New York (4.5% effective on retirement income), and $7.01M in Minnesota (6.09% rate plus Social Security taxation). Same plan, same dollars in, $1M+ different at life expectancy purely from where you live. Documented simplifications: progressive brackets are modeled as a single effective rate rather than the full graduated structure (this matters less in retirement, when most people fall into a narrow bracket band — the effective rate is calibrated to typical retirement-income levels); city and local taxes (NYC, San Francisco, Yonkers, Detroit) are not modeled, so urban residents in those cities should mentally add 1-3% to their effective rate; phased pension exclusions in Kentucky, New Jersey, New York, Virginia, and Maine are treated conservatively as "fully taxed" rather than partially excluded (so plans in those states are slightly under-projected, which biases toward caution); Washington's 7% capital gains tax above $278K is modeled at the LTCG rate but the threshold itself is not — most retirees won't cross it. Federal tax modeling is unchanged from Section 4. The state and federal pieces compose: federal first, then state on the relevant income depending on the state's rules. Source data is calibrated against the Tax Foundation's State Individual Income Tax Rates report, the Kiplinger State-by-State Guide to Taxes on Retirees, and each state's revenue department for the SS-taxation and pension-exclusion specifics.
20
🌾 Gain Harvesting (0% LTCG Bracket)
During your bridge years, if your taxable income drops low enough, long-term capital gains can be "harvested" at 0% federal tax — sell appreciated brokerage holdings and immediately rebuy them to reset your cost basis upward, locking in the gain at zero tax cost. This eliminates future tax on those harvested gains. The "Harvest gains" Smart Move enables this in your projection.
0% LTCG bracket cap (2026, inflation-adjusted forward each year):
Single: ~$49,450 of total taxable income (ordinary + LTCG combined)
Married: ~$98,900 of total taxable income (ordinary + LTCG combined)
Harvest amount per year = min(0% bracket headroom, unrealized brokerage gain)
The 0% LTCG bracket is one of the cleanest tax wins in retirement planning, but it's only available when your other taxable income is low — bridge years before Social Security starts. When the harvest move is enabled, the engine each year checks: (1) your projected taxable income for the year (post-deduction); (2) the remaining headroom under the 0% LTCG bracket cap; (3) your unrealized brokerage gain (balance − basis). Whatever fits gets harvested — basis steps up, no federal tax owed on the harvested portion. State tax may still apply depending on your state (most states tax LTCG at ordinary rates without a preferential 0% bracket; the eight that DO have preferential LTCG rates are honored). The move only fires when there's meaningful headroom and meaningful gain to harvest — it doesn't bother with sub-threshold amounts where the bookkeeping wouldn't change the projection. Pairs well with Roth conversions in the same bridge years: both strategies use the same low-income window to convert future tax burden into present-zero tax. The conversion sweet spot calculator (Section 15) and the harvest move are complementary — the sweet spot stops before pushing LTCG into the 15% bracket, leaving room for the harvest move to fill the rest of the 0% bracket.
21
🛡️ Guyton-Klinger Dynamic Spending Guardrails
An opt-in dynamic spending strategy that adjusts annual spending based on portfolio performance instead of using a fixed inflation-adjusted withdrawal. The strategy applies two rules: "capital preservation" cuts spending when your withdrawal rate climbs too high in a bad market; "prosperity boost" bumps spending when your rate drops too low after a good run. The academic research finds initial withdrawal rates of 5–5.5% historically sustained under this framework — meaningfully higher than the static 4% rule. Guardrails are mutually exclusive with phased spending (Go-Go / Slow-Go / No-Go): when enabled, phased values are paused and the engine uses your monthly goal × 12 as the year-1 baseline.
initialWR = monthlyGoal × 12 / nestEgg (auto-derived when you enable; user can override)
upper guard = initialWR × (1 + band/100)
lower guard = initialWR × (1 - band/100)
For each year N ≥ 2:
prevWR = previous year spending / investable portfolio at start of year
if prevWR > upper guard:
spend = previous year spending × (1 - adjust/100) // capital preservation
[no inflation adjustment applied this year]
else if prevWR < lower guard:
spend = previous year spending × (1 + adjust/100) × inflation_factor // prosperity boost
else:
spend = previous year spending × inflation_factor // baseline
Default parameters: band = ±20%, adjustment = ±10% (Guyton + Klinger 2006).
Year-1 spending is always the baseline (your monthly goal × 12 × inflation). Rules fire starting year 2 based on the prior year's actual withdrawal rate. The investable portfolio (for the WR denominator) excludes bridge funds (earmarked home-sale net, inheritances, other lumps) because those are pre-allocated for the bridge period and not part of the long-term investment portfolio the strategy is meant to govern. Strict interpretation of the paper applies the rules throughout retirement, including bridge years — even though bridge years naturally have a higher withdrawal rate. The paper's wide band (±20%) accommodates this, but expect more frequent rule triggers during bridge years for early retirees.
SMART MOVES CAP — when Guyton-Klinger is applied as a Smart Move (Spend More or Retire Earlier lens), the engine caps the headline at a 5.0% initial withdrawal rate. The Guyton + Klinger 2006 paper's empirical safe-start range is 4.5–5.5%; we anchor at the conservative end. Subsequent research (Pfau 2010, Kitces multiple) has questioned whether the upper end of the historical safe-start range remains defensible in lower-yield regimes — the conservative cap respects that critique. Without this cap, the finder algorithms could converge on inflated headlines that the engine technically sustains via aggressive preservation cuts but which misrepresent what the paper actually backs. For the Retire Earlier lens specifically, the engine additionally requires that the strategy's average lived spending across surviving Monte Carlo simulations meets or exceeds the user's stated monthly goal — a calculator design choice (not paper-derived) to ensure "you can retire at age X" implies "spending what you said you wanted to spend."
LIVED EXPERIENCE UNDER GUARDRAILS (Results card) — when Dynamic Spending is active, the Results tab surfaces a dedicated card showing what the strategy actually looks like across simulated retirements. Three-tier severity on the "Years below target" tile (default text under 30%, amber 30–50%, red ≥50%) gives an at-a-glance read on how often spending falls below your stated monthly goal. The "Worst-10% spending floor" tile surfaces a concrete dollar gap and percentage below your goal — making the floor's lived meaning legible at a glance. A bad-sim narrative above the spending trajectory chart names the actual cut-fire ages from your worst-lived-experience surviving simulation ("In a tough sequence, cuts fired at ages 61, 62, 63, 64, and 68 — 7 years below your stated goal, with 4 of those consecutive"). Picks the surviving sim with the most below-target years so you read a real lived-experience story, not a worst-case hypothetical.
Empirical research expects ~1–1.5pp success-rate uplift from the strategy on typical plans. The FIRE community references this strategy as "Guyton's guardrails" or "variable percentage withdrawal." Reference: Guyton, J. T., and Klinger, W. J. (2006). "Decision Rules and Maximum Initial Withdrawal Rates." Journal of Financial Planning. See also Pfau (2010) "Safe Savings Rates" and Kitces (multiple articles) for the post-2008 lower-yield critique.
RESEARCH-COMMUNITY CRITIQUE (calculator's honest framing) — the Guyton + Klinger 2006 paper calibrated against historical data through ~2005, when stock valuations (Shiller's CAPE / cyclically-adjusted P/E ratio) and bond yields sat in a meaningfully different regime from today's market. Subsequent research has raised valuation-based concerns about whether those historical safe-start rates transfer cleanly to high-CAPE starting environments: Pfau (2010, 2012, multiple) finds that high-CAPE start years materially compress safe withdrawal rates across historical replays; Karsten Jeske's "Big ERN" Safe Withdrawal Rate series (2017+) extends the analysis to longer (40–60 year) retirements common in FIRE planning and concludes the historical 4–5% rules-of-thumb may overstate safety for early-retiree windows. The 5.0% Smart Moves cap respects this critique by anchoring to the conservative end of the 2006 paper's 4.5–5.5% range. Users with sub-3.5% effective withdrawal rates have substantial buffer regardless of this debate; users at 4–5% are operating in the contested window where the GK strategy's historical defensibility is genuinely debated in current academic literature. We surface the rules and the lived-experience tradeoff; we are not committing a position on whether GK guardrails will provide the same 1–1.5pp uplift forward as they did historically.
WHAT THE CALCULATOR DOES AND DOESN'T DO WITH CAPE — your specific start-year CAPE (Shiller's cyclically-adjusted P/E ratio) is the empirical variable the Pfau + Big ERN bodies of work argue determines whether the 2006 paper's range is conservative or aggressive at your retirement year. The engine does not read your start-year CAPE and does not fold it into any recommendation — the 2006 paper's empirical 4.5–5.5% range is the calibration; the 5.0% cap is the conservative-end anchor that hedges against this exact uncertainty. We deliberately don't take a position on whether today is a high-CAPE environment because that reading changes year-over-year, requires picking + citing a specific CAPE source, and the conservative-end anchor's defensibility doesn't depend on the answer. If you want to interpret the cap against today's valuation environment, the cited Pfau and Big ERN work is the place to start that reading.
22
🏝️ Coast FIRE
An opt-in workflow for users who plan to save aggressively until their existing balances will compound to their retirement target — then stop contributing and "coast" (keep working but with no new savings going in) the rest of the way to traditional retirement. The math is the same compound-growth formula running all retirement projections; the workflow change is splitting the future-value calculation into two phases: a contribution phase (current age → coast-end age), then a growth-only phase (coast-end age → retirement age).
Two-phase future value at retirement:
contribYears = max(0, contributionEndAge − currentAge)
coastYears = max(0, retirementAge − contributionEndAge)
// Phase 1: balance + annual contribution (with catch-up logic if applicable)
balanceAtCoastStart = fvWithCatchup(
currentBalance, baseContrib, catchupContrib, return,
currentAge, contributionEndAge, superCatchupFlag
)
// Phase 2: growth-only compound from coast-end to retirement
finalBalance = balanceAtCoastStart × (1 + return)^coastYears
Applied independently to each retirement account (401(k), Roth IRA, brokerage, HSA) for the user and the spouse. Sentinel: contributionEndAge = 0 means no Coast — engine reduces to standard fvWithCatchup with the full contribution window.
When Coast FIRE is active for a party, the engine stops ALL retirement contributions for that party at the coast-end age — 401(k), Roth IRA, brokerage, HSA, and the employer match (employer match is contribution-linked, so it ends when contributions end). Catch-up contributions still apply DURING the contribution window if the party is 50+ (the wrapper passes the truncated window to fvWithCatchup, which handles catch-up logic internally). The defaults are zero — Coast is opt-in. Most users will keep contributionEndAge = 0 (and spouseContributionEndAge = 0), which preserves the conventional "contribute right up to retirement" behavior with byte-identical engine output. Out-of-range values are handled gracefully: a coast-end age before currentAge collapses to "no contributions from now" (just compound existing balances); a coast-end age at or past retirementAge reduces to sentinel behavior. SMART MOVES INTERACTION — when Coast is active, the Smart Moves workshop filters contribution-boost moves (max 401(k), max Roth, employer match, catch-up routing, backdoor Roth, mega backdoor Roth, HSA contributions, and spouse equivalents) from the applicable lists across all four lenses. They don't make sense as recommendations when the user has explicitly opted to stop contributing. Non-contribution moves (SS timing, Roth conversions, spending discipline, gain harvesting) still apply normally. WHAT THIS DOESN'T MODEL — Coast FIRE changes what happens to your retirement accounts, not your income or your spending. The engine assumes you're still working through retirement age (your wages cover expenses); it just doesn't direct any portion of those wages into retirement accounts after the coast-end age. If your real-world Coast involves a meaningful salary cut, edit yourSalary directly to reflect it. WHY THIS WORKFLOW — Coast FIRE is widely discussed in the FIRE community as a less-extreme version of FIRE: instead of front-loading enough savings to retire at 45, you front-load enough to remove savings pressure by 45 and let compound growth carry you to 60–65. The workload change matters more than the timeline change — Coast lets people downshift to lower-paying, more enjoyable work without retirement-math anxiety.
23
☕ Barista FIRE — Post-Retirement Wage Income
An input for modeling part-time work income during the retirement window — the FIRE variant where retiring from a career doesn't mean retiring from all wage income. You enter an annual wage amount and the age range it covers (start age → end age, both inside your retirement window). During those years, the wage reduces the portfolio withdrawal need and stacks on top of any other ordinary income for tax purposes.
The interactions that matter for FIRE planning. Tax bracket. Barista wage is ordinary income and stacks with portfolio draws and SS — a high enough wage can push you into a higher bracket and squeeze the Roth conversion sweet spot (Section 15) during the same years. Social Security earnings test. If you claim SS before your Full Retirement Age and your barista wage exceeds the annual earnings limit (~$22,320 in 2025, inflation-adjusted forward), the SSA reduces your benefit $1 for every $2 over the limit. If this applies to your plan, model the reduced benefit by lowering the "SS Benefit Confidence" slider accordingly. IRMAA. Barista wages count toward MAGI when 65+, so they can push you across an IRMAA tier and add Medicare premium surcharges (Section 4 covers the bracket mechanics). ACA subsidies. Pre-65, MAGI determines marketplace subsidy eligibility — a barista wage that crosses the cliff can substantially raise out-of-pocket healthcare cost. What this doesn't model. FICA tax on the wage itself (~7.65% W-2 / 15.3% self-employed) is not subtracted from the wage you enter — use your expected after-FICA take-home if precision matters. Employer 401(k) match during barista years isn't separately modeled; if your barista job offers a match, fold it into your savings rate. Why this workflow. The FIRE community widely treats Barista FIRE as a hedge — partial wage income reduces sequence-of-returns risk in the early retirement window and lets people retire from their career years earlier than full-FIRE math requires.
24
🏥 Healthcare Bridge — Pre-Medicare Cost Modeling
The window between retirement and Medicare eligibility (typically retirement age → 65) is one of the most under-modeled costs in early retirement. Employer coverage ends, COBRA expires after 18 months, and an ACA marketplace plan becomes the realistic option for most households — at premiums driven by household MAGI relative to the federal poverty level. The engine treats this bridge as a first-class input rather than rolling it into general spending, because the dollar exposure is large ($15k–$30k+/yr per adult is typical for full-cost marketplace plans without subsidies) and the MAGI interaction creates real planning leverage that disappears once Medicare starts.
Pre-Medicare healthcare cost per year:
inflated_cost = monthly_healthcare_input × 12 × max(general_inflation + 2%, 5%)^yearsFromToday
(inflated from today through retirement, not just one year forward — fixed May 2026)
Post-65 IRMAA surcharge (per Medicare-eligible household member):
Triggered when MAGI > tier_threshold; 5 tiers in 2026
Tier-1 thresholds: $109K single / $218K MFJ
Tier-5 thresholds: $500K single / $750K MFJ
Surcharges: ~$1,000 to ~$6,950/yr per person, on top of base Medicare premium
Thresholds inflate at CPI
ACA premium-credit cliffs are modeled per state, refreshed annually with IRS / CMS data.
The mechanics that matter across the bridge. Pre-65 cost input. Monthly healthcare goes into Inputs as a dollar figure; the engine inflates it year-over-year at the higher of general inflation + 2% or 5% (medical inflation has historically run 5–7%, well above CPI). The runway from today to retirement is fully inflated, not just one year forward — pre-fix (May 2026), plans with long timelines under-stated pre-Medicare cost by 50%+. ACA subsidy and the cliff. ACA marketplace premium tax credits scale with household MAGI; the engine tracks the per-state cliff thresholds and refreshes them annually. The Cliff Proximity Gauge on the Roth Strategies card shows live MAGI position vs. the ACA cliff and the five IRMAA tiers — so you can see whether a Roth conversion or gain-harvest in a given bridge year pushes you across. IRMAA at 65+. Once a household member is Medicare-eligible, MAGI above the tier-1 threshold triggers Part B + Part D surcharges, applied per person crossing the threshold (Section 4 covers the tier-by-tier mechanics; thresholds inflate at CPI to track real-world bracket creep). The bridge planning question. Which bracket-management strategies — Roth conversions (Section 15), gain harvesting (Section 20) — make sense in the bridge years? Both lower future RMDs and IRMAA exposure, but both raise current MAGI and can shrink ACA subsidies if you're still pre-65. The Cliff Proximity Gauge exists for exactly this tradeoff. What this doesn't model. COBRA (the 18-month employer-plan continuation) isn't a distinct path — if you plan to use COBRA before the marketplace, enter the COBRA premium for those years. State Medicaid expansion variations (eligibility at low MAGI differs by state) aren't modeled. Long-term care premiums are modeled separately under Inputs → Life Events → Long-Term Care, not in this healthcare-bridge mechanic. Medigap and Part D plan selection aren't optimized — the IRMAA surcharge applies on top of whatever baseline Medicare premium you've factored into your monthly input. Why this matters. Pre-65 healthcare is one of the most-cited reasons FIRE-leaning households delay retirement, and the most mis-estimated line item in early-retirement budgets. Modeling it explicitly — with the ACA cliff and IRMAA cliff visible together — turns "is healthcare going to wreck my plan?" into a question the math can actually answer.
25
🕰️ Historical Back-Test
Replays your plan against the ACTUAL year-by-year market returns and inflation from a past retirement-start year, drawn from Robert Shiller's canonical 1928–2022 dataset (S&P 500 nominal total return, 10-year Treasury nominal total return, CPI-U inflation). This is the Bengen (1994) and Trinity Study (1998) methodology that originated modern withdrawal-rate research — decades before stochastic Monte Carlo was widely available. Surfaced two ways on the Stress Test tab: a Historical Back-Test card (one of five named eras, cohort-survival ring) and the Historical Robustness Workshop (full-range exploration, every eligible start year + stock allocation).
Per retirement year t (0 → yearsInRet):
marketRet[t] = stockAllocPct × stockNominal[startYear + t]
+ (1 − stockAllocPct) × bondNominal[startYear + t]
inflAt[t] = cumulative product of (1 + CPI[startYear + i]) for i = 0..t−1
state = buildInitState(inp, calcRetirement(inp))
for t in 0..yearsInRet:
simYearMC(state, sim, inp, c, t, marketRet[t], null, inflAt[t])
// Deterministic — same plan + same start year → same outcome
survived = !state.depleted
Cohort SR for an era's rolling window W of start years:
cohortSR = (count of starts in W where survived) / |W| × 100
COHORT SR vs MONTE CARLO SR — Both express probability on the 0–100 scale, but they measure different sample spaces. Monte Carlo SR is the fraction of 1,000 stochastic-sample futures where the plan succeeds (random draws from a normal distribution). Cohort SR is the fraction of historical start-year cohorts where the plan would have survived. Neither is "more correct." Monte Carlo explores tails that never historically occurred (its left tail is wider than history); historical replay captures mean reversion that the MC model doesn't have access to. For typical plans (3–4% effective WR, 25-yr retirement) both methods produce similar survival rates. For thin-margin plans (4%+ WR, 30+ yr retirement) historical replay is where dramatic divergences appear: Bengen famously showed that the 1966–1973 cohort broke at 5% WR while later cohorts survived at 6%. METHODOLOGY COMPLETENESS — Investment buckets (401(k), Roth, Brokerage, HSA) grow at the historical year's actual market return. Spending goal, Social Security, pensions with COLA all scale via historical CPI-U. Tax brackets (IRMAA, LTCG) inflate via the historical sequence × pre-retirement constant rate. HYSA + Bridge Cash buckets grow at the historical year's inflation rate (real return ~0% — matches Shiller's long-run T-bill empirical regularity; floored at 0% nominal to prevent shrinkage during deflation). Slightly conservative in eras where T-bills genuinely paid above inflation (e.g., 1980s) but unbiased on average. This closes the methodology seam that previously existed where cash buckets grew at the user's modern HYSA assumption regardless of era. ERA_WINDOWS CURATION — Five canonical eras, each a rolling window bracketing the named stress event with starts on either side: Great Depression 1929 (window 1928–1933, 6 starts), 1966 Bear Market (1965–1969, 5 starts), Stagflation 1973 (1969–1976, 8 starts — the canonical FIRE break window), Dot-Com Bust 2000 (1999–2003, 5 starts), Financial Crisis 2008 (2007–2010, 4 starts). References: Bengen, W. P. (1994). "Determining Withdrawal Rates Using Historical Data." Journal of Financial Planning. Cooley, P. L., Hubbard, C. M., & Walz, D. T. (1998). "Retirement Spending: Choosing a Sustainable Withdrawal Rate" (the Trinity Study). Shiller dataset: http://www.econ.yale.edu/~shiller/data/ie_data.xls.
26
📋 Future Expenses
Your monthly goal handles ongoing living costs — housing, food, transport, healthcare, leisure. Future Expenses is a separate list for the lumpier outflows that arrive at specific ages: a daughter's wedding at 68, four years of college help from 58, a kitchen remodel at 75, a car loan's payments to 72. You enter each in today's dollars and the engine inflates it to each year it fires — or mark it "Fixed amount" and the typed figure is charged exactly, never inflated: the right treatment for a contract price (a loan payment, a lease). An entry can be one-time or repeat — every year through a chosen age (a payment: tuition, a loan), or every few years (a repeating lump sum: a new car every 7 years, a roof every 15). Up to 15 entries. Ongoing lifestyle costs still belong in your monthly goal.
Per expense entry e = {label, amount, age}:
if e.age ∈ [currentAge, lifeExpectancy]:
yearsToExpense = e.age − currentAge
inflatedAmount = e.amount × (1 + inflationRate/100)^yearsToExpense
cascade: savings → brokerage (via _drawBrok) → Roth → 401(k)
else: silently skip
Multiple entries at the same age are processed in array order. Out-of-range entries (age < currentAge or > lifeExpectancy) are skipped without crashing.
The cascade reuses the same withdrawal order as the home purchase deduction (§17 Lump Sum Tax Handling) — savings first (no tax friction), then brokerage with basis-adjusted gain tracking (the engine applies the same _drawBrok cascade helper used everywhere else), then Roth (no tax), then 401(k). This isn't tax-perfect for every individual situation (tax on the 401(k) portion would be assessed in the year of draw at your marginal rate), but it produces the structurally correct cash flow and follows the same conservative ordering every other lump-sum deduction uses.
UI-MANAGED ONLY — Future Expenses is the only DEFAULTS field in the app that the AI Advisor explicitly cannot modify via APPLY. The AI has full READ access to your list (it can reference "your $30k wedding at 68" in narrative) but cannot add, edit, or remove entries on your behalf. The list is yours: you stay in control of what counts as a planned one-time expense and what doesn't. This is enforced two ways: server-side (futureExpenses is intentionally excluded from the AI's fields[] catalog in the chat prompt) and client-side (the applyToPlan central pipeline drops any futureExpenses field from inbound APPLY changes before committing). If you want the AI's help thinking about a planned expense, ask it conversationally; the AI will discuss the trade-off and point you to the Future Expenses panel in Inputs → Life Events to add the entry yourself.
WHAT THIS DOESN'T MODEL — Ongoing LIFESTYLE costs (annual vacations, ongoing parental support, predictable medical co-pays) still belong in your monthly goal — use spending phases for those. But a FIXED-TERM recurring cost (college tuition over four years) is a PAYMENT — entered once as an amount per year with a last-payment age — and a purchase that comes back (a new car every 7 years) is a REPEATING LUMP SUM, entered once with its gap; the engine draws each occurrence in the year it fires, priced in that year's dollars. Expenses that fund through specific accounts (HSA-only medical, 529-routed tuition) are simplified to the standard cascade; the engine does not pre-allocate from a designated source. Since August 2026 the 401(k) portion of a draw is charged its real tax in the year of the draw — the engine withdraws enough extra to cover the tax bill itself. The list cap is 15 entries (raised from 10 in August 2026); that's an architectural limit, not a research recommendation — most retirement plans don't need more than 5–10 entries to capture material outflows.
HOW TO USE IT WELL — Estimate in today's dollars; let the engine handle inflation. Be conservative on amount: $35k for a wedding rather than $25k unless you really have it dialed in. Be specific on age: "sometime in my 70s" isn't actionable — pick a specific year. Run Monte Carlo before and after adding expenses to see how your plan absorbs them — if a $30k expense at 70 visibly drops your success rate, that's the model telling you the expense is straining your plan and you may want to budget for it in advance (more savings now, smaller monthly goal in retirement, or accepting the trade-off honestly).
27
🎁 Qualified Charitable Distribution (QCD)
A Qualified Charitable Distribution is a direct gift from a Traditional IRA to a qualified charity, allowed once you're 70½. Unlike a normal charitable deduction, a QCD is EXCLUDED from your income entirely — it never appears as taxable income in the first place. It counts toward your Required Minimum Distribution tax-free, and because it keeps your income (and therefore your MAGI) lower, less of your Social Security is taxed and you stay further from the Medicare IRMAA surcharge cliffs. The honest trade-off: the donated principal leaves your estate, so it lowers your legacy. Two inputs in the Tax section — a fixed annual amount, or “give my entire RMD to charity” (which tracks the RMD as it grows year over year).
Per year, computed before the RMD step and the IRMAA MAGI check:
target = qcdGiveFullRmd ? thisYearRMD : (qcdAnnual × inflation_factor) // qcdAnnual in today's $
eligible = age ≥ 70 AND (qcdGiveFullRmd ? thisYearRMD > 0 : qcdAnnual > 0)
qcd = eligible ? min(target, QCD_LIMIT × inflation_factor, IRA balance) : 0
One value feeds three channels:
(1) IRMAA MAGI proxy: magiRMD = max(0, projectedRMD − qcd) // QCD-satisfied RMD excluded
(2) RMD step (73+): IRA balance −= qcd // to charity, tax-free, leaves estate
taxableRMD = min(IRA balance, max(0, RMD − qcd)) // only the unsatisfied RMD is taxed
(3) Legacy: the IRA bucket is reduced by qcd
QCD_LIMIT = $111,000 (2026, IRS Notice 2025-67, today's $, indexed forward each year)
THE HEADLINE CHANNEL IS IRMAA — a normal RMD inflates your MAGI; a QCD-satisfied RMD does not. For a retiree sitting just over an IRMAA tier threshold, redirecting the RMD to charity can drop MAGI back under the cliff and erase the Medicare surcharge for both spouses. The SS-taxability and federal-bracket savings fall out automatically as the taxable RMD shrinks. IRA-ONLY, AGAINST A POOLED BUCKET — a QCD must come from an IRA, not a 401(k). The engine pools all pre-tax balances (401(k) + Traditional IRA) into a single bucket, so it models the QCD against that pooled pre-tax balance; if your pre-tax money is mostly in a 401(k), roll the portion you intend to give into an IRA first (a standard tax-free rollover) so the real-world mechanics match the model. USER-ONLY (v1) — the QCD applies to your own pre-tax bucket; because the pooled bucket cannot attribute whose IRA a dollar came from, a separate spouse QCD is not modeled in this version. WHAT THIS DOESN'T MODEL — the 70½ half-year is applied from age 70 (whole-year engine). Full-RMD mode is the precise, correctly-timed path (it auto-starts at your RMD age); a fixed annual QCD applies from 70 regardless. State tax follows your state's general retirement-income rules. BYTE-IDENTICAL WHEN OFF — with no QCD set, every QCD computation reduces to zero, so plans without a QCD are unchanged. References: IRS Publication 590-B; Internal Revenue Code §408(d)(8).
28
⚠️ Early-Withdrawal Penalty (Before 59½)
Withdrawals from pre-tax retirement accounts (401(k), Traditional IRA) before age 59½ normally incur a 10% federal early-withdrawal penalty on top of ordinary income tax. The engine applies this penalty by default. Because the engine draws taxable accounts first (bridge reserve → savings → brokerage → 401(k)/IRA → Roth), only plans that exhaust their taxable accounts before 59½ ever reach the penalized pre-tax bucket — in practice, marginal early-retirement (FIRE) plans. A toggle in the Tax section (“penalty-free access before 59½”) turns the penalty off for users with a qualified early-access strategy: a 72(t)/SEPP schedule, the Rule of 55, or a Roth conversion ladder.
Per year, after the 401(k)/IRA draw is determined:
earlyPenalty = (!earlyAccessStrategy AND age < 59.5 AND from401k > 0) ? 0.10 × from401k : 0
pre-tax balance −= earlyPenalty // withdraw extra to pay the IRS → lowers end balance
Integer age ⇒ age < 59.5 is equivalent to age ≤ 59.
Roth is NOT penalized (drawn last; contributions penalty-free).
HSA is separately age-gated; RMDs are 73+, so they never overlap the penalty window.
DEFAULT-ON IS THE HONEST FLOOR — modeling the penalty by default means an aggressive early-retirement plan shows its true cost: a 50-year-old draining a 401(k) to bridge to 59½ loses 10% of every pre-tax dollar to the IRS. Turning the toggle on is the user asserting they have a real penalty-free mechanism in place. WHO ACTUALLY HITS IT — most plans don't, because the engine spends taxable money first; the penalty only bites when taxable + Roth-contribution money run out before 59½. That's exactly the thin-margin FIRE population for whom the 10% matters most, and the population most likely to have a 72(t) or Rule-of-55 in place — hence the toggle. WHAT THIS DOESN'T MODEL — the penalty on Roth EARNINGS withdrawn before 59½ (would require Roth cost-basis tracking the engine doesn't carry; Roth is drawn last anyway); per-spouse age within the combined household pre-tax bucket (uses the primary age); state-level early-withdrawal penalties (federal 10% only). The toggle trusts your assertion — it does not validate that you've set up a compliant 72(t), satisfied the Rule of 55's separation requirement, or seasoned a ladder five years. Reference: Internal Revenue Code §72(t).
29
💼 Social Security Earnings Test (Claiming Early While Working)
If you claim Social Security before your Full Retirement Age (67 for anyone born in 1960 or later) and you keep earning a paycheck, the SSA applies an “earnings test”: it withholds $1 of benefits for every $2 you earn above an annual limit (~$24,480 today). The withheld benefits aren't lost — at your FRA the SSA recomputes your benefit upward to credit back the withheld months, so over a normal lifespan it's roughly actuarially neutral. The real cost is timing: less SS during the early working years (when your portfolio is largest and sequence risk is highest), more later. It's the classic Barista FIRE surprise. The engine applies this automatically — there's no toggle; it triggers whenever you claim before FRA and have part-time income above the limit.
SS_EARNINGS_LIMIT = $24,480 (today's $, indexed forward — alongside FRA = 67)
Modeled as an EFFECTIVE CLAIM AGE — working above the limit while claiming early ≈ delaying the claim:
workingYrsPreFRA = max(0, min(FRA, partTimeUntilAge) − ssClaimAge)
withheldPerYr = 0.5 × max(0, 12 × partTimeMonthly − SS_EARNINGS_LIMIT) // $1 per $2 over the limit
monthsWithheld/yr = min(12, withheldPerYr ÷ monthly benefit at the early claim age)
effectiveClaim = min(FRA, ssClaimAge + workingYrsPreFRA × monthsWithheld/yr ÷ 12)
ssMonthly = adjustedSSBenefit(ssFRABenefit, effectiveClaim) // recomputed at the later age
ssBridgeYrs = max(0, effectiveClaim − retirementAge) // longer bridge to fund from the portfolio
ONE ADJUSTMENT, TWO EFFECTS — pushing the effective claim age later captures both halves in a single number: a LONGER BRIDGE (SS starts later → your portfolio funds more of the early working years) AND a HIGHER RESTORED BENEFIT (less early-claim reduction once it starts). Because the headline numbers, the year-by-year projection, and every Monte Carlo path read the same effective claim age, the three surfaces stay perfectly consistent. INFLATION-INVARIANT — earnings and the limit inflate together, so the withheld fraction doesn't depend on the inflation assumption; the calculation is done in today's dollars. INDIVIDUAL TEST — per-person, on your own SS based on your part-time income only; there's no spouse part-time-income field. WHAT THIS DOESN'T MODEL — partial withholding is modeled as deferral (a slight conservative bias); the higher special $1-per-$3 limit in the calendar year you reach FRA is not modeled (standard under-FRA $1-per-$2 throughout); only EARNED income counts (pensions, account withdrawals, investment income don't trigger it). When it applies, a note under your SS claim age shows the estimated annual withholding and your effective claim age. Reference: Social Security Administration, Retirement Earnings Test.
30
🧭 Planning Horizon (Longevity Risk)
How long should your money last? Most people plan to their life expectancy — but that's a coin flip: by definition, half of people outlive it. Planning to the average means a 50% chance of running short in your final years, the single most avoidable retirement mistake. The Planning Horizon Workshop suggests a horizon you're unlikely to outlive by reading the actual survival curve, not the average — drawn from the Social Security Administration's 2022 Period Life Table (the same actuarial data Social Security uses). For couples it plans to the LAST survivor, which is meaningfully longer than either spouse alone.
survival(current → target, sex) = lx(target) ÷ lx(current) // conditional survival from the SSA cohort table
horizon(p) = the oldest age where survival(current → age) ≥ (1 − p) // e.g. p = 0.85 → only 15% are still alive
Couples (last survivor):
jointSurvival(age) = 1 − (1 − survival_you(age)) × (1 − survival_spouse(age))
household horizon(p) = the oldest age where jointSurvival(age) ≥ (1 − p)
PLAN TO THE TAIL — mean life expectancy is the wrong target: it's a 50/50 bet, and outliving your money is far worse than dying with a cushion. A percentile slider lets you choose your own margin (the default plans to roughly the 85th percentile — only about a 1-in-7 chance of outliving it); the mean is always shown alongside as the coin-flip for contrast. Optionally provide sex at birth for a sharper read — it's a workshop-only choice, never saved. FREE — the workshop and a gentle plan-health nudge (shown when your set life expectancy carries a real chance of being outlived) are free, not a paid feature. CAVEATS — the 2022 period table slightly understates future longevity (a conservative direction), and it's population-average, age + sex only: affluent, healthy, or long-lived-family profiles run longer, so lean toward the cautious end. Reference: Social Security Administration, Period Life Table, 2022 (2025 Trustees Report), table 4.C6.
31
🔎 Deep Search (Searched Optimizers)
The free calculator answers what your plan does. Deep Search answers which strategy is best — it puts the same simulation engine to work, running hundreds of scenarios against your actual plan to find the strongest choice for one decision at a time, judged on your real outcome — median legacy in today's dollars for the legacy-seeking tools, success rate for the risk-side scan. Ten searched optimizers: the couple's Social Security claim (all 81 combinations, survivor benefit included), the Bridge Optimizer (your coordinated bridge-years plan — flat and year-shaped Roth conversion ladders, each tested with and without 0% gain harvesting, ACA subsidies and IRMAA cliffs priced into every candidate, and a materiality floor so a noise-level win never dethrones your current plan), what your plan hinges on (a tornado ranking which assumption you're most fragile to), solve-for-your-goal (name a target like 95% success and it works backward to the exact lever value that hits it), Spending Shape (the permission-to-spend search — the most you can spend, especially in your go-go years, while your odds hold a floor you choose and your legacy stays above what you want left, which can be zero), the Combined Risk Scan (the risk-side sibling — it stacks validated pairs of the Stress Test tab's one-at-a-time risks, reports honestly whether any combination hits harder together than the two cards predict separately, and when one does, prices the defense — dynamic spending guardrails — against your own worst pair), Employment Pause (how long you could stop working and still land the plan), Your Next Home (the whole housing timeline priced — sell, buy, rent, or finance), Spending Guardrails (the portfolio lines where you would trim or could raise), and Deep Scan (the one-click capstone that runs the legacy-seeking optimizers together for the true combined payoff — deliberately excluding Spending Shape, because spending more is a values trade, not a free win). It's the searched optimization the $5,000–$10,000 advisor tools charge for, opt-in behind a Run button in the Optimize tab, part of Navigator.
Each tool searches the same seeded engine, scored on your real outcome:
Couples SS argmax over all 81 (your claim, spouse's claim) pairs → median legacy
Bridge Opt argmax over conversion ladders × harvesting on/off (flat + year-shaped, cliff-priced) → median legacy
Plan Hinges rank each assumption by | metric(better) − metric(worse) | (tornado)
Solve-for-Goal grid a lever, interpolate to where metric(lever) = your target
Spending Shape max spending s.t. success ≥ your floor AND median legacy ≥ what you want left
Deep Scan apply every legacy-seeking winner to one plan → ONE combined Monte Carlo → the true joint gain
SEARCHED ON YOUR REAL PLAN — every candidate is a full run of the same Monte Carlo engine behind your headline numbers, so it reflects your actual taxes, bridge years, and sequence risk, not a rule of thumb. THE MOVES INTERACT — Deep Scan runs one combined simulation instead of adding up the parts, because delaying Social Security reshapes the room for Roth conversions; the true joint payoff isn't the sum. MONTE CARLO NOISE — under simulation variance, sub-dollar precision is illusory, so Solve-for-Goal grids and interpolates; searches run at a lighter sim count, then the winner is re-scored at the full display count. NO ENGINE CHANGE — Deep Search re-applies inputs the engine already reads, so it never alters how your plan is computed or your saved AI Plan Score. OPT-IN AND PAID — each optimizer runs only when you press Run (Couples SS alone is 81 full plans); it's part of Navigator. Reference: RetirementScenario.com, Optimize tab.
🌱 Contribution Escalation (Ramping Savings)
Most calculators assume you contribute the same dollar amount every year until retirement — but real savers raise their contributions as their income grows. Contribution escalation models that: pick any account (401(k), Roth, savings, brokerage, HSA — for you or your spouse) and set it to climb each year, either by a percentage that tracks your raises or a flat dollar step. Tax-advantaged accounts ramp up to the IRS limit, then hold. The result is a more realistic accumulation path — and a "Building your nest egg" table on the Projection tab that shows, year by year, how your contributions and growth compound into your retirement-day nest egg. There's also a free Smart Move that recommends ramping your 401(k) for savers who can't max out today but have the runway to grow into it.
Percent mode: contribution(year t) = start × (1 + rate)^t // compounds, tracking raises
Dollar mode: contribution(year t) = start + step × t // a flat annual increase
Capped (401k, Roth): min(contribution, IRS limit) // climb to the cap, then hold
Nest egg builds year by year: balance = (balance + contribution) × (1 + return)
RAMPS TO THE CAP, THEN HOLDS — for 401(k) and Roth, the yearly increase stops at the IRS contribution limit; it never assumes you'd contribute above the legal maximum. BOTH SPOUSES — each account, for you and your spouse, escalates independently. BYTE-IDENTICAL WHEN OFF — a plan with no escalation set computes exactly as before; the ramp only changes the math when you turn it on, so your saved AI Plan Score is unaffected until then. THE ACCUMULATION TABLE RECONCILES — every row reads Start + Contributions + Growth = End, and the final row equals the nest egg your retirement projection starts from, to the dollar, so you can validate it yourself. A MODELING ASSUMPTION, NOT A COMMITMENT — you tune it or turn it off anytime; real-world raises aren't guaranteed, so model conservatively. Reference: RetirementScenario.com, Inputs tab.
A knowledgeable friend, not a sales pitch. Every projection is grounded in tested math; every AI response is grounded in authoritative sources. Here's exactly how that's enforced — pillar by pillar, gate by gate, eval by eval.
32
Pre-push gates
99
AI eval entries
46
Real personas
45
Glossary entries
$0
Drift tolerance
The five pillars
What we promise about your retirement numbers
Each pillar is a promise about how this platform's accuracy is maintained. Together they describe the trust posture from end to end — math engine through AI Advisor.
🧪 Reproducibility
Every change is tested. The pipeline runs automatically on every push — the tier that protects your numbers before the release goes out, the rest within minutes of it. We don't ship around failing tests; the test gets fixed or the change comes back out.
Math is exercised against 32 realistic retirement profiles — early retirees, FIRE plans, Coast FIRE, household + single, multi-state edge cases, pension-heavy. Every profile re-runs when the engine changes.
Your projection won't change without us telling you why. Every code change is locked against a regression gate that fails on any output drift. When fidelity does change — a tax law update, a bug fix — it's documented in the changelog.
What you run in your browser is verified against the version we test in development. Bundle minification can silently strip dead code; this gate catches that failure mode.
The AI Advisor you talk to is verified against a 99-entry canonical question set covering navigation, card references, deterministic field citations, recommendation shape, out-of-scope handling, and compositional patterns. By policy, the AI never recommends specific products, services, or providers — it educates and grounds in authoritative sources (IRS, SSA, Bengen / Trinity / Pfau research). Every shipped fix to AI grounding gets a permanent regression test, so when something slips it can't slip the same way twice.
Seven methodological commitments that distinguish this platform from category baseline. The full math doc lives in the "How It Works" modal — link below to open it at any specific topic.
Seeded Monte Carlo
Monte Carlo simulations use a deterministic seeded RNG. Same inputs produce identical trajectories across reloads — no success-rate flicker. 1,000 sims for headline confidence; 750 for sweep metrics.
SECURE 2.0 birth-year-aware RMDs
RMD age is dynamic per birth year: 75 for births 1960+, 73 for births 1951–1959, per IRS Pub 590-B. No hardcoded "73" anywhere in the engine; the prompt verifier scans for drift on every push.
51-state tax modeling
All 50 states + DC modeled individually: tax brackets, standard deduction, LTCG treatment, IRMAA thresholds, ACA premium-credit cliffs. Refreshed annually against IRS / CMS / HHS source publications.
Roth conversion sweet spot + IRMAA framing
Engine computes annual Roth conversion recommendation grounded in the user's bracket headroom AND IRMAA Medicare-surcharge tier position — not generic 4% conversion advice.
Tax-optimal withdrawal order
Withdrawal sequence — bridge → savings → brokerage → 401(k) → HSA → Roth — applied year by year. The order you withdraw determines how much goes to the IRS vs. your retirement.
Guyton-Klinger dynamic spending
Opt-in dynamic withdrawal modeling the Guyton + Klinger 2006 guardrail framework. Capital preservation rule + prosperity rule. Historically supports 5.0% safe withdrawal rates vs the 4% rule's static math.
Historical back-testing (Bengen / Trinity Study)
Plan replayed against Shiller's 1928–2022 dataset of actual S&P 500, 10-year Treasury, and CPI-U sequences. Two surfaces: a five-era card (Great Depression / 1966 / stagflation / dot-com / financial crisis) and a full-range workshop (every eligible start year, allocation slider). Cohort survival rate sits alongside Monte Carlo SR — two views of the same plan, honest about what each measures.
AI Advisor verification
A four-tier regime for AI behavior — not just AI prompts
The most likely production-bug source in any LLM-integrated product.
The pipeline has 32 pre-push gates. The AI Advisor needs a different kind of verification — one that actually talks to the AI and checks what it says. Three tiers shipped and active; a fourth (live response-pattern telemetry) is queued.
Brand-voice principle (mechanically enforced): the AI never recommends specific products, services, or providers. It educates on principles, frameworks, and trade-offs; it grounds in authoritative sources (IRS, SSA, CFPB, FINRA, SEC, Bengen / Trinity Study / Pfau / Kitces research). Trust gets eroded when calculators recommend things — so we don't.
For every category of question users ask the AI — "where do I change X?", "tell me about Y card", "what's my Z value?", "should I do strategy W?", "should I buy this specific product?" — there's a canonical entry in the eval corpus. Each entry has shape-based assertions; the runner dispatches each to Anthropic, applies assertions to the response, compares against the locked baseline.
82Eval entries across 12 categories
6Permanent regression locks per shipped AI bug
2Cross-cutting brand-voice assertions on every response
3Static prompt-source gates in pre-push pipeline
Every reported AI bug becomes a permanent regression entry — when something slips, it can't slip the same way twice. The same discipline that math regression-locks every shipped bug fix, extended to AI behavior.
Every release runs all 32. The ones that protect your numbers — a zero-drift check against 39 saved plans, the structural invariants, the determinism check — block the release outright: the first red gate halts it, no opt-outs. The rest, covering things like our free calculators and page layout, run in the minutes after and alert us if they fail. We split them deliberately. A wrong number has to be impossible. A wrong layout has to be fast to fix.
1 · ~50ms · static
Size guard
Asserts the deployed bundle is above a calibrated byte threshold. The bundle minifier can silently strip dead code; this gate catches the failure mode where a refactor accidentally removes a load-bearing chunk and the build looks fine but ships broken.
Locks: what you run in your browser matches what we built.
2 · ~2s · byte-compare
Deployed-bundle freshness
The app you load is a minified build of the source. This gate rebuilds the bundle from the current source and byte-compares it against the committed file — catching the failure mode where a fix lives in the reviewed source but a stale build never carried it to your browser.
Locks: what you run is a fresh build of the reviewed source.
3 · ~50ms · static
Gate wiring
A verification gate only counts if something actually runs it. This gate walks every verifier in the repository and asserts each one is reachable by a runner — or carries a written reason it is run by hand. Added after two gates were found fully written, documented, and wired to nothing.
Locks: every gate on this page actually runs.
4 · ~100ms · static
Three-list alignment
Every input field is defined in four places — the engine's defaults, the user-action whitelist, the AI Advisor's known-fields list, and the cache-key derivation list. This gate verifies all four agree.
Locks: input contracts stay synchronized.
5 · ~80ms · 255 deep checks
State tax profile parity
State tax modeling for 51 states (50 + DC) is defined in two places — the engine and the methodology doc. 51 × 5 fields = 255 equality checks confirm the documented tax treatment is exactly what the engine applies.
Locks: documentation can't drift from code.
6 · ~80ms · static
Actuarial life-table parity
The Planning Horizon Workshop reads the SSA 2022 period life table. The table is defined in two places — the engine and the methodology doc. This gate confirms every survival probability the workshop shows you is exactly the number the engine computes with.
Locks: longevity math matches its documentation.
7 · ~80ms · doc parity
Long-term-care cost parity
Long-term-care costs are priced from a 50-state, three-care-level table sourced from a published cost-of-care survey. The table lives in the engine and in a citable reference document; this gate proves the two match, cell for cell.
Locks: the care costs you see match the cited source data.
8 · ~60ms · static
Move library descriptor drift
The Smart Moves library (31 moves) is defined in the engine; the AI needs a parallel description. This gate confirms the AI's catalog matches the engine's exactly.
Locks: AI knows the same moves the engine can apply.
9 · ~50ms · static
ENGINE_VERSION drift
The engine carries a version stamp that must change whenever the calculation math changes. This gate diffs the current engine functions against the version they were last stamped at and fails the push if the math moved without a stamp bump — the same stamp that invalidates any cached AI analysis so you are never shown a stale number against new math.
Locks: engine math can't change silently.
10 · ~30ms · parse-only
API syntax check
Runs node --check on every server-side file. Added after a single misplaced apostrophe in a system prompt broke the AI Advisor endpoint for ~24 hours.
Locks: server-side code parses before deploy.
11 · ~50ms · static
API no-undef scan
Static scope analysis of every server-side file — catches a reference to a variable that was never defined, the runtime-error class a plain syntax check can't see. Added after exactly that bug: a reference to an undefined body returned a 500 on every AI call for ~24 hours.
Locks: server code can't ship an undefined-variable crash.
12 · ~1s · static
Worker no-undef scan
The heavy maths runs on a background thread, which gets its own copy of the engine built from the same source. This checks that every name that copy uses actually exists inside it — a function left behind in the rebuild would work perfectly on the page and fail only in the background, which is the hardest kind of fault to notice.
13 · ~80ms · 5 schema checks
AI deep-link infrastructure
The AI Advisor can navigate you to a specific input when you ask "where do I change my SS claim age?" This routing relies on three layers staying in sync; this gate verifies all three are wired so AI navigation can't silently no-op.
Locks: AI deep-link navigation stays functional.
14 · ~80ms · static
AI prompt section-target drift
The AI's system prompt references specific UI cards by name. If a card gets renamed but the prompt still references the old name, the AI would confidently tell you to look for a card that no longer exists. This gate verifies every reference resolves.
Locks: AI navigation references real, current surfaces.
15 · ~2s · 5 personas × 9 fields
AI context payload schema
When the AI responds, it gets your specific data — your RMD age, your success rate, your bridge-year MAGI, your effective tax rate. If the engine stops producing one of these fields, the AI silently falls back to generic defaults. This gate catches that.
Locks: AI receives the deterministic data it expects.
16 · ~50ms · regex scan
AI prompt hardcoded-value scan
Scans prompt source for known-drifty hardcoded values (specific ages, dollar amounts, tax brackets) that should be dynamically interpolated. Context-aware: legitimate historical references don't fire; user-direct claims do.
Locks: AI prompts can't quietly drift from current rules.
17 · ~2s · 276 assertions
Structural invariants
Six structural rules across 46 personas (276 assertions): balances can't be negative, monthly displays can't exceed annual ones, depleted-flag semantics must be consistent. Catches math regressions that don't shift the bottom line enough to fail persona-gate.
Locks: engine math respects structural rules.
18 · ~15s · 86 verifiers
Per-bug + Worker verifiers
Every shipped bug fix gets a dedicated verifier. Same for Worker infrastructure (the off-thread calculation pipeline) and the Observation Engine's detector mechanisms. 72 individual checks. If any future refactor accidentally reverts a fix, the verifier fires.
Locks: every shipped fix is permanently regression-tested.
19 · ~1s · 20 boundary shapes
Degenerate-input safety
Runs 20 degenerate and boundary input shapes — zero balances, a life expectancy at or below retirement age, already-retired, extreme values — through the engine and all three Monte Carlo paths. Asserts no output is ever NaN or a stray infinity, and that an impossible window returns a clean “no result” instead of a crash or a garbage number.
Locks: edge-case inputs degrade gracefully, never into a broken number.
20 · ~2s · every persona with a home
Persona home consistency
A saved test plan that includes a house has to store the figures its own entries produce, or the gate below locks a plan this app could never actually produce. Added 2026-08-03 after one test plan was found carrying a $700,000 home and a description saying it downsized, while modelling no sale at all — three quarters of the plan it claimed to describe was never being simulated. A baseline that locks the wrong plan is worse than none, because it reads as coverage.
21 · ~10s · 46 personas · $0 drift
Persona end-balance gate
The master correctness check. 46 synthetic retirement profiles — early retirees, FIRE plans, Coast FIRE, household + single, multi-state edge cases — run through the engine and compare against locked baseline end balances. Any drift, even $1, fails the push.
Locks: your projection won't change unless we tell you why.
22 · ~3s · 12 cells
Monte Carlo determinism
Monte Carlo uses random numbers, but for the same inputs they must produce the same results across runs. Verifies the seeded RNG produces byte-identical MC trajectories across 4 personas × 3 simulation functions.
Locks: reload the page, get the same success rate.
23 · ~12s · structural integrity
Lens consistency
Smart Moves has four lenses (Retire Earlier, Spend More, Leave a Legacy, Weather a Downturn). Validates every move object across all four is well-formed.
Locks: Smart Moves system can't ship malformed move objects.
24 · ~7 min · 184 lens computations
Smart Moves snapshot
The largest gate. For each of 46 personas, computes baseline + optimized values across all four lenses (184 total computations using real Monte Carlo bisection). Compares against locked baseline with tight tolerance bands.
Locks: the flagship feature produces consistent recommendations.
25 · ~1s · copy ↔ constants
Doc constant drift
User-facing copy — methodology, glossary, in-app tips — cites IRS limits, tax thresholds, and contribution caps. This gate re-derives each from the live engine constant every run and fails if any copy string still shows a stale value (last year’s number after a limits update). The discipline gate 13 applies to the AI prompt, applied to the words humans read.
Locks: the words describing your numbers can’t drift from the numbers.
26 · ~50ms · static
Doc ledger 1:1
Every methodology section and every glossary entry must have a row in the documentation coverage ledger — and no ledger row may cite a section or term that doesn’t exist. A new feature can’t quietly add engine math without its documentation being accounted for.
Locks: documentation coverage stays mapped to the code.
27 · ~1s · anchors
Methodology anchors
Every section of the methodology declares which engine functions it describes, and a retired model leaves a “tombstone” phrase its section may never use again. A methodology sentence describing code that no longer exists blocks the push — the engine and its documentation must move in the same commit.
Locks: the methodology describes the engine that actually runs.
28 · ~1s · cross-repo
Trust-page figures vs the code
The numbers on this very page — gate count, benchmark plans, AI evals, glossary entries — are re-derived from the code on every push and compared against what this page claims. A stale figure blocks the push outright. It caught this page being several gates behind on the day the newest gates landed.
Locks: this page cannot silently drift from the code it describes.
29 · ~1s · cross-repo
Concierge surface map
The AI concierge on this site can open modals and scroll to sections; its allowed targets live in a prompt on the app side. This gate proves every target the prompt claims still exists on the real page, and that the prompt’s pricing matches the pricing canon.
Locks: the concierge can never cite a stale price or open a door that isn’t there.
30 · ~3s · mock ↔ build
Design mock parity
When a screen is designed as a mock first, that mock becomes the build checklist. This reads the approved mock and the built app and compares them element by element, so a piece of an approved design cannot quietly be left out and forgotten — which had happened twice before it existed.
31 · ~2s · contract
Analytics contract
What the app records about usage is held to a written contract, checked against the real API handlers: an allow-list of what a session document may contain, a purchase counted only when money actually moved, and an excluded browser proven to send nothing.
Locks: usage numbers mean what they say — an admin unlock is never counted as a sale.
32 · ~90s · headless browser
Headless UI smoke
Loads the built app in a real headless browser and walks every tab on realistic and boundary plans — asserting no render crash and that the cards that should appear actually appear. The gates above test the engine in a sandbox; this one catches render-layer failures they can’t see — a plan that calculates correctly but crashes on screen.
Locks: the app renders, not just calculates.
Two further steps run warn-only — a cross-repo check that the app and marketing changelogs stay in sync, and one that checks every figure on this page against the code it describes. They surface drift but never block a release, so they aren’t counted among the 32 gates above.
🛑
Fail-fast: first red gate halts the push
If any single gate fails — even the cheapest 30ms check — the entire push is blocked. No manual override, no per-gate bypass. Either every gate passes and the code ships, or nothing ships and we fix the regression first.
Persona corpus
46 synthetic retirement profiles, baseline-locked
The persona gate (step 21 above) runs each of 46 hand-built retirement profiles through the engine on every push: early retirees, traditional retirees, FIRE plans, Coast FIRE, single-earner households, dual-earner households, pension-heavy plans, multi-state edge cases. Each persona has a locked baseline end balance. The gate compares fresh runs against the lock. Any drift — even one dollar — fails the push. The corpus expands as we discover real-world edge cases users hit.
AI Advisor eval set
93 canonical question/response pairs
The pipeline has 32 gates. AI behavior needs a different mechanism — one that actually talks to the AI. For every category of question users ask — "where do I change my X?", "tell me about Y card", "what's my Z value?", "should I do strategy W?", "should I buy this specific product?", "what about a survivor scenario?", "I just got laid off and I'm panicking" — there's a canonical entry in the eval corpus.
Each entry has shape-based assertions (does the AI emit the right navigation directive? cite the right number? decline the right kind of request? never recommend a specific product?). The runner dispatches each entry to Anthropic, applies assertions to the actual response, compares against the locked baseline. Any entry that flips from passing to failing exits non-zero and the change doesn't deploy until it's understood. The eval set runs separately from the pre-push pipeline (cost + dispatch time make per-push unfit). Discipline rule: any change to AI prompt source triggers an eval run before deploy.
Source-vs-shipped parity
What runs in your browser matches what we test
The size guard (gate 1) + the persona end-balance gate (gate 21) together lock the relationship between the source we develop against and the bundle we ship. The minified browser bundle is verified semantically equivalent to the source across all 46 persona end balances. If they ever diverge, we catch it before you see it.
Your data, your device
Privacy isn't a policy. It's an architecture.
There's no user account, and your retirement numbers live in your browser — we keep no copy you could lose, leak, or sell. Our server holds only what a purchase needs and anonymous usage of the app itself, never a figure you entered. The two opt-in exceptions — the AI Advisor and Share links — are detailed below.
🔒 Stored in your browser
Inputs, calculations, saved scenarios — all stored in your browser's local storage. Clear your browser data and it's gone; we have no copy.
🚫 No account, no signup
Use the full calculator without registering anything. No email, no profile, no marketing pipeline waiting to be hacked.
📊 Anonymous analytics only
PostHog gets click/scroll events tied to a random local UUID — no identifiers, no financial inputs, no AI conversations. Easy to block with any privacy extension.
🤖 AI Advisor — anonymized in transit
Plan numbers (no names, no account numbers, no institutions) go to Anthropic to generate the response, then discarded. We don't log requests; Anthropic doesn't train on them.
💳 Stripe handles payment
If you upgrade to Navigator, payment is processed by Stripe. We see a confirmation; Stripe handles every financial detail. No credit cards stored on our side.
🤝 Zero third-party data sales
We don't sell, rent, or share user data with third parties — because we don't have user data to share. The architecture makes it impossible, not a policy promise.
·
Honest limits
What this regime doesn't cover
Honest scope acknowledgment. Naming the limits is part of the trust posture, not a defect.
Calculator results are projections, not guarantees.Monte Carlo gives confidence bands across simulated futures; reality is one path, not 1,000. Use these projections as planning instruments, not crystal balls.
This is not financial, tax, investment, or legal advice.It's an informational and educational tool. For decisions involving significant money, consult a qualified fiduciary CFP, CPA, or estate attorney.
Free-form AI prose quality.The eval set checks structural behavior. It doesn't grade subjective writing quality.
Adversarial AI prompts designed to jailbreak.Out of scope for a retirement-calculator AI.
Cross-model drift on provider updates.When Anthropic ships a new Haiku or Sonnet version, the AI eval set must be rerun and recalibrated.
Real-time AI response telemetry.Tier D — live response-pattern monitoring — is queued for a future release.
Edge cases not represented in personas.Our 46-persona corpus covers realistic edge cases but real-world situations have variations no corpus fully captures.
No silent drift
Recent fidelity changes
The "no silent drift" promise lives here. When calculator fidelity changes — a tax law update, a methodology refinement, a bug fix, a new feature — it gets documented with the date, what changed, and who's affected.
Fidelity & methodology
Complete since launch. Every change that moved a number, or corrected one you had already been shown, is here.
August 29, 2026
New: a partner program — and the referral cookie that credits it, disclosed. Bloggers and reviewers who send readers our way now earn a commission on purchases. To credit them, both sites include a small script from Rewardful, our affiliate platform. Arrive through a partner’s link and a cookie stores a random referral ID for 90 days so that partner is credited if you buy; it identifies the link you clicked, never you, and carries nothing you’ve entered. Arrive any other way and nothing is stored. The privacy policy on both sites now lists Rewardful alongside our other processors.
August 30, 2026
Fixed: required minimum distributions now run on each spouse’s own schedule. Household plans previously started RMDs for all pre-tax money on the primary plan-holder’s birth-year schedule (73 or 75). For couples with an age gap that was wrong in both directions: an older spouse’s real-world RMDs begin on their own schedule — potentially years earlier than the projection showed — and a younger spouse’s share was forced early. Reported by a user whose spouse, born 1958, starts at 73 while the projection showed 75. Each spouse’s share of the household pre-tax balance now follows that spouse’s own start age and their own IRS divisor each year; the Roth conversion window ends before the household’s first RMD year; a full-RMD charitable QCD covers your own required amount. Who’s affected: households where spouses differ in age or birth cohort — success rates barely move, but forced taxable income timing shifts ending balances either way. Same-age couples and single plans are unchanged. Details in the methodology’s RMD section.
August 27, 2026
New: repeating life events can skip years — a new car every 7 years is one entry. This one came straight from a user: their scenario needed a new car every 7 years, and the Life Events cards could only repeat a cost every single year — so it took five separate entries, or got left out. The cards now ask the natural first question — is this a lump sum or a payment? A lump sum is a cost at an age, once or repeating every few years, and the card lists the actual purchase years, each priced in the year it happens. A payment is an amount per year over a stretch — a loan, tuition — where “through age” is the last payment. Works for windfalls too, and every entry you already have lands in the right kind automatically with identical numbers. The AI Advisor can now set up repeating entries for you, it preserves an entry’s repeat and fixed-amount settings exactly when it edits your lists, and both lists grew from 10 entries to 15. The math is identical to entering the same years by hand — locked as an automated test, to the dollar — and every-year repeats and one-time entries are unchanged.
August 26, 2026
New: Divorce & Your Retirement — a private workshop for modeling a gray divorce. Some retirement questions are easier to explore than to say out loud, and this one was built for exactly that. From the Gray Divorce card on the Stress Test tab, the workshop models a split at any age against your real plan, side by side with staying: how each account divides, what happens to the house (four options, priced from your own home card), support paid or received, and your single-life spending — with single tax filing, health-coverage loss, and divorced-spouse Social Security (marriages of ten years or more) modeled on the SSA’s actual rules. Nothing you enter there is ever saved: no browser storage, no analytics, no trace in your plan — closing the workshop erases it. Three free searches show what would restore the household plan’s security; the Insulate search (part of Navigator) finds the change today that makes both futures sustainable at the app’s 85% bar. Full math in the app’s How It Works §37.
August 26, 2026
Fixed: the Rule of 55 / 72(t) penalty switch and the QCD switch were unreachable for most plans. The switch that removes the 10% early-withdrawal penalty when a plan will use a legal early-access route (Rule of 55, a 72(t)/SEPP schedule, or a Roth conversion ladder) — and the switch that sends an RMD to charity as a QCD — rendered only inside a panel that appears for households above the Roth IRA income limit. For every other plan, neither control existed anywhere in the app. Both now live in their own “Withdrawals & Giving” group in the app’s Tax section: the penalty switch for any plan retiring before 60, the QCD switch for any plan with pre-tax savings that reaches age 70½. No number changed — the penalty was always modeled correctly, and QCDs computed correctly where enabled; the controls were simply unreachable. The AI Advisor also now sees whether a plan asserts a penalty-free strategy.
August 24, 2026
Fixed: the Stress Test tab could crash when opened before its simulations finished. Opening Stress Test in the first seconds after loading the app — while the plan’s simulations were still computing — could crash the page to an error screen instead of the scenario grid. It depended on load timing, so it appeared random, and a reload usually recovered. The cause was in how the page was assembled, not in the math — no number was ever wrong. The tab now waits out the computation and renders normally.
August 24, 2026
Changed: the Compare radar now measures every scenario against one ruler. The “spend more” axis on the Compare tab’s radar used to be measured against each scenario’s own monthly goal, so comparing scenarios with different goals plotted them on different rulers — a small real difference in affordable spending could look like a large one purely because the goals differed. Every scenario is now measured against the first scenario’s goal, so the shapes are directly comparable; the legend says so, and the table below the chart still shows the absolute dollars. Same-goal comparisons are unchanged. Also in this release: when income sits within a few percent of the ACA subsidy cliff, the app now notes the year convention it prices the cliff on and points to healthcare.gov that close to the line; and the “retire earlier” goal color changed from pink to cyan.
August 24, 2026
Fixed: sharing a plan failed silently if it contained a curly apostrophe or other special text. Share links are built from your plan’s own text — future expense and windfall names, and the note you can attach to the link. If any of that contained a character like the curly apostrophe an iPhone types automatically (“Daughter’s wedding”), generating the link failed silently: no error, no link, and the Share button could stick in its working state. Links now carry any text exactly as typed, and links created before this fix keep working unchanged. Affects anyone who tried to share a plan containing such text — most commonly text typed on a phone. Also in this release: when the step-by-step setup estimates your Social Security from an assumed salary because you left the field blank, it now says so — and the contributions step states what is assumed for any field you skip. Nothing about how those assumptions are used changed; they are simply disclosed.
August 23, 2026
Fixed: plans built by describing your situation to the AI Advisor could carry the wrong spending, filing status and goal. If the conversation never captured a monthly spending figure, the plan was saved with a spending goal of zero. The projection then modelled almost no spending at all and reported a success rate near 100%. Anyone who built a plan this way and did not state what they expect to spend saw a result that was far too optimistic. The spending goal now falls back to the app’s default, and the figure is shown on the summary screen before you continue. Three related fixes to the same hand-off: if you are married but only wanted your own accounts modelled, that choice could not be recorded, so the plan was built either as a single filer — using single tax brackets on a jointly-filed return — or as a household with a spouse the app had no figures for, understating the plan by roughly 9 and 14 percentage points of success rate on a representative case; the retirement goal picked during the conversation was collected and then dropped; and the summary could describe your savings as split by a default 80/20 rule when the plan had actually used the balances you gave, or the reverse. Plans built through the step-by-step questions were not affected by any of these.
August 23, 2026
Fixed: two figures the AI Advisor quoted were wrong — the Social Security break-even age and the projected RMD. The Advisor was given a Social Security break-even age calculated with an arithmetic error that made it about twelve times too soon. On a $3,000 full-retirement-age benefit claimed at 67, it was told the break-even against claiming at 62 was age 68; the correct answer is about 79. Delaying Social Security therefore looked as though it paid for itself almost immediately, when the break-even in fact sits near life expectancy — which is the substance of the claiming decision. The projected required minimum distribution grew the pre-tax balance from retirement to RMD age without subtracting anything spent along the way, so it returned the same number regardless of withdrawals: on one plan it reported $122,867 where the projection’s own figure was $69,130. Both now come from the projection itself. Neither figure appeared anywhere on screen, and no projection, success rate or balance in your plan changed — they were only ever used in conversation with the AI Advisor.
August 23, 2026
Fixed: Compare now names every input that differs between two scenarios. The “Δ What Changed Between Scenarios” section on the Compare tab tracked a short list of inputs. If the only difference between two scenarios was an input outside that list — a spouse’s retirement age, for example — the section did not appear at all, so a comparison could show a large difference in success rate with nothing named as its cause. It now covers every input the Progress tab already tracked. Affects anyone comparing saved scenarios. On the same tab, the Couples Social Security map now states that its shading and its ★ are measured at different resolutions: the ★ marks the winner scored at full resolution, while the shading is a faster read across all 81 combinations, so a near-tie can look level while the ★ still separates them. The figures themselves are unchanged.
August 23, 2026
Fixed: Progress no longer describes a plan that runs out of money as more predictable. When a plan depletes, every projected path ends at zero, which collapses the range of outcomes. The Progress tab read that collapse as good news and reported that outcomes had become more predictable. It now names it as depletion. Affects anyone whose plan reached zero between check-ins. Separately, the lens radar on Compare and Progress described all five of its axes as absolute. Four are. The spending axis is measured against your own spending goal, so raising your goal can move that axis down even as the spending you can afford goes up. Both legends now say so and point to the figures in dollars. No scores changed.
August 22, 2026
Fixed: the Roth conversion figure now reads your real bridge-year income, and says it is a ceiling. The Roth conversion figure — shown on the Inputs tab and the Roth Strategies card, and used by the AI Advisor — estimated your taxable income during the bridge years instead of reading it from your projection. The estimate assumed your spending was withdrawn from your pre-tax accounts in proportion to your account balances. For a plan funded from an earmarked bridge reserve, or one with a still-working spouse or interest on cash set aside, that estimate could be off by tens of thousands of dollars a year, in either direction. It now reads the ordinary income the engine actually realises in each bridge year, and reports the largest amount you could convert in every year of the window rather than in an average year. Two limits were added: the recommendation now stops at the ACA subsidy cliff and says so when that is what constrains it, and the Medicare income-related surcharge now applies only from age 63, the first year whose income can reach a Medicare year under the two-year lookback. The wording changed too. Every surface used to call this number a recommendation; it is a ceiling — the most you could convert before crossing a limit — and being able to convert that much is not a reason to. On some plans converting nothing leaves the most behind, which is the question the Bridge Optimizer answers. The screens now say which is which. The amount changes on most plans — up where the old estimate overstated your bridge income and suppressed the suggestion, down where it missed the subsidy cliff. Nothing recalculates on its own: if you applied the earlier figure, that conversion is still in your plan and still drives your projection. The Inputs tab now shows how far your entered amount sits from the ceiling, and which year sets it.
August 22, 2026
Fixed: the SS Income Gap card now includes the tax in “total portfolio draws”. The SS Income Gap card reports what your portfolio has to carry between retiring and claiming Social Security. Its headline counted the spending you need to cover, but not the tax you withdraw in order to cover it — and withdrawing from a pre-tax account means pulling both. On a plan funded mainly from a 401(k) or traditional IRA the figure was understated by roughly 16–19% from the second bridge year onward. It now shows the withdrawal the projection actually makes, so the card, the Projection tab and the year-by-year table below the card all report the same number. The headline also states that it is in today’s dollars, which the expanded panel already did and the collapsed card did not. The figure on this card goes up — your plan has not got worse, the card was reporting less than the plan always withdrew. No projection, success rate or balance changes. Reported by a subscriber who could not reconcile the card against the projection chart.
August 22, 2026
Clearer: the money-flow diagram names the Roth conversion tax inside a 401(k) withdrawal. On the Projection tab, “Where your money flows” shows what left each account in a given year. In a year you convert to a Roth, the tax on that conversion can be withheld from the converted money — so the 401(k) figure legitimately runs well above the spending draw shown elsewhere, with no explanation of the difference. The diagram now names it, the same way it already names a required minimum distribution: “401(k) — incl. $43k Roth conversion tax.” Labelling only — no figure in the diagram moves, and the flows balanced correctly before and after.
August 20, 2026
Fixed: a plan for one person no longer shows a spouse scenario. If your plan was set to “Just me”, the Stress Test tab still offered the Survivor Scenario — the card that models a spouse’s death — as though you had a spouse. The check for whether a plan includes a partner was reading an internal starting value rather than your answer to “Who is this plan for?”, and that value is present on every plan. It now reads your answer. This app does not raise the subject of death on its own: the survivor scenario exists because a plan with two people in it has a real question to answer, and it belongs to plans that have two people in them. Household plans are unchanged, and no projection, success rate or saved number changed.
August 20, 2026
Every stress test scenario is now free. The Stress Test tab has 26 scenarios. Twenty-one were always free; the other five — the “Moves That Help” group, which shows what your plan does when you improve it rather than when it breaks — were partly held back, with a free plan seeing two of the five. All five are now open to everyone, with their full numbers. Smart Moves and Deep Search, which size these moves, sequence them and price them in combination, are unchanged and remain part of Navigator. What is free is the question — “if I delayed Social Security to 70, where does that put me?” Found via a bug report: because the hold-back was applied when the grid was drawn rather than when it was counted, the filter read “All (26)” above a grid of 23 and the missing scenarios showed no card and no explanation. Fixed in the same pass: the AI Advisor could not send you to a scenario locked on your plan and would open the tab and leave you at the top of it; it now takes you to the card and highlights it. No projection, success rate or saved number changed.
August 21, 2026
Fixed: two cards on the Results tab both said “nest egg” and showed different totals. If you have earmarked money as a bridge reserve — a home sale, a windfall, or cash set aside to live on before Social Security starts — that money is deliberately held apart from your invested accounts. Two cards reported it differently while using the same words: one counted only the invested accounts, the other counted everything. Both figures were right, but nothing on the screen said which was which. Both now show the same total, and the card states how much of it is your bridge reserve. Wording only — no projection, success rate or withdrawal figure changes.
August 21, 2026
Fixed: an already-retired plan no longer overstates its nest egg in today’s dollars. If your retirement age is at or before your current age, the Projected Nest Egg card converted your balance as though retirement were still ahead of you — so the “in today’s dollars” figure beside it read about 9% higher than the balance itself for someone three years past their retirement date. Money you already hold is in today’s dollars once you have retired, so there is nothing to convert. The card now says so, and the label beside it no longer names a retirement date in the past. This affected the displayed figure only — the projection, the success rate and every row of the projection table were computed correctly throughout.
August 21, 2026
Fixed: a stress scenario that cannot run no longer shows a success rate. The Part-Time Bridge scenario models semi-retiring a few years early, so it needs at least a year between today and your retirement date. For plans without one — anyone already retired, or retiring this year or next — the scenario was correctly not run, but its card still displayed a 50% success rate and described semi-retiring a negative number of years early. The card now locks and states why, the way other scenarios that do not apply to your plan already do. The 50% was a placeholder rather than a computed result, so no scenario was ever scored wrongly.
August 22, 2026
Fixed: six more places a screen disagreed with the plan behind it. A second sweep covered ground the first missed — the conversational setup, the Compare and Progress tabs, and the paid Deep Search tools. As before, the underlying plan was correct in every case; what was wrong was what was shown or stored on top of it. Two affect anyone who used the conversational setup: a described home sale always had its proceeds earmarked as a bridge reserve whether or not you said so, and clicking “Edit Details” then pressing Continue through the questions quietly rebuilt a household plan as a single-person one, dropping a spouse’s pension, retirement accounts and Social Security. On Compare, a saved scenario whose money never runs out was recorded as lasting zero years, so the “longevity edge” card could name the plan that runs out of money as the one lasting longer. On Progress, a plan moving from a monthly surplus to a shortfall was described as “Up” by that amount rather than down, and the bridge-funding target counted years already past for anyone already retired. In Deep Search, Solve for Goal measured most of its search at a lower simulation count than its footnote claimed and interpolated across the mixture, which on the plan that surfaced it recommended cutting monthly spending about $500/mo further than the goal required. Your success rate, projection tables and saved plans are unchanged: none of these altered a calculation.
August 22, 2026
Fixed: eight places where a number on screen disagreed with the plan behind it. A sweep of the app found eight surfaces that recalculated a figure the projection had already worked out, and got it wrong. The underlying plan was correct in every case — the arithmetic running your simulations, projection tables and success rate was never affected. What was wrong was what some cards and tables displayed on top of it. The largest: the “Total nest egg” breakdown inside the Projected Nest Egg card could differ from that card’s own headline by as much as $1.15M on plans involving a home sale or purchase. Also corrected: the withdrawal rate shown against the 4% rule was understated for anyone already retired, and increasingly so the longer you had been; the Roth Conversion Window stress card had its condition reversed, so it was locked for the people who do have a gap between retiring and claiming Social Security and offered to those who don’t; the bridge-year ACA table left Other Income out of its estimate and could claim premium savings you would not receive; a pre-Medicare healthcare figure subtracted the ACA credit twice and could display as a negative amount; and for reverse-mortgage plans the banked part of a cheque now appears as its own column so the projection rows add up on screen. Two of these ran optimistic — the withdrawal rate and the ACA subsidy table — so a few plans looked safer on those specific readouts than they were. Your success rate, projection tables and saved plans are unchanged: nothing here altered a calculation, only what was printed from it.
August 21, 2026
Fixed: the guided setup no longer invents a Social Security benefit. In the guided setup, choosing “I know it” for Social Security and entering $0 did not store $0 — it stored an estimated benefit instead, and the same happened for a spouse’s benefit. The plan then modelled income that will never arrive, always in the optimistic direction: on a household with $1.4M saved and no Social Security at all, the verdict read 97% where the honest answer is 41%. The setup screen now offers a third choice — “I won’t get it” for you, “None” for your spouse — so the answer can be given and is carried through to your plan. This affected people whose benefit is reduced or eliminated: non-covered public employment (WEP/GPO), fewer than 40 credits, or a spouse with no U.S. earnings record. If you set up a plan this way, open Inputs → Social Security and check the figure. Everyone who entered a real benefit, or asked us to estimate one, is unaffected.
August 21, 2026
Fixed: a household plan no longer assumes a 40-year-old spouse. In the guided setup, choosing “Married, planning together” adds a step asking your spouse’s age — and that field arrived pre-filled with 40. Left uncorrected, the plan modeled a spouse who could be decades younger than you, and because a household plan runs to whichever spouse lives longer, that stretched the modeled retirement well past your own horizon and pushed your spouse’s Social Security years further out. On the plan that surfaced this — a 54-year-old retiring at 63 — the verdict read 41% where the same answers with a same-age spouse give 77%, and the projection table ran to age 103 instead of 91. The field now starts empty and states what we assume if you leave it blank: that your spouse is about your age. The error ran pessimistic, so affected verdicts were understated rather than inflated, and saved plans keep the spouse age they carry. Also on the setup screens: the surplus figure beside the live estimate compared your income against a spending goal of zero until you’d answered the spending question, so it always read as a surplus; it now compares against the spending the estimate actually prices.
August 21, 2026
Fixed: spouse contribution suggestions now show the 2026 IRS limits. The Smart Moves suggestions covering a spouse’s catch-up contributions, super catch-up and Roth IRA quoted last year’s IRS limits while the matching suggestions for you quoted this year’s — so the same screen could offer you $8,600 of Roth room and your spouse $8,000 on identical eligibility. Two of the spouse cards also disagreed with themselves, stating one figure in the headline and a different one in the explanation beneath it, and the spouse catch-up’s Enable button wrote a third amount again. Every one of these figures now derives from the same published limits the engine uses: $9,100 of combined catch-up at 50+, $3,250 more per year between 60 and 63, and $8,600 of IRA room at 50+. Your own contribution suggestions carried the correct figures throughout, and no projection math changed.
August 21, 2026
Fixed: the AI Advisor now always links to the card that answers your question. When your question is the one a specific card, workshop or tool exists to answer — “does my Social Security claim age actually matter?”, say — the Advisor’s reply carried a button taking you straight to that card only some of the time. The same question, asked twice on the same plan, could go either way. That button is now part of the answer every time, including when the card sits on the tab you are already viewing. Affects the AI Advisor chat only; the answers themselves are unchanged.
August 21, 2026
Fixed: the Roth eligibility warning now uses the same income figure as the rest of the app. A red banner near the top of Inputs could say you were locked out of direct Roth IRA contributions while the Roth Building Strategies panel further down the same page said the opposite. The banner compared gross salary against the income limit; every other Roth surface — that panel, the Results Roth card, Smart Moves and the projection engine — compares estimated MAGI, which nets out pre-tax 401(k), catch-up and HSA contributions. High savers were the ones who saw both messages at once. All of these now read one number, and the banner states what the estimate does and doesn’t include. No projection changes: the MAGI figure was always the one driving the math. Also corrected on the same screens — the eligibility banner no longer shows a spouse row on a single-person plan, and the mega backdoor Roth suggestion no longer keys off gross pay.
August 19, 2026
Fixed: both setup paths now assume the same savings rate and state tax. The guided setup quietly assumed a 4% return on cash savings and a 5% state tax rate when unspecified, while the AI conversation setup used the app’s standard assumptions (4.5% for both) — same answers, about three points of success-rate difference nobody chose. Both paths now read the standard assumptions from one place, so the two doors produce the same plan for the same answers. Same motion: the guided setup’s flat $1,200 placeholder for an unknown spouse Social Security benefit is replaced by the standard spousal benefit — half the primary earner’s estimated check — matching the AI conversation; and every remaining setup assumption both paths write (growth rates, inflation, planning horizon) now reads from the same single source. Existing saved plans keep their values; only what new setups assume changed.
August 18, 2026
Fixed: the AI conversation setup now uses the app’s own Social Security estimate. When someone building a plan through the AI Advisor conversation didn’t know their Social Security benefit, the AI itself estimated a monthly figure — and its estimates could land far from what the salary actually earns. In the case that surfaced this, a $95,000 earner was set to $1,900/month where the Social Security formula gives about $3,030 — enough to swing the plan’s success verdict. The AI no longer writes benefit numbers: it captures the salary, and the app computes the estimate with the same real SSA formula (bend points, wage base) the guided setup has used since August 6 — both setup paths now produce the same number for the same answers. An unknown spouse benefit follows the same rule, estimated from their salary or set to the standard spousal benefit (half the primary earner’s) for a spouse without an earnings record. Affects plans built through the AI conversation where the AI estimated Social Security; a benefit the user gave it was always kept as-is and still is. Found in an internal review of the two setup paths.
August 18, 2026
Fixed: the quick-start estimate now shows the same number Results does. The guided setup’s live estimate priced a different plan than the one the answers build — the full spending goal charged flat for every retirement year, while the app models spending easing with age (100% → 85% → 75%), and a pension entered during setup never reached it. On the plan that surfaced this, setup said 65% of simulations succeed; Results computed 94% from the same answers seconds later. The estimate now runs the exact plan the setup hands over, with the same 1,000 simulations Results runs, so the numbers match to the digit. The summary screen’s observations also now read the finished plan — previously its guaranteed-income note could claim 0% covered beside a real estimated Social Security benefit. Setup preview only: saved plans and every Results figure were always computed correctly. Found via a user report.
August 17, 2026
Fixed: home sale and replacement at exactly retirement age now show in the nest-egg table. When a plan sells (and optionally replaces) the home at exactly the retirement age, the amounts fold into the starting nest egg — correct math, but the “Building your nest egg” table either netted the two into one unlabeled line or, with proceeds earmarked as the bridge reserve, showed the sale nowhere. The table now itemizes each piece — sale proceeds and their destination, the replacement purchase, any long-term-care reserve — so the nest-egg figure visibly adds up. No number moved. Found via a user report.
August 17, 2026
New: Spending Guardrails — the two portfolio numbers worth watching. A market drop raises one real question: do I need to do anything? The newest Deep Search tool answers it in advance. It finds your two guardrails — the portfolio level where a modest spending trim would genuinely protect your plan, and the level where you’ve earned a raise — by re-running your whole plan at falling and rising balances until your success odds cross the acting lines. The answer comes back in dollars, with the action pre-sized: “if your portfolio closes below $X, trim to $Y a month.” Between the lines, the advice is explicitly to do nothing. This is the risk-based guardrails approach from recent research — the successor to withdrawal-rate rules like Guyton-Klinger — brought out from behind advisor-only software. Part of Navigator; built from a paid user’s request.
August 17, 2026
The bridge reserve becomes visible, and its growth promise is kept. Money earmarked for the bridge reserve was modeled correctly but shown almost nowhere. It now has a full on-screen life: set-aside years appear in the nest-egg table, a new “At retirement” section itemizes what built the reserve, and “everything you have at retirement” — nest egg plus reserve — is stated outright. Also corrected, and it moves numbers: earmarked money now grows at the reserve’s savings rate from the day it exists, not the portfolio rate — parked means parked. Reserves funded by earmarked windfalls come down; the standing cash reserve, which previously earned nothing before retirement, comes up. Success rates essentially unchanged — the correction is the reserve’s size at retirement.
August 16, 2026
New: a life event can be a fixed amount. Costs and windfalls on the Life Events timeline used to rise with inflation, no exceptions — right for college, wrong for a contract. Each entry now carries a “Fixed amount” checkbox: a loan payment, a lease, deferred comp, or an installment sale is charged or received at exactly the typed figure in every year it fires — the same fixed-vs-inflating honesty the engine has always applied to Other Retirement Income, and new money-in entries start as fixed because most repeating payouts are contracts. Existing entries are untouched to the byte. The add buttons were also renamed — “Future expense” and “Windfall / payout” — because both lists have supported repeating entries since July.
August 16, 2026
New: your next home can carry a mortgage. A retirement move doesn’t have to be a cash purchase any more. Enter a down payment on the app’s Your home card and the plan finances the rest: only the down payment leaves the portfolio at the purchase, and the new loan’s payment is added on top of spending — held flat until it’s paid off, because a fixed-rate payment doesn’t rise with inflation. The rate and length are visible, editable assumptions, the Home Equity Workbench and Your Next Home tools price the financed plan automatically, and it’s locked by a permanent hand-arithmetic test plus a new saved test plan — the 44th — that finances a pricier home.
August 16, 2026
Fixed: the ACA subsidy column now shows by default in the projection table. When a plan receives an estimated ACA subsidy, the year-by-year projection credits it back to savings — but since late July the column showing that credit was hidden in the default view, so the visible columns came up short of the end balance by exactly the subsidy. The column now appears automatically whenever a subsidy exists, the same rule the Medicare-surcharge and conversion-tax columns follow. Display only — no number changed; the column was always available under COLUMNS, and column choices users made themselves are kept.
August 16, 2026
Fixed: pension-covered health insurance no longer gets ACA subsidy math. If your pension or retiree plan covers your health insurance (the checkbox under Inputs → Healthcare), the engine no longer estimates an ACA marketplace subsidy against the premium you still pay — coverage that isn’t bought on the marketplace has no premium tax credit and no subsidy cliff. Previously, checking that box hid the cliff warnings on the Healthcare Bridge card but left the subsidy estimate itself running, so low-income bridge years could credit a subsidy the plan can’t actually receive. The Roth conversion card’s cliff gauge and the Bridge Optimizer’s subsidy notes now also stand down when the box is checked. Affects plans with the box checked and a pre-Medicare premium entered: success rates essentially unchanged; ending balances shift down by the amount of the former credit — the honest direction. Found via a user report; locked by a permanent test.
August 15, 2026
New: choose when Roth conversions start and stop. Conversions no longer have to end when Social Security starts. A “Convert from age / until age” pair on the Inputs tab runs conversions on your schedule — up to the year before RMDs begin, the planning window pre-tax-heavy plans actually use. Post-SS conversion years are priced honestly: they stack on Social Security income, and the year-by-year table marks them and shows the higher per-dollar cost. Also: the projection’s Medicare surcharge (IRMAA) estimate now counts planned conversions — previously it left them out, understating Medicare premiums for plans converting past 65 (success rates essentially unchanged; ending balances slightly lower, the honest direction) — and a $0-conversion plan’s Roth Strategies card now clearly labels its recommendation as an exploration. Defaults unchanged — plans that don’t touch the new fields convert exactly as before. Locked by a permanent test with hand-computed amounts to the dollar.
August 16, 2026
Fixed: Career-Break Workshop honors contribution start/stop ages in both-spouses mode. Affects households that set contribution timing (released earlier today) and model a joint career break. That one screen’s both-spouses path ignored the timing windows — a stream set to start later contributed nothing, a stream set to stop early kept contributing. The headline projection, Monte Carlo odds, and every table were always correct; single-person mode was always correct. Caught by the automatic post-release test sweep within the hour and fixed the same evening. Locked by the workshop’s reconciliation test, now proving the workshop matches the engine to the cent on every household test plan.
August 16, 2026
New: start and stop ages for every contribution stream. Every account’s contribution — 401(k), Roth IRA, savings, brokerage, HSA, each spouse separately — can now carry its own timing, set right beside the contribution amount. Model the plans people actually have: brokerage contributions that begin when the mortgage is paid off, a spouse’s 401(k) that resumes with a return to work, an HSA that ends with the health plan. Yearly increases ramp from the window’s first year, catch-up and employer match apply only in contributing years, and the Coast FIRE stop-age remains the master switch. Plans that don’t touch the new ages are unchanged to the byte, verified across every saved test plan; locked by a permanent test where every figure is hand arithmetic.
August 16, 2026
Fixed and rebuilt: the backdoor Roth is now a marker on your real contribution, per spouse. Two defects, one rebuild. The Roth Strategies card’s spouse Enable button saved a setting the engine never read (the row showed active while the numbers stayed put), and the backdoor toggle added its own separate contribution on top of the regular Roth contribution field — the same real-world action could be counted twice, up to $15,000/yr into an account the law caps at $7,500. Now each person’s Roth contribution field is the single source of the dollars, with a per-spouse “via backdoor” marker recording how the money legally gets in above the income limit; enabling the strategy sets the marker and fills the contribution to the IRS maximum. Mega backdoor is separate and per-spouse, landing in each person’s own Roth. Existing plans convert automatically and keep their numbers to the cent — except plans that modeled both streams at once, which are now capped at the IRS maximum (the previous figure wasn’t legally achievable). Locked by a permanent test with to-the-cent fixtures, plus a new guard that flags any control writing a setting the engine can’t read.
August 15, 2026
Two more tax rules corrected: Roth-ladder shortfalls and state tax on harvested gains. Success rates are essentially unchanged — measured within a fraction of a percentage point on every test plan. First: when a Roth conversion’s tax bill has to come out of the converted money itself — a ladder whose cash accounts run dry mid-ladder — the engine was taxing only the portion that survived, not the full amount that left the 401(k). The IRS taxes the full withdrawal, and before 59½ the withheld portion also carries the 10% penalty; the engine now does both. Second: tax-free gain harvesting was free everywhere — but only the federal 0% bracket is actually free. The engine now charges the state’s capital-gains rate on the harvested amount (the eight preferential-rate states honored; no-income-tax states still harvest free) and prices the way a harvest can pull Social Security into taxability. Affects: Roth ladders whose taxable buckets run dry mid-ladder (~$3,000–5,000/yr of previously understated tax per $100k rung), and harvesting users in the ~41 states that tax gains. Harvesting remains worth doing — the projection now shows the honest price. Locked by permanent tests with hand-computed fixtures to the dollar.
August 15, 2026
Fixed: big one-time costs paid from a 401(k) are now taxed. Success rates are essentially unchanged — measured within a fraction of a percentage point on every test plan. The correction lands in projected ending balances on plans that fund a large one-time cost — a home purchase, a wedding, college help — from a 401(k) or Traditional IRA: that withdrawal is ordinary income, and the engine wasn’t taxing it. A $300,000 purchase funded mostly from a 401(k) generated $0 of tax, where the honest figure is roughly $90,000 once the withdrawal also covers its own tax bill. The engine now withdraws enough extra to cover the tax the event creates — what a person actually does — and the year’s tax charges the exact figure. Closed in the same motion: the 10% early-withdrawal penalty now applies to event withdrawals before 59½, a big taxable event year correctly loses its health-insurance subsidy, and tax-free gain harvesting no longer claims 0%-bracket room an event has already filled. One deliberate exception: the modeled long-term-care event is not taxed this way, because the IRS medical-expense deduction would offset most of it in reality. The same honesty applies before retirement: a college cost or home purchase that digs into a 401(k) during the working years is taxed on top of salary, with the penalty where it applies, and the nest-egg build table shows the tax on its final row. Affects: plans funding large one-time costs from pre-tax accounts — lower, honest ending balances; plans whose events are covered by savings or brokerage money are untouched. Found by the same professional-lens review as the other August 15 fixes; locked by a permanent test with hand-computed fixtures to the dollar.
August 15, 2026
Three tax rules join the engine: the investment-income surtax, the 65+ deduction, and tax on cash interest. Success rates are essentially unchanged by all three — the projections most people use to decide whether they can retire were already honest; the corrections land in the later-years detail, in both directions. Money back for most plans: from age 65 the IRS allows a larger standard deduction, and the engine now applies it — nearly every plan shows less tax from 65 on, compounding to a higher ending balance over a long retirement. In the other direction: the 3.8% net investment income surtax now applies above the IRS thresholds ($200,000 single / $250,000 married, unindexed by law), and interest on cash — high-yield savings and bridge reserves — is taxed as the income it is. Affects: everyone 65+ gains the deduction; high-income plans with large realized gains, and cash-heavy plans, show the honest higher tax — five to six figures on the leftover-at-the-end of the largest affected plans, little or nothing on typical plans. Found in the same professional-lens review as the Social Security fixes; each rule is locked by a permanent test.
August 15, 2026
Fixed: the full year’s tax is now computed in one pass. Success rates are essentially unchanged by this fix — the projections most people use to decide whether they can retire were already honest. The correction lands in projected ending balances: plans with large pre-tax accounts in the required-withdrawal years see lower leftover-at-the-end figures — five to six figures at the top — while typical plans see little or nothing. The cause: the engine assembled each year’s tax bill from separate estimates — one for guaranteed income, one for the withdrawal that funds spending, one for the required minimum distribution the IRS forces out of a pre-tax account after 73. Those estimates measured against inconsistent starting points, and in years with a large required distribution, a slice of real taxable income fell between them and was never taxed. The year’s tax is now computed once, on the income that actually happened, and the money moves with it — less of the forced withdrawal is reinvested, because more of it goes to tax. The same review closed a matching gap: tax-free gain harvesting now counts the required distribution when checking how much 0%-bracket room a year has left. Affects: large pre-tax portfolios in the required-withdrawal years — the corrected, lower ending balances. Locked by a permanent test that independently recomputes every year of every test plan.
August 15, 2026
Fixed: Social Security taxability thresholds now stay fixed, as the law does. The IRS thresholds that decide how much of a Social Security benefit is taxable — $25,000/$34,000 single, $32,000/$44,000 married filing jointly — have been fixed by statute since they were created; Congress has never indexed them for inflation. The engine was raising them with inflation each projection year, so in the later years of a long plan, less of Social Security was taxed than the law calls for — on a $40,000 benefit twenty-plus years out, several thousand dollars a year of understated federal tax. The thresholds now stay put, exactly as the statute does; tax brackets, the standard deduction, and capital-gains breakpoints continue to index, as the law indexes them. Affects: plans drawing Social Security alongside other income — most plans — show somewhat more tax in later years, and success odds may read slightly lower. The new figure is the lawful one. Found in a professional-lens review of the tax engine; locked by a permanent test the same day.
August 15, 2026
2026 annual values trued up; Alabama pension treatment corrected. Two annual IRS/SSA values had carried their 2025 amounts into the 2026 engine and are now current: the Social Security earnings-test limit ($23,400 → $24,480) and the qualified charitable distribution cap ($108,000 → $111,000). Separately, the engine taxed Alabama pension income at the state rate, but Alabama exempts defined-benefit pension income. Affects: early Social Security claimers still working (slightly less modeled withholding), charitable giving above the old QCD cap, and Alabama plans with a pension (less state tax; 401(k)/IRA withdrawals remain fully taxed there).
August 14, 2026
Fixed: the projection's year detail mislabeled required withdrawals. In years where the IRS forces money out of a pre-tax account, the expanded year detail in the app said “No portfolio draws this year” beside the forced draw, and folded the reinvested portion of the withdrawal into the “Lifestyle spending” line — on a large account, that could label hundreds of thousands of reinvested dollars as spending. The money always moved correctly; the labels were wrong. The detail now names the required withdrawal as its own source, shows the reinvested portion on its own line, and the pieces sum to the draw on screen. Affects: display only — every balance, tax figure, and projection was already correct.
August 14, 2026
Fixed: a decimal in an age field switched off required minimum withdrawals. If any age in a plan carried a decimal — 62.25 instead of 62 — the engine computed no required minimum distributions at all: the projection showed pre-tax accounts untouched from the required beginning age onward, no tax on the withdrawals the IRS would have forced, and success odds that ran optimistic because that tax was never charged. Whole-number ages always computed correctly. The IRS divisor table is keyed by whole ages, and a fractional age missed it every year — which the engine silently read as “no withdrawal required.” The lookup now rounds down to the age attained that year, the same way the IRS tables work. The quick-start questions accepted decimal ages without rounding them; the main input screen already snapped them to whole years, which is why most plans never saw this. Affects: only plans with a decimal in an age field. Those projections now show the required withdrawals, their tax and any Medicare surcharge, and the success rate may read a little lower — the honest number. Found through a user report; reproduced and fixed the same day.
August 10, 2026
The AI Advisor now checks which age a Social Security figure is for. If you told the Advisor a benefit amount and named the age you planned to claim — “we’ll both start at 65, and it’s about $2,500” — it could record that as your benefit at full retirement age, which is a different number. The plan then reduced it again for claiming early, so Social Security came out lower than it should have been for the rest of the projection. The field is described to the Advisor properly now, and it is instructed to ask when the age you named is not 67 rather than assume. It will not convert the figure itself — if you give it the cheque you receive today, it points you at the Social Security section, which already back-solves the full-retirement-age amount for you. A regression test holds it in place. Reported by a reader on r/DIYRetirement, who spent an afternoon in the app and wrote up what he found. Who is affected: anyone who gave the Advisor a Social Security figure in conversation and named a claim age other than 67 — worth opening the Social Security section and checking the benefit shown is your amount at 67. The calculation itself did not change, and figures typed in directly were never affected.
August 10, 2026
We now charge your long-term care premium while you are still working. The engine charged an LTC insurance premium only once you retired, so every payment made before that date was invisible to your plan. The test that made it obvious: the projected nest egg came out identical whether the premium was $0 or $10,000 a year. That is the wrong way round for a policy we tell people to buy between 52 and 58 — which means paying for a decade or more before they stop working. Those years are now charged, inflated, and they also cost the growth that money would have earned, which is the larger number: on the plan that surfaced this, 13 years of $2,500 premiums is $32,500 of payments but $65,209 once the forgone growth is counted. Limited-pay policies stop on schedule — set a paid-up age and we stop charging there, in both your working years and retirement. You can watch it happen: the “Building your nest egg” table shows the premium leaving each year, labelled, and every row still adds up on screen. Who is affected: anyone with a premium entered who has not yet retired. Their nest egg reads lower, and it should have all along. Plans without a premium are unaffected to the cent. A second, older fault surfaced with it and is fixed too: the retirement-side premium had been charged in the drawdown but never recorded, so the cash-flow diagram had been short by exactly that premium every year since the field shipped.
August 9, 2026
Your long-term care policy now pays out in your plan. Until now we charged your LTC premium as a cost and modelled nothing on the other side, so buying insurance made a plan read worse. You can now describe what the policy pays — a monthly benefit in today’s terms, an inflation rider, a benefit period and an elimination period — and we net it against the care cost month by month: you pay through the waiting period, the policy pays for as long as its benefit period lasts, and anything beyond that is yours again. The inflation rider turns out to be most of the answer, and it is worth seeing the size of it. A $6,000/mo policy held from 49 and claimed at 87 is worth $1,951/mo in today’s money with no rider, $4,176 with a simple 3% rider and $6,000 with a compound one — 22%, 47% and 67% of an $8,942/mo care bill. Three policies that look identical on a premium statement. That is also why there is no “typical policy” preset to pick from: it would be wrong by a factor of three. We ask for the benefit in today’s terms, so there is no question about when you bought it. The fields appear under Inputs → Healthcare once a premium is entered, only the monthly benefit is required, and if your policy is quoted as a total pool rather than a benefit period there is a converter. Leave it blank and nothing changes — the care cost is charged in full, which is the conservative reading.
August 9, 2026
The long-term care stress now charges care when it happens. A care event is a concentrated late-life cost. We were modelling it as a small monthly increase spread across every year of retirement — the same total money, very different timing, and not a neutral simplification: money taken out decades early forfeits its compounding and raises your withdrawal rate through exactly the years a bad market does the most harm. Measured across our test plans, the spread-out version charged roughly twice the damage of the real shape; on one it showed an 80-point drop where the honest answer is 46. The stress test was overstating a risk that is frightening enough stated correctly. It now charges the cost as a real window at the age care would actually arrive, so most plans will see the care hit get smaller. Three faults in the same card are fixed alongside: its cost slider opened at $6,000/mo (the out-of-date figure we corrected elsewhere in August) and now opens at your own state’s published median; it stopped at $15,000/mo, below the real cost in the most expensive states, so some people could not dial their own number; and dragging it silently switched the model, because the card charged a three-year event while the slider charged a permanent lifetime increase.
August 9, 2026
What your long-term care premium actually does in your plan. If you had entered an LTC insurance premium, the Long-Term Care card told you your coverage was keeping your plan robust. That was not true, and we would rather correct it than let it stand. Here is what actually happens: we charge your premium as a cost, and unless you describe what the policy pays we model no payout at all — so the care cost is charged to you in full and your coverage is never netted against it. Every surface that discussed it now says so, including the AI Advisor, which is instructed never to tell you your policy protects the plan. Where a plan genuinely absorbs a care event the verdict is unchanged; it now credits the plan rather than the coverage. Two smaller fixes alongside: a $2,500 premium was displayed as “$3k/yr insured” and now shows what you entered, and the verdict quoted the national care cost while the simulation charged your own state’s — both now quote your state. Fixing the wording turned up something worse underneath, so that is fixed too: the care-cost stress behind your ranked risks was raising your spending goal in a way the engine ignored whenever spending phases are set, which is every saved plan. It ran, changed nothing, and reported no exposure — so long-term care could never appear among your ranked risks at all.
August 8, 2026
What we record, said plainly. We have replaced our third-party analytics with our own. What gets recorded: which features you open, whether you are a customer, and whether anything crashed — tied to a randomly-generated local ID, never to a name or an email. We now also record a general description of your plan: whether it is for one person or two, whether you have already retired, the goal you chose, and roughly how well-funded it is. Never a dollar figure you entered — money-shaped values are stripped before anything is stored, which is enforced in code rather than promised. Raw records are deleted after 90 days. Why: it is the only way to tell whether a tool we built is reaching the people it was built for, and we would rather hold that ourselves than hand it to someone else. We also corrected the privacy page, which said we had “no backend server and no database.” There is a server — it holds what a purchase needs (what you bought, how much of your AI allowance you’ve used) so it keeps working across your devices. There has never been a database of customers or their numbers. Affects: nobody’s numbers. Your retirement figures still live in your browser, we still never receive them, and we still keep no copy.
August 7, 2026
Your Medicare surcharge is now shown, not just charged. If your income in retirement crosses the Medicare threshold you pay IRMAA — a surcharge added to your Part B and Part D premiums, per person, from 65. The projection has always charged it. It just never named it: the figure was folded into your healthcare cost and then thrown away. It now appears as its own column in the projection table, with a line in the year-by-year detail, both making clear it is part of your healthcare figure rather than an extra cost beside it. The column only exists for plans that actually cross the threshold, so most people will never see it. On our own test plans it reaches $314,997 across a retirement, which is a lot of money to take out of a plan without a label. Worth knowing if you are married: when one spouse dies the survivor is measured against the single-filer threshold on barely reduced income, so the surcharge often rises. We have always modelled that; now you can see it happen. Affects: nothing in your plan changed — no balance, success rate or projection moves by a cent. This reports a cost that was already being charged.
August 6, 2026
How likely long-term care is, stated more carefully. Inside the app, the long-term care card said 70% of people over 65 need some form of care, printed beside a three-year paid nursing-home scenario. Both true separately, misleading together — the 70% counts any help at all, including unpaid care from family. It now uses the federal figure for the kind of care it actually prices: 56% of people turning 65 will develop a disability serious enough to require long-term support. It also states what paid care really looks like — 55% of older adults use none at all, the average paid stay is 0.8 years, and only about 4% reach five years. Source: HHS/ASPE, 2022. No projection or cost figure changed.
August 6, 2026
Long-term care is now priced where you live. Inside the app, the Stress Test priced a severe care event at one national figure. Care costs vary 4.9x across the country — $5,627/mo in Texas against $27,831 in Alaska — and that single figure was more than 20% out for 24 of the 50 states, understating the cost in 29 of them. Your own state’s median is now used, from the CareScout 2025 survey. You can also pick the level of care modelled: home care, assisted living, or a nursing home. If your plan includes moving to another state, care is priced where you will be living. Your projection and saved plan are unchanged.
August 6, 2026
Fixed: your estimated Social Security, and the cost of a long-term care event. If you didn’t enter your own Social Security benefit, the app estimated $1,800/mo for everyone regardless of salary — and on some paths entered nothing at all. It now runs the Social Security benefit formula on the salary you give it and shows the figure used; higher earners often see close to double the old number. Separately, the Stress Test priced a severe care event at $6,000/mo, where a semi-private nursing home room runs a national median of $9,580/mo (CareScout 2025). Your projection and saved plan are unchanged.
August 6, 2026
Fixed: two Inputs buttons that did nothing. Inside the app, since the Inputs sections were made to stay open, two controls stopped working: switching to a household plan no longer opened the Spouse Portfolio section, and “Add detail” left you at the top of Inputs. Both now take you to the section they name. No numbers changed.
August 6, 2026
The ACA subsidy cliff is now measured the same way on both cards. Inside the app, two cards check your pre-Medicare income against the ACA subsidy cliff — the gauge on Roth Strategies and the Pre-Medicare Gap card — and they were adding that income up differently. The gauge left a spouse’s Social Security out altogether; the other left other retirement income out. On a test household where one spouse claims while the other is still bridging to their own claim, the two came out as much as $14,451 apart. The gauge was the one understating, and it is the card you size a Roth conversion against, so it suggested more room under the cliff than you actually had. Both now share one calculation and agree to the dollar. Your projection, success rate and nest egg are unaffected — the engine was never involved; what moved is the income figure those two cards compare against the cliff.
August 4, 2026
Fixed: the Combined Risk Scan said “your plan held up” when it could not tell. The scan asks whether two risks landing together hurt more than the two individual Stress Test cards suggest. If they did not, it said your plan held up — a claim the maths behind it could not support. To find extra damage there has to be some left to do: if retiring early alone takes your plan to 5% and a crash alone takes it to 6%, no combination can be worse than expected, so the scan finds nothing regardless of what is true. It went blind on the plans in the most trouble and reported the silence as good news — on one test plan sitting at 87%, every stacked pair landed at 2% and the card still said it held up. It now says which combinations it could test and which it could not, and an untested pair makes no claim either way. “Your plan held up” appears only when every combination was tested and passed, with the worst pair’s number beside it. Combinations that cannot apply to you collapse into a single line. Affects: anyone who has run the Combined Risk Scan on a plan under strain. No numbers changed — the simulations were always right. What changed is what we say about them.
August 4, 2026
Fixed: we were inflating your mortgage payment. A fixed-rate mortgage is the same cheque every year. Your spending goal is entered in today’s dollars with that payment inside it, so inflating the goal inflated the payment too. We now hold it flat and inflate only the rest of your spending. This started at full size on day one of retirement rather than drifting in slowly: ten years from retirement at 3% inflation the payment was modelled about 34% too high, and on a test plan with a mortgage running to 82 the success rate moves from 52% to 62% — better because it was wrong, not because the plan changed. The “Your home” card now asks whether your goal includes the payment; if it does not, we add it on top instead, still flat. Other Retirement Income has the same option, since a fixed annuity was also being grown with inflation. Not fixed, and worth saying: when spending guardrails cut after a bad market they still cut the mortgage, a payment you cannot reduce — that needs the split between essential and discretionary spending, which we have not built. Affects: anyone with a mortgage in their plan, or a fixed annuity entered as other income. Nothing you entered changed — only how we model it. Verified against all 38 saved test plans.
August 3, 2026
Spending Shape now lifts your whole plan instead of re-carving it. Asked how much more you could afford, this tool used to answer by raising your early-retirement spending and cutting your later years to pay for it — figures you had entered yourself. On one plan it proposed $19,800 a month until 70 and $6,545 after, a shape almost nobody would choose. The arithmetic was right; it was answering a question you had not asked. It now lifts your whole spending curve and leaves your proportions exactly as you set them — every phase moves together. Your result is also priced at every success level, so you can see what each one leaves behind: your success floor has always been the dial between spending more now and leaving more behind, and nothing said so. And where the money runs out in some futures, we now say roughly when, and what you would be living on from then — your Social Security and pension do not stop. Because that is stated in years and dollars rather than as a percentage, you can choose levels below 80% if you want to spend down harder. The search is finer-grained too: it used to report the nearest step below your limit, which could leave up to $750 a month unclaimed, always in that direction and never the other. It now finds the actual number.
August 3, 2026
Fixed: we were charging you to run a house you had not bought yet. If your plan sells your home at one age and buys the next one later — sell at 64, rent a few years, buy at 70 — we were charging the next home’s property tax, insurance and upkeep across all of those in-between years. You do not own a house in those years, so that cost is not real. It came from treating the sale and the purchase as one moment when they are not. Those costs now stop when you sell and start again when you buy, priced for the home you actually buy. On one test plan — a $720,000 house in New Jersey sold at 64, a $320,000 one bought at 70 — that is about $23,500 a year of spending we were adding back for six years, and roughly $279,000 by the end of the plan. You can see it in the year-by-year table: open a year between the sale and the purchase and it now reads “No home to run.” Not one of our saved test plans had a sale age and a purchase age that differed, so nothing we already had could have caught this — there is now one that does. Affects: only plans where the sale age and the purchase age are different. If you buy the same year you sell, or sell and rent from then on, nothing moves — verified unchanged against all 36 saved test plans.
August 3, 2026
Your Next Home can now say “sell, rent a while, then buy”. The Deep Search tool that prices your housing move could only describe two of the four things people actually do: sell and buy again the same year, or sell and rent from then on. It had no way to say “sell at 62, rent until 68, then buy” — or the version where you spend those years in an RV and pay almost nothing. The setup is now one timeline you read as a sentence: sell at an age, buy at an age, and the rent clause appears by itself for the years in between. Your plan has always been able to describe that gap, and the math has always modelled it properly — the money from the sale is invested and compounding through those years, rent is charged only across them, and the next home is priced in the year you actually buy it. It was only this one tool that could not say it. If a gap has nothing charged in it, we now say so plainly rather than quietly pricing several years of free housing. This also fixes something for anyone who had already set a later buy age on the “Your home” card: applying a move from this tool used to overwrite that age with your sale age and drop the rent along with it. It now opens on your own timeline and leaves it alone. Affects: a paid tool. No number in anyone’s plan changes on its own.
August 2, 2026
New: build the housing move you’re turning over, and we’ll cost it. A new tool in the app’s Deep Search. The free Home Equity Workbench compares three paths we name — keep, downsize, sell and rent. This one prices the move you actually have in mind: sell at 64, buy a $380,000 place in Florida, stop a year earlier. It runs that exact combination against your real plan, and tells you what it is worth alongside the most your next home could cost while the plan still holds. Each control shows what changing it is worth, so you can see which ones matter to you rather than guessing, and a move to another state breaks into its parts — income tax, property tax, whether Social Security is taxed there — because “Florida is worth $310 a month” is a slogan and three named figures are something you can check against your own life. There is no star, no ranking and no list of states we think you should move to: the arithmetic would happily tell everyone to sell up and move to the cheapest state in the country, which is true, useless, and not our call. You build the move; we cost it. Affects: a new paid tool. Nothing changes in your plan until you press Apply.
August 2, 2026
You can tell us you’re moving to another state. Plenty of people retire in one state and move to another a few years later — and until now your plan could not say so. It assumed you stayed put for the whole of retirement, which meant we taxed every year where you live today, including the ones you would spend somewhere else. On the “Your home” card you can now set the age you would move and where to. From that year on we tax your plan as that state — its income tax rate, whether it taxes retirement income at all, whether it taxes Social Security — and the years before it stay taxed where you are now. Property tax follows you as well, so a home you buy there costs what it costs there. Retiring in New Jersey and moving to Florida at 70 was worth about $107,000 on one test plan. Set only one half and we leave your plan exactly where it is rather than guess. Affects: only plans that record a move. Everything else is unchanged — verified against all 35 saved test plans.
August 2, 2026
Fixed: our property tax rates were too high, and it flattered selling your home. When we added the cost of running a home (below), property tax came from a set of ballpark rates rather than a published source — the internal note said as much. We have now checked all 51 against the Tax Foundation’s published table (Facts & Figures 2025, Table 32, calendar year 2023, from Census ACS data), and every one of them was wrong — 49 of the 51 too high, by a quarter or more in some states. New Jersey was 2.23% against a true 1.77%; New Hampshire 1.93% against 1.41%. The direction is what matters: because we model the change in running costs when your home changes, too high a rate makes downsizing look like it saves more than it does. On a $700,000 to $300,000 move in New Jersey we credited $1,243 a month of saving where the truth is $1,090 — roughly $46,000 of imagined saving across a retirement, all of it pointing toward selling. That is the last thing this app should do. Rates now come from one published table, cited by year, never blended across sources. Affects: only plans that sell, downsize or move house. Everything else is unchanged.
August 2, 2026
What your house costs to run is now part of the decision. Property tax, insurance and upkeep have always lived inside your monthly spending goal, and the app’s home card said so. That works when you are only comparing — keep and downsize both carry them — but it quietly distorted every decision about the house, because those costs scale with it. Moving from a $700,000 home to a $300,000 one saves roughly $870 a month, which is about the size of the whole answer. Selling and renting was hit hardest: we charged you the rent and kept charging you to run a house you no longer owned. On one test plan that was worth 55 points of success rate. The plan now models the change when the house changes — never as a new expense, since your goal already carries today’s costs. Property tax uses your state’s rate (0.29% in Hawaii, 2.23% in New Jersey), insurance and upkeep are flat assumptions, and you can override the whole rate on the home card if you know your real numbers. Both errors this fixes pointed the same way — toward keeping the house — which is the status quo, so nothing ever looked wrong. Affects: anyone whose plan sells, downsizes or rents. Nothing changes for anyone staying put — verified unchanged against all 33 saved test plans.
August 2, 2026
The free Home-in-Retirement calculator now runs the real engine, and hands off. The calculator on this site worked out keep / downsize / sell-and-rent with a simplified formula — one sustainable-payment calculation, a flat tax, a level withdrawal. It now runs the same three paths through the same engine the app does, year by year, with taxes, healthcare, Medicare premiums and sequence-of-returns risk. On the default scenario that moved the sell-and-rent answer from $1,224/mo to $622/mo: a rent that rises with inflation for thirty years does far more damage than a flat formula can show, and the calculator was overstating that option by nearly double. It also now reports how often each choice actually holds up, which it could not do before. And its button carries your answers into the app — it was the one calculator whose call to action took you to a blank page after you had entered your whole house. Affects: the free calculator only. Worth re-running it if you used it to weigh renting.
August 1, 2026
Fixed: the app’s home explorer could describe a result it wasn’t showing. In the Home Equity Workbench, the sentence above each result was written in advance for each combination of path and goal — so it could state the opposite of the number beside it. Judged on what you leave behind, selling and renting could come out ahead (the money you don’t spend buying again outgrows the rent) while the text still said rent trims what’s left. The figures were correct throughout, including the rent, which is charged for life. Now every claim about whether a path helps or hurts is worked out from that path’s actual result.
August 1, 2026
Your home, as retirement money. A new free explorer in the app’s Stress Test tab. For most people the house is the largest thing they own and the only one paying nothing — and until now we modelled the pieces (a sale, a downsize, a rent) without ever showing you the decision. Keep it, downsize, or sell and rent now run side by side through your real plan, judged by whichever of five things you actually care about: your odds, income now, retiring earlier, what you leave behind, or how a survivor would fare. It opens on the priority you already set. Nothing changes until you press Apply.
Show all 64 earlier entries
August 1, 2026
Reverse mortgages, modelled honestly. From 62 you can now record one and the engine models it properly: the payments are tax-free, they are the same amount for life rather than rising with inflation, the loan clears any remaining mortgage so that payment stops, and the balance compounds against your equity — including the age it would use the equity up. Selling later repays the loan out of the proceeds, and you can never owe more than the house is worth. We also cap what you can model at roughly what a lender would actually advance, so a plan can’t be built on a payment nobody would write. Two deliberate choices: it is never ranked against keeping or selling and never crowned the best option, because it carries more sales pressure than anything else we model and the plans it flatters most are often the ones it serves worst — and the app will never take one out on your behalf. If you already have one it is simply part of your plan, with no warnings attached to a decision you have already made.
July 30, 2026
Fixed: the free Stress Test calculator was modeling almost no inflation. Fixed: since launch, the free Retirement Stress Test calculator on our website — a standalone tool, separate from the app — had its inflation assumption entered as 0.025 where the engine expected 2.5, so it modeled 0.025% inflation instead of the intended 2.5%. It now models 2.5%, and a new automated check compares each free calculator's answers against the app's on every release. The impact depended on your plan: if Social Security and a pension cover most of your spending, the error was roughly neutral, because inflation raises costs and benefits together in our model; portfolio-heavy plans saw survival rates that ran too high (on one test plan, 71% instead of 27%). The value also carried into the app if you opened your full plan from that calculator. Affects: the free Stress Test calculator only — the app and its own Stress Test tab were never affected. Worth re-running the calculator; if you carried a plan from it into the app, check the inflation field in Inputs.
July 28, 2026
Fixed: opening someone else's plan could overwrite your own. Your saved plan is now protected when you open someone else's. If you already have a plan of your own, a plan arriving in a link — one a friend shared, or one carried from a free website calculator — is treated as borrowed: explore it freely, change anything, and your saved plan is untouched. A line at the top offers “Replace my plan with this” (the only thing that will ever overwrite yours) and “Back to my plan”. The same protection covers the example scenarios. Previously, because the app saves on every change, editing a borrowed plan could write it over your own — that is what this fixes, and we're sorry it was possible. If you don't have a plan saved yet, nothing changes: the plan you arrived with is yours to keep. Affects: anyone who edited a shared plan, a calculator arrival, or an example scenario in a browser with a plan already saved. If that happened to you, a copy may still be in Save Scenario or an exported backup.
July 28, 2026
Fixed: visiting a calculator could make your own plan look like it wasn't yours. When you arrive in the app from one of the free website calculators, we note which figures came from you so we never score a plan on numbers you didn't give. That note was stored browser-wide and never expired — so an unrelated tab showing your own plan could claim your numbers came from us, even days later. The note now belongs only to the tab that came from a calculator and clears when that tab closes; any leftover note is cleared the moment you load this version. Affects: anyone who has opened one of our free calculators in the same browser as their own plan. Your figures were never changed, only mislabelled.
July 28, 2026
Fixed: parts of the app scored a plan the rest of it was declining to score. Arriving from one of the free website calculators, the app holds back a success rate until the numbers behind it are yours. Two surfaces missed that rule: the bottom summary bar still announced a success rate, nest egg and surplus built on our placeholders (it now shows “not scored yet” and names what it needs), and the arrival banner computed what you'd given us once, on landing, and never updated (it now recomputes as you type). The wording was corrected at the same time: “you haven't told us what you'll spend” became “the spending here came from us, not from you” — accurate whether you kept our starting figure or were never asked. Affects: only visitors arriving from a free calculator, and only what was displayed — nothing was miscalculated. The following day's change (above) replaced this approach: rather than a half-scored plan, we now ask for the missing numbers up front.
July 28, 2026
Six free calculators now hand you the normal setup instead of a plan we invented. Six of the free standalone calculators on our website — ACA Subsidy, Backdoor Roth, IRMAA, Roth Conversion, Pension Lump-Sum and Social Security — ask nothing about what you've saved or what you plan to spend — so opening the app from them landed on a page of refusals about a plan we had invented (the ACA calculator was sending a $500,000 401(k) for someone it asked only age, income and household size). Those six now send no plan at all: you get the same five-minute setup any new visitor gets and a scored result at the end, with a line at the top naming the calculator you came from. The other eleven calculators collect enough to be worth carrying across and are unchanged. Affects: only visitors arriving from those six calculators — no saved plan, projection or number changed. One rough edge: the Social Security calculator's benefit amount gets asked again in the setup for now.
July 27, 2026
Fixed: required withdrawals were being calculated on the wrong year's balance. The IRS sets your required minimum withdrawal from your balance on December 31 of the previous year. The app's engine was using the balance after that year's investment growth — so every required withdrawal came out roughly one year of returns too high, about 6% in a typical year — and a large mid-year withdrawal could wrongly shrink that year's required amount. Both fixed: the calculation now uses the prior year-end balance, as the IRS defines it. Found while cross-checking the free RMD website calculator against the app's engine. Affects: plans at or near the age when withdrawals begin — numbers change, generally slightly in your favour (we were showing more forced taxable income, and so more tax, than you'll actually have); a few plans move the other way. One limitation we have not fixed: a spouse more than ten years younger as sole beneficiary is entitled to a smaller-withdrawal table we don't yet apply, so those households still see a figure that is too high.
July 27, 2026
Our free calculators no longer hand the app numbers you never gave us. Opening your full plan in the app from one of the free website calculators carries your figures across so you don't retype them — but most calculators were also filling in figures they never asked about. The ACA Subsidy calculator, which asks only age, income and household size, was sending a $7,500/month spending target and a $2,500 Social Security benefit; fourteen calculators did some version of this, and the app scored the result as though you'd given it a complete picture. Fixed: calculators now send only what they genuinely ask, and tag which figures came from you. Where something important is missing, the app says so instead of guessing. Calculators that legitimately pass a computed figure — die-with-zero and safe-withdrawal carry the spending number they just worked out — label it as ours. Affects: anyone opening the app from a free calculator. No saved plan changed — the app's math was never wrong; it was being handed inputs you never gave. You may now see the app decline to score a plan it would previously have scored — that is the point.
July 27, 2026
Fixed: our free calculators had drifted from the app — the Stress Test and Tax calculators now match it exactly. We audited all 17 free standalone calculators on our website against the app after one disagreed with it. Fifteen run the app's real engine; the differences found were bugs, and all made the calculator look kinder than the app. The Retirement Stress Test's “Lost Decade” used a milder definition than the app's (48% survival where the app said 20% on a typical plan), its longevity stress used a different horizon, and its Social Security cut used 25% where the app uses 20% — all three now match the app exactly, and its documentation was corrected. The Retirement Tax calculator computed state tax on a pre-deduction base the app abandoned in May, overstating state tax by roughly $440–$1,630 a year — fixed. The RMD calculator's arithmetic was correct but its framing wasn't: it answers what the IRS forces at 75 if you never draw on the account first, which runs high for anyone who'll spend from that balance beforehand (about 43% high mid-range across 36 test plans) — the headline now says so, next to the number. Three new automated checks now keep all 17 calculators matched to the app. Affects: anyone who used the free Stress Test or Tax calculator before today — re-run it; the new numbers are the ones the app would give you. No saved plan in the app changed.
July 27, 2026
Fixed: the Career-Break calculator under-stated breaks that weren't a whole number of years. The free Career-Break calculator on our website worked in whole-year steps, which understated any break that wasn't a round number of years: a six-month break showed about $12,000 of cost where the real figure is closer to $89,000 (whole-year breaks were always correct). Every break length now matches the full engine within about 1% — partial-year cost figures are higher than before, and they're the accurate ones. The app's own Career-Break Workshop was never affected. Also shipped: the calculator now states the Social Security figure it assumes and passes it through when you open your full plan, and the app opens on exactly the break you were viewing — same length, same spending, same market assumption. Affects: anyone who ran a break that wasn't a round number of years. Whole-year breaks were always correct and are unchanged.
July 27, 2026
Fixed: shared plan links were briefly told they were missing data. For part of today, opening a shared plan link showed “we haven't scored this plan yet” alongside “this plan is on track”, plus wrong summary tiles, even when the sharer had entered everything. A new check that holds back scores when numbers are missing was accidentally applying to shared links, where nothing is missing. Fixed the same day. Affects: nobody's numbers — nothing was miscalculated; the summary was wrong about what it knew.
July 26, 2026
Fixed: money moving before your retirement date now counts — and you can see it. An expense dated before your retirement age — college at 57, a wedding at 60 when you retire at 65 — was being modeled only from your retirement date onward: the entry sat in your plan looking counted while the money was never actually deducted. Fixed. A pre-retirement expense now draws from your accounts in the year it happens (savings, then brokerage, then Roth, then 401(k)), reducing the nest egg you retire on and the success rate that depends on it; an expense spanning your retirement date is handled on both sides. It's visible, too: the “Building your nest egg” table gained a Life Events column, and every row still reads Start + Contributions − Life Events + Growth = End, tying to your nest egg to the dollar. Pre-retirement windfalls — always counted, but previously invisible year by year — now show in the same column. Affects: any plan with an expense dated before its retirement age — your projection now includes it, so those numbers will be lower than before. The checks that missed this now include a hand-computed test that fails if the money doesn't actually move.
July 26, 2026
Multi-year inflows and expenses: model a stream once, not a row per year. Any windfall or one-time expense can now repeat: check “repeats every year until an age”, set the end age, and the plan models a payment or draw every year in that window, each inflated to its own year. Built for deferred compensation, installment sales, structured settlements, multi-year tuition and gifting — streams that previously had to be faked as one lump or entered a row per year. A recurring entry equals the same list of single-year entries to the dollar. Affects: nobody's existing numbers — a one-time entry behaves exactly as before. Enter inflow amounts as what you keep after tax.
July 26, 2026
A career gap now counts against your Social Security record. Social Security is calculated from your 35 highest-earning years, but a modeled career break left the future benefit untouched — flattering anyone whose career won't reach 35 earning years. Now the Career-Break Workshop and Employment Pause solver model the effect: we assume earnings from age 22 to your retirement age (the same continued-work assumption your SSA statement makes), test whether the gap pushes your filled years below 35, and when it does, re-run the actual benefit formula with the missing years removed — through the real 2026 bend points, so high earners lose little per missing year and middle earners more. Both tools show the result either way, including “Social Security: untouched” when a long career absorbs the gap. Affects: only the two break-planning tools, and only if the break would leave fewer than 35 earning years. No saved plan changed.
July 26, 2026
Am I really staying for the insurance? The Pre-Medicare card now answers with numbers. The Pre-Medicare Gap card gained a free scan: the cost of leaving earlier. It runs your real plan at each candidate leave age (55 through 65, plus your planned age) and shows, per age, the bridge length, the net coverage cost in today's dollars — including the ACA subsidies that age's income would earn — and your success odds. Years covered by a still-working spouse's employer plan charge nothing, and in that case the scan says so: your leave date isn't the insurance date; the bridge starts when they stop. The verdict runs whichever way the numbers point — leaving earlier holds up, your planned age is protecting you, or the insurance was never the obstacle and your plan's overall odds are. Affects: nobody's numbers — a free, opt-in scan that changes nothing in your plan.
July 26, 2026
Lived math: the Employment Pause solver now answers the question a human is actually asking. Tester feedback showed the Employment Pause solver was answering “can you technically pay bills to your last dollar” — not a question anyone is asking. Four changes: “can carry” now means your accounts stay above a cash cushion you choose (3, 6 or 12 months of expenses, default 6), not scraping zero; the job-loss lens now assumes a 25% market drop landing with the layoff, on by default with a calm-market view one click away; “starting over” now also means your Social Security record never refills after the gap; and the chart plots whichever constraint actually binds — often how low your accounts get, against your cushion and $0. On one real household the both-out answer moved from 3.5 years to 2.3 under the new defaults — and 1.3 if they'd be starting over after. Affects: only this Deep Search tool. Its answers get shorter and more conservative — that is the correction.
July 25, 2026
Fixed: a wrong bracket label in the free Roth conversion calculator. The free Roth conversion calculator on our website — a standalone tool, separate from the app — was mislabeling the next tax bracket — “the 112% bracket” instead of 22% — when showing how much you can convert before the next dollar lands in a higher bracket. The headroom math underneath was always right; only the label was wrong. Fixed, and caught by a new automated sweep that feeds every embedded calculator hundreds of realistic and edge-case inputs and rejects nonsensical answers; the others came back clean. Affects: only the wording in that calculator — no plan, projection or number changed.
July 24, 2026
Career-Break Workshop — what would time away from work cost you? A new free workshop on the Stress Test tab models time out of work — a layoff, or a sabbatical you're weighing. Pick the gap's length and timing; it pauses contributions, draws living costs from your accounts in the real order (with the pre-59½ penalty where it applies), then runs your actual plan from the dented balances — so sequence risk, taxes, Social Security and guardrails all come from the same engine. It shows the cost four ways (retirement age, income, legacy, downturn margin) and finds the monthly savings that would fully recover. Couples can model either person's break. Affects: no existing plan — exploratory and fully isolated. Free.
July 20, 2026
Fixed: a deliberate 0% is now honored, and a catch-up tax detail. Two correctness fixes from an internal audit. First: a deliberately entered 0% rate — inflation, or an expected return — was treated as “unset” in a few places and quietly replaced with the default; a real zero is now honored everywhere. Second: the catch-up Roth-vs-traditional comparison read Social Security as a monthly figure where it needed the annual one, nudging its recommendation toward traditional. Both fixed and locked with hand-computed tests. Affects: only plans that entered a 0% rate, or that lean on the catch-up recommendation — most plans are unchanged. Engine version bumped, so a saved AI Plan Score will offer a refresh if your numbers moved.
July 20, 2026
Fixed: spouse savings timing for couples with an age gap. For couples where the spouses are different ages, the engine aligned the spouse's projected savings using the difference between the two retirement ages instead of the calendar years between the two retirement dates — correct only for same-age couples. Plans where you're younger than your spouse were understated; plans where you're older were overstated. The fix is verified against hand-computed values in both directions, and this household shape is now a permanent test case in the regression suite. Affects: households where the spouses are different ages — numbers move up (younger-than-spouse) or down (older-than-spouse). Same-age couples and single plans were never affected. Engine version bumped.
July 20, 2026
Where your health coverage comes from before Medicare. A new Household Coverage card captures where your pre-Medicare coverage comes from: your own plan, or a still-working spouse's employer. In the spouse-employer case the engine stops charging a marketplace premium (and the ACA subsidy goes inert) for the covered years — with Medicare's base premium still starting at each person's 65th birthday. You can also flag a high-deductible health plan to unlock HSA eligibility. The AI Advisor reads both, so it never warns about premiums for covered years. Affects: households with a spouse-employer coverage window, or anyone on an HDHP; every other plan is unchanged. Engine version bumped.
July 19, 2026
Fixed: who counts as a high earner for Roth (and the 2026 phase-out numbers). The “use the backdoor” warning compared gross salary to the Roth IRA limit, but the IRS keys eligibility off MAGI, which pre-tax 401(k) and HSA contributions lower — someone at ~$250,000 gross maxing two 401(k)s and a family HSA is genuinely under the limit, and was wrongly flagged over. The check now subtracts those contributions, per spouse. The 2026 phase-out figures shown around the app were also corrected to the IRS values — fully phased out above $168,000 (single) and $252,000 (married filing jointly). Affects: eligibility guidance, not any plan's projected balance. Engine version bumped, so a saved AI Plan Score will offer a refresh.
July 15, 2026
Social Security accuracy for couples: the spousal top-up. The engine now models Social Security's spousal top-up: once the higher earner files, a lower earner receives their own reduced benefit plus the excess of half the higher earner's full-retirement benefit over their own — the SSA excess method, automatic for this demographic. Without it, a lower earner stayed permanently at their small own benefit, which over-priced an early claim and biased the couples optimizer toward both-of-you-delay; with it, the optimizer can find the classic split — the higher earner delays, the lower earner claims early and steps up. Affects: households where one spouse's own benefit is below half the other's full-retirement benefit; equal earners and single plans are unchanged. Engine version bumped.
July 14, 2026
Your pension's survivor benefit is now yours to set. A pension's survivor benefit — the share that continues to the surviving spouse — is a joint-and-survivor election made per pension, not household-wide. So you can now set that carryover percentage separately for your pension and your spouse's (0–100%, default 50%): if you die, your pension carries over at your election; if your spouse dies, theirs carries over at theirs. It threads through both the base household projection and the Survivor Scenario card, replacing a single hardcoded assumption. Affects: households with a pension whose survivor election isn't the default 50%; everyone else is unchanged.
July 14, 2026
Deep Search — Combined Risk Scan: what if two risks hit at once? Plus two new stress cards. Stress cards test one risk at a time so you always know what moved the number — but two risks landing together can do more damage than the two cards suggest, because the first eats the buffer the second needed. The new Combined Risk Scan stacks six research-validated risk pairs against your real plan and reports the joint success rate next to what the cards predict separately. A pair only counts as a finding when it's at least 15 points worse than that prediction, so simulation noise never reads as danger; when a real gap exists, the scan re-runs your worst pair with dynamic spending guardrails on and shows the priced result. Also new on the Stress Test tab: Forced Early SS Claim (claiming at 62 because you need income now) and Sell in a Down Market (your home sells for 20% less exactly when you need the proceeds). Affects: Combined Risk Scan is in the Optimize tab, part of Navigator, opt-in behind a Run button; the two stress cards are free. No calculator math changed.
July 12, 2026
Deep Search — Spending Shape: how much are you allowed to spend? A new optimizer answers how much you're allowed to spend. It searches dozens of spending shapes against your real plan — more in your active go-go years, less later, or deliberately spending down — and finds the most you can spend while your success odds hold a floor you choose (80–95%) and your legacy stays above whatever you want left. The trade is stated plainly: how much median inheritance each extra dollar of living costs. Spend-it-down is honest about its limits — you can't hit exactly zero at an unknown end date. Deliberately not part of Deep Scan's combined optimization: spending more is a values choice, not a free win. In the Optimize tab, part of Navigator. Affects: anyone with a spending goal. Opt-in behind a Run button; no calculator math changed.
July 12, 2026
Deep Search — the Bridge Optimizer (and an ACA fidelity fix). First, a fidelity fix: 0% capital-gain harvesting is federal-tax-free, but harvested gains still count toward the income that sets your ACA marketplace subsidy, and the engine wasn't charging that cost (the on-screen cliff gauges already did). Harvesting on marketplace coverage now reduces your modeled subsidy — if you use gain harvesting and retire before 65, your projection may show a slightly lower balance; that's the correction. Second, the Roth Schedule optimizer grew into the Bridge Optimizer: it searches year-shaped conversion ladders and tests each with and without gain harvesting, since the two moves compete for the same bracket headroom and the same subsidy cliff. A plan is only crowned if it beats yours by more than simulation noise. Affects the fix: plans using 0% gain harvesting with ACA marketplace coverage before 65. Affects the tool: plans with pre-tax savings and a bridge window. Opt-in behind a Run button.
July 8, 2026
Model your savings growing over time (contribution escalation). Under any contribution (401k, Roth, savings, brokerage, HSA, for you or your spouse), a new “Increase this each year” option models contributions that grow by a percentage or a flat dollar amount; tax-advantaged accounts ramp to the IRS limit, then hold. A new “Building your nest egg” table on the Projection tab shows year by year how contributions and growth compound into your nest egg — every row reads Start + Contributions + Growth = End, so you can check the math yourself. A new Smart Move recommends ramping your 401(k) for savers who can't max out today. Affects: anyone still saving toward retirement. Free; plans with no escalation set are unchanged, so your saved AI Plan Score is unaffected.
July 6, 2026
Deep Search — one-click Deep Scan optimizes your whole plan. Deep Scan runs the searched optimizers together — the Social Security claim combination and the multi-year Roth conversion ladder — applies every winner to one plan, and runs a single combined simulation. The moves interact (delaying Social Security reshapes the room for Roth conversions), so the combined gain isn't the sum of the parts; Deep Scan reports the honest joint number, a ranked breakdown of each move's contribution, and your biggest remaining risk, with an Apply-all button. In the Optimize tab, part of Navigator. Affects: households with two Social Security records, or plans with pre-tax savings and a bridge window. Opt-in behind a Run button; no calculator math changed.
July 6, 2026
Deep Search — solve for your goal (the inverse calculator). This works backwards: pick a lever you control — annual savings, savings today, retirement age, spending, or Social Security claim age — and a target you want (95% success, a $1M legacy), and Deep Search finds the exact value that gets you there, with a curve showing where you cross. It's honest at the edges — it says when a target is out of reach with that lever alone, and when you already clear it with room to spare. In the Optimize tab, part of Navigator. Affects: anyone who wants to work backward from a goal. Opt-in behind a Run button; no calculator math changed.
July 6, 2026
Deep Search — your best multi-year Roth conversion ladder. During your bridge years — after you retire, before Social Security — taxable income dips, opening room to convert 401(k)/IRA money to Roth at low rates, and one flat annual amount isn't the best you can do. Deep Search tests filling the 12%, 22% and 24% brackets (staying under the ACA and IRMAA cliffs) across every bridge year, and finds the conversion ladder that leaves you the most, shown as year-by-year bars, optimized on median legacy across 750 simulations. In the Optimize tab, part of Navigator. Affects: plans with pre-tax savings and a bridge window. Opt-in behind a Run button; applies with one click.
July 5, 2026
Plan for how long you’ll actually live (Planning Horizon Workshop). Planning to your life expectancy is a coin flip — by definition, half of people outlive it. The free Planning Horizon Workshop (the “Not sure?” link under Life Expectancy) reads the SSA 2022 survival curve for your age and suggests a horizon you're unlikely to outrun — roughly the age only about 1 in 7 people outlive — with your life expectancy shown alongside for contrast. Couples plan to the last survivor, meaningfully longer than either of you alone. Sex at birth is optional and never saved; one click writes the age to your plan. Affects: anyone choosing a life-expectancy input. No calculator math changed.
July 3, 2026
Deep Search — the best way for the two of you to claim Social Security. For couples, Deep Search tests all 81 combinations of claim ages (each spouse 62 to 70) against your real plan — survivor benefit included — and shows the pair that leaves your household the most, as a heatmap with the winner starred. Most tools optimize a single person or maximize lifetime benefits; this optimizes your actual plan outcome, and captures how claim timing reshapes your bridge-year withdrawals. In the Optimize tab, part of Navigator. Affects: household plans where both spouses have their own Social Security record. Opt-in behind a Run button; no calculator math changed.
July 3, 2026
Deep Search — see what your plan hinges on. Your plan rests on assumptions you can only estimate — investment return, inflation, spending, how long you live. Deep Search runs your plan through better and worse versions of each and ranks which one your outcome is most fragile to, as a tornado chart ("your success rate hinges most on investment return — 6% if it runs against you, 52% if it runs your way"). Pick the goal it measures against — success, legacy, earliest retirement, and more. In the Optimize tab, part of Navigator. Affects: everyone — it surfaces which uncertainty matters most for your specific plan. Opt-in behind a Run button; no calculator math changed.
July 3, 2026
Household plans now run to the longer-lived spouse. Household projections now run to whichever of you lives longer — set each spouse's life expectancy separately — and switch to survivor economics at the first death: spending drops to your survivor goal (default 75% of your monthly goal), the larger of the two Social Security checks is kept, tax filing becomes single, and half of the deceased spouse's pension continues. Previously the plan stopped at your life expectancy with both of you assumed alive throughout. Affects: household plans whose two life expectancies differ — results move (up for well-funded plans, down for tighter ones). Plans with equal ages and life expectancies are unchanged. A saved AI Plan Score will offer a refresh.
June 26, 2026
Qualified Charitable Distributions (QCD) — give from your IRA to charity, tax-free. Once you’re 70½, you can give directly from a Traditional IRA to charity. The gift is excluded from your income (it’s not a deduction — it never shows up as taxable income), satisfies your RMD tax-free, and keeps your MAGI lower — so less of your Social Security is taxed and you can stay under the Medicare IRMAA surcharge cliffs. The honest trade-off: the donated money leaves your legacy. Set a fixed annual amount or check “give my entire RMD to charity” in the Tax section. Affects any plan with a QCD set; plans without one are unchanged.
June 25, 2026
Social Security earnings test — claiming early while still working. Claim Social Security before your full retirement age (67) and keep earning a paycheck above ~$23,400/yr, and the SSA withholds part of your benefit, then restores it at 67. We now model this as an effective later claim age — capturing both the early cash-flow hit and the restored, higher benefit. Affects early claimers who keep working (the Barista FIRE case); other plans are unchanged.
June 25, 2026
10% early-withdrawal penalty modeled for pre-59½ retirement-account draws. Retire before 59½ and draw from a 401(k) or Traditional IRA, and the IRS charges a 10% penalty. We now model it, so early-retirement (FIRE) plans that lean on retirement accounts reflect the real cost. It only bites when taxable + brokerage savings run out before 59½; a toggle removes it if you’ll use a 72(t)/SEPP, the Rule of 55, or a Roth conversion ladder.
June 25, 2026
Survivor and divorce scenarios now use single tax filing. When one spouse passes (or in a gray-divorce scenario), the survivor files as a single taxpayer — compressed brackets, a lower standard deduction, and earlier IRMAA. The Stress Test Survivor and Gray Divorce cards now model this “widow’s penalty,” matching the Results-tab Survivor panel.
June 24, 2026
Medicare premiums are now modeled (post-65). The engine modeled your pre-65 health insurance and the IRMAA surcharge for higher incomes, but not the base Medicare premium itself — so for most retirees, modeled healthcare cost dropped to roughly zero at 65, making the most populous retirement years systematically rosy. Now a "Medicare Premium / mo" field (default ~$400/mo per person — Part B + Part D + a Medigap/supplement estimate) is added automatically from age 65, with IRMAA stacked on top. Tune it down to ~$185 for Medicare Advantage, up for a richer supplement, or to $0 if a retiree plan covers it. Affects: plans with post-65 retirement years — modeled healthcare cost goes up, so the most common retirement years are no longer flattered. Engine version bumped.
June 22, 2026
A still-working spouse's income now counts toward your expenses. When you and your spouse retire in different years — which is most couples — the projection had been treating the whole household as if it stopped earning the day the first of you retired. So if you retired but your spouse kept working a few more years, their paycheck wasn't counted at all: the engine drew down your portfolio (and your bridge cash reserve) to cover expenses their salary was actually paying. For staggered-retirement households this made plans look worse than reality. Now, for each year a spouse is still working, their take-home pay (salary net of their own retirement contributions, taxed as ordinary income) covers the spending need first — so the reserve and portfolio are only drawn when there's a genuine shortfall. We also corrected a related detail: a later-retiring spouse's accounts are valued at the start of the projection and grow forward naturally, instead of being counted at their future value and then grown again. Affects: household plans where the two of you retire in different years and the still-working spouse has a salary entered — success rates and end balances go up, often substantially (a typical case moved from ~95% to 100%). Plans where both retire the same year, or where the still-working spouse has no salary entered, are unchanged. Engine-version tag bumps cached AI Plan Score prose to regenerate against the corrected projection.
June 20, 2026
Roth conversion strategy now reflects both spouses' pre-tax savings. On the Roth Strategies card, the conversion capacity, the recommended sweet-spot amount, and the bracket-fill math were computed from your own pre-tax (401k/IRA) balance only — your spouse's pre-tax was ignored, even though the engine actually converts from your combined household pre-tax (which is why the Projection correctly showed both spouses' funds converting). For couples, this understated how much you could convert — a card capped near $44k/yr that should have read closer to $111k/yr — and where the pre-tax was entirely your spouse's, the card showed no recommendation at all. The card now uses your combined household pre-tax everywhere, so its capacity and recommendation match what the Projection has been doing all along. Affects: household plans with bridge years considering Roth conversions. This corrected a recommendation/display calc; projections, success rate, and end balances are unchanged. Engine-version tag bumps cached AI Plan Score prose that quoted the old conversion figure.
June 20, 2026
Pre-Medicare (ACA) cost and cliff status corrected. The Healthcare Bridge card estimates your pre-Medicare insurance cost and whether your bridge-year income (MAGI) clears the ACA subsidy cliff. Two corrections: the MAGI estimate had treated your whole portfolio withdrawal as taxable income — but the engine draws taxable accounts first, where only the realized gain counts toward MAGI — so it could overstate MAGI two- to three-fold and wrongly flag you as "over the cliff"; and the bridge window had been including post-65 (Medicare) years where the ACA cliff doesn't apply. The card now reads MAGI from the engine's actual draws, ends the ACA window at Medicare eligibility (household-aware), and compares against each year's inflation-adjusted cliff. For many early retirees this flips the verdict from "over the cliff" back to "qualifies for subsidies." Affects: anyone retiring before 65 with bridge years on the Healthcare Bridge card. This corrected a display/analysis calc; projections, success rate, and the engine's actual healthcare modeling are unchanged.
June 8, 2026
Projected legacy now matches the Monte Carlo median exactly. The Leave-a-Legacy projection (Smart Moves) was computed from 750 simulated futures, while the headline "How Your Plan Performs Across 1,000 Futures" chart uses 1,000. Both are the median ending balance — but the different sample sizes produced a small (~5%) gap between the two surfaces, which read as an inconsistency when comparing the same plan. The legacy projection now runs at 1,000 simulations too, so its number lines up with the fan-chart median. Affects: anyone using the Leave-a-Legacy lens. A precision improvement; your projected legacy may shift slightly. Engine math unchanged — same median, larger sample.
June 5, 2026
Earliest retirement age corrected for household plans. The engine's earliest-retirement-age scanner — used by the Smart Moves Retire Earlier lens, the embeddable When-Can-I-Retire calculator, and any surface asking "what's the earliest age my plan hits 85% confidence?" — was scanning candidate user retirement ages but never syncing the spouse's retirement age to each probe. For household plans, this silently kept the spouse's contribution window fixed at whatever the input value was during the scan, biasing results. The scan now syncs both spouses to the probe age while preserving any user-configured stagger (if you set yourself to retire at 62 and your spouse at 67, the 5-year delta is preserved as the scan iterates user retirement age). Single plans are unaffected. Most household plans (where you and your spouse already share the same retirement age in your inputs) see materially the same number; staggered households see a more honest answer aligned with your stated stagger. Affects: household plans on any surface that scans retirement age (Retire Earlier lens, the When-Can-I-Retire embed, AI Advisor questions about earliest age). Engine math at calcRetirement and Monte Carlo level UNCHANGED — the fix is in the scanner only. Engine-version tag bumps cached AI Plan Score prose to regenerate against the corrected scan.
June 5, 2026
Cliff Proximity Gauge corrected: MAGI now shown in today's dollars. The Cliff Proximity Gauge on the Roth Strategies card compares your projected bridge-year income (MAGI) against the ACA subsidy cliff and the five Medicare IRMAA tiers. It had been comparing your future-dollar MAGI — your spending inflated forward to each bridge year — against today's-dollar thresholds, so plans with a long runway to retirement could look like they were over a cliff when, in real terms, they weren't. The gauge now shows MAGI in today's dollars, matching the thresholds, so the comparison is apples-to-apples. The same correction flows to the AI Advisor's read and the PDF/HTML export. Affects: anyone using the Cliff Proximity gauge with bridge years, especially those many years from retirement — the gauge now shows lower MAGI and a more accurate cliff position. This corrected a display only; projections, success rates, and the engine's actual IRMAA tax modeling (which already inflation-adjusts) are unchanged.
June 1, 2026
Future Expenses — plan for weddings, college, car replacement, home repair. Your monthly goal handles ongoing living costs, but retirement also has lumpier outflows — a daughter's wedding, a new car, a kitchen remodel, grandkid college help — that hit your portfolio at specific ages, not every month. There's now a dedicated panel for them in Inputs → Life Events. Add up to 10 entries; each gets a label (optional), an amount in today's dollars, and the age it hits. The engine inflates each amount to its expense year via CPI, then draws from your buckets in the optimal order (Savings → Brokerage → Roth → 401k) — the same waterfall used for home purchases. The amounts surface as a conditional column in the year-by-year projection table with hover-tooltip showing the label, plus a destination block in the cash flow Sankey. Recurring costs (annual vacations, ongoing parental support) belong in your monthly goal — Future Expenses is just for the one-time stuff. The AI Advisor has read access to your list (it can reference "your $30k wedding at 68" in narrative) but can't add or change entries on your behalf — you stay in control. Affects: anyone with planned one-time expenses in retirement. Engine math UNCHANGED for users who leave the list empty — the cascade only fires when a matching age is reached and amount > 0.
June 1, 2026
AI Plan Score credit consumption + Projected Nest Egg HSA + Smart Moves empty-state + stale-export invalidation. Bundle of customer-feedback-driven fixes. (1) The AI Plan Score button could consume 3 credits per click in rare scenarios — server now skips the second increment when the client signals a JSON-parse retry (the original call already charged), a synchronous ref guard at function entry blocks the double-click race that fired the third charge, and the error copy now honestly acknowledges the credit consumed on the first attempt rather than the misleading "No credit was used" message. (2) The Projected Nest Egg donut now includes your HSA balance — it was tracked by the engine since 2026 but only showed up in the spouse-bundled total. Now appears as its own slice with a stage "H" badge (pre-65 it funds healthcare costs first, post-65 it joins supplemental drawdown). (3) For users already retired, the Smart Moves retire-earlier lens now shows a friend-voice empty-state pointing to Weather a Downturn or Leave a Legacy where moves actually apply, rather than rendering an empty workshop block. (4) PDF exports no longer surface stale AI analysis prose (e.g., showing "85%" when current calculator shows different) — the fingerprint that gates cached analyses now includes an engine-version tag that invalidates everything when underlying engine math has been updated. You'll regenerate any analysis that was created before today's update, but you won't be misled by a frozen number that no longer matches your current plan. Affects: anyone using the AI Advisor / PDF Export / Smart Moves card / Projected Nest Egg breakdown. Engine math at calcRetirement / Monte Carlo level UNCHANGED. Engine-version tag bumps cached analyses to regenerate against current numbers.
May 30, 2026
Engine fix: Initial WR field is now load-bearing for the guardrails math. Discovered while smoke-testing the new explore slider: the engine had been auto-deriving the Guyton-Klinger initial WR baseline from year-0 portfolio state every Monte Carlo run, ignoring the value stored in the "Initial WR" field in Inputs. So if a user had manually tuned the field above or below the auto-derived value, it had no effect on engine math — the Inputs panel readout (upper/lower guard thresholds) would compute from the edited value while the engine quietly used a different one. Now the engine honors the stored field: the user CHOOSES the baseline (per the Guyton-Klinger 2006 paper's intent) and the rules calibrate around it. Falls back to auto-derive only when the field is truly absent. The new explore slider on the Lived Experience card now does what it advertises — dragging it to a different value really changes the simulation. Affects: only users with Dynamic Spending Strategy enabled whose Initial WR field differs from the auto-derived year-0 implied WR. For most users (who took the default auto-derived value at Enable), engine output is unchanged. For users who deliberately tuned the field, their plan numbers now reflect the value they actually set.
May 30, 2026
Bug pack: guardrails toggle persists across refresh + Plan Robustness pill auto-opens the GK card. Two user-visible fixes after the new Guardrails card landed. (1) If you'd enabled Dynamic Spending Strategy in Inputs, the toggle was silently reverting on page refresh — the setting was updating React state but never writing to localStorage. Latent slice 19xx-era bug that became visible once the new Results card put a spotlight on whether guardrails were on or off. The toggle, initial WR, band, and adjustment params now all persist correctly across page loads. (2) The "🛡️ G-K active" pill in the Plan Robustness panel header now actually opens the Lived Experience card when clicked. Previously it just scrolled — if you hadn't already clicked the Dynamic Spending tile to expand the card, the scroll target didn't exist yet and the pill silently no-op'd. Also added a behavioral assertion to the GK mechanics verifier (the gk-aggressive-fire persona must produce non-zero median cuts AND raises — guards against the regression class where the engine looks correct shape-wise but produces baseline-only signals). Affects: anyone who has enabled Dynamic Spending Strategy. Engine math unchanged.
May 26, 2026
Historical back-test cash-bucket calibration (closes methodology seam). When your plan runs against a past retirement-stress era, the cash buckets (HYSA / savings, bridge reserve) now grow at the actual historical inflation rate instead of the modern HYSA assumption. Real cash return ~0% matches Shiller's long-run T-bill empirical regularity; floored at 0% nominal to prevent shrinkage during deflation. Slightly conservative in 1980s when T-bills genuinely paid above inflation; unbiased on average. Closes the previously-documented seam. Affects: only the Historical Back-Test card + Workshop. Plans with <10% in cash see minimal impact. Engine math at the standard Monte Carlo / deterministic level unchanged.
May 26, 2026
Historical Robustness Workshop (Stress Test tab). Exploration surface beneath the 24-card scenario grid. Two-knob (start year + stock allocation) running your plan against every eligible historical retirement-start year from 1928 onward. Outcome strip visualizes survival year-by-year; selected-year detail surfaces verdict + end balance + lowest balance year; collapsible balance trajectory chart. Three quick-compare pills (30/70, 60/40, 90/10 stocks) for instant-flip between famous portfolio constructions. The Bengen / Trinity Study methodology, exposed as a proactive optimization tool — not a FIRE litmus test. Affects: new view into existing engine math. Projected numbers don't change.
May 26, 2026
Historical Back-Test scenario card (Stress Test tab). New card adds historical replay to the Stress Test grid. Pick from five canonical retirement-stress eras (Great Depression, 1966 bear, stagflation, dot-com, financial crisis); the ring shows cohort survival rate across the era's rolling window. Detail block names the canonical year's specific outcome. Affects: new card on Stress Test. Projected numbers don't change.
May 23, 2026
2026 IRS limits refresh (contribution caps, tax brackets, IRMAA, ACA). 401(k) deferral $24,500 (catch-up $8K, super catch-up $11,250). Standard deduction $32,200 MFJ / $16,100 single. Federal brackets, LTCG thresholds, IRMAA Medicare-surcharge tiers, ACA premium-credit cliffs all refreshed. Affects: every plan. Most balances drift UP modestly: +$22K–$219K across persona corpus.
May 22, 2026
Coast FIRE workflow support. The FIRE variant where you save aggressively until balances will compound to retirement target, then stop contributing and keep working. Opt-in via Inputs → My Portfolio → "Stop contributing at age." Affects: nothing for existing plans (default 0 = no Coast).
May 21, 2026
Dynamic spending strategy: Guyton-Klinger guardrails. Opt-in academic best-practice. Adjusts annual spending ±10% based on portfolio performance. Historically supported 5–5.5% sustainable withdrawal rates vs the 4% rule. Affects: nothing unless enabled. When enabled, plan robustness typically improves.
May 20, 2026
Basis-adjusted LTCG calculation. Brokerage withdrawals now properly track cost basis. The LTCG over-charge that was present since engine inception is corrected. Affects: brokerage-heavy plans drift UP $38K–$552K at life expectancy.
May 16, 2026
Calculator now supports retiring this year. Lifted the previous gate that required retirement age > current age. Single-year scenarios (retirement age = current age) produce a full projection. Affects: users retiring in their current year now get a projection instead of an error.
May 9, 2026
Monte Carlo determinism via seeded RNG. MC simulations now produce byte-identical trajectories for the same inputs across reloads. Closed the success-rate flicker class. Affects: SR stability across reloads.
May 7, 2026
IRMAA Medicare surcharges modeled. Medicare-eligible (65+) household members above MAGI thresholds get Part B + Part D tier-table surcharges applied. Affects: post-65 healthcare costs in plans crossing the IRMAA thresholds.
May 7, 2026
Pension flat-nominal default. Pensions no longer assume implicit COLA. Most private/corporate pensions are flat-nominal in reality; opt in to COLA via Plan Details checkbox. Affects: pension-bearing plans see lower projected pension value in later years (more accurate).
May 6, 2026
SECURE 2.0 birth-year-aware RMD ages. RMD age 75 for births 1960+, 73 for births 1951-1959 per the SECURE 2.0 Act. Previous static-age behavior corrected. Affects: any plan with pre-tax 401(k) balance; RMD-driven forced withdrawals shift by 2 years for younger cohort.
May 6, 2026
Pre-Medicare healthcare runway fix. Year-0 retirement healthcare cost now properly inflated from today through retirement (not just one year forward). Pre-fix understated long-runway plans by 50%+. Affects: pre-Medicare-retirement plans with long timelines drift UP modest amounts.
May 5, 2026
51-state tax modeling (50 states + DC). Replaced single state-tax percentage with full per-state structure: brackets, deductions, LTCG treatment, retirement income exclusions. Affects: any plan in a non-trivial state. State-impact range can exceed $1M at life expectancy for $1.5M nest egg plans.
Product updates
The last 90 days. Older cosmetic changes are summarised by month.
August 22, 2026
Fixed: the contact form keeps what you typed. Closing the Contact form discarded whatever you had written, so going back to check a figure mid-message meant retyping it — and because clicking outside the box also closes it, a stray click could clear a long message with no warning. Your draft now survives closing and reopening the form. It stays in the browser tab only: it is never saved to your device, and it clears when you send the message or close the tab.
August 13, 2026
You now get a confirmation when you buy. Coming back from the payment page, the app used to say nothing at all — your access arrived quietly a moment later and that was it. It now tells you what you bought and what it opens. The more useful half is underneath: access is granted by a message from the payment provider that arrives separately from your browser being sent back, and if your browser got back first, the app could briefly read you as not having paid — and show the free version, upgrade prompts and all. It now waits for the confirmation to arrive rather than concluding anything, never takes access away while it waits, and if nothing has arrived after fifteen seconds it says plainly that your payment went through and points you at us — rather than leaving you to guess whether to buy again. Affects: anyone buying Navigator, Advisor Plus or Advisor 365. Nothing about pricing, credits or existing access changed.
August 12, 2026
Fixed: the AI Advisor could go blank mid-conversation. When the Advisor offered to make a change for you, it drew a short preview of what would change before you pressed Apply. If the Advisor described that change in a slightly different shape than the preview expected, the panel stopped drawing and went blank. Reopening it or starting a new chat brought it back, and nothing in your plan was altered — but the answer you were reading was gone. It now ignores a change it cannot read rather than stopping, so the reply and its buttons stay on screen; the preview is unchanged when the change is well-formed. Affects: anyone who used the Advisor, most often on the Projection tab. Nothing was applied to a plan by mistake, and no projected number changes.
August 10, 2026
Your Results page now tells you what we noticed. Results used to open on six cards we picked for you, and the picking was thinner than it looked: when a plan did not have six things worth raising, we filled the gaps from the top of the card list. It now opens with what we actually found in your plan, in the order it happens — the year a spouse’s paycheck stops and the portfolio takes over, the year required withdrawals start pulling out more than you need, the year your tax bill jumps and why, the years before Medicare you are buying your own cover. Each one says what it means and links to the tool that acts on it. The cards are all still there, under the filters below. Most of these sit between two cards rather than inside either one — a mortgage running past your retirement date is a housing fact, a spending fact and a sequence-of-returns fact at once — which is the point: none of it needs you to know what to look for. If nothing applies to your plan, it says so plainly rather than inventing something. Who is affected: everyone, on the Results tab. No projected balance, success rate or input changed.
August 6, 2026
The AI Advisor interrupts less. Inside the app, the advisor used to ask for your attention whenever it had something it could say about the tab you had just opened, or whenever your success rate crossed a band — both of which were telling you things already on the screen in front of you. It now speaks up for two things only: a paid analysis that no longer matches your plan, and a change of yours that quietly did something you would not have spotted. Nothing was taken away from what it can tell you; opening the advisor still starts on whatever you were looking at. On a phone it is now a small icon in the bottom corner instead of a tall tab down the side, and it no longer opens a speech bubble beside itself. No numbers changed.
August 6, 2026
Success rate colours now mean the same thing everywhere. Inside the app, the footer on the Inputs tab used a different colour scale from the Results banner, so the same plan could read red in one place and orange in the other. There is one scale now. No numbers changed. The free standalone calculators on this site also pick up the same header as the rest of the site.
August 5, 2026
Smaller fixes. The app’s Inputs summary cards said “Add” for an account that exists but has no balance yet — a new 401(k) you are contributing to now reads $0. The Deep Search greeting retires once you have run something.
August 5, 2026
Readable chart scales, and a tidier Inputs tab. No numbers changed. The Projection chart’s dollar scale was painted over by the bars, so it only appeared while you hovered — it is readable at rest now, and the Monte Carlo scale on the Stress Test tab matches it. “Balance Percentiles by Age” has moved from the bottom of the Stress Test tab into the Monte Carlo card it describes. On the Inputs tab, section headers no longer clip under the tab bar, and doubled borders, short columns and overlapping corners are fixed; adding spending guardrails now takes one step instead of three. Three summary cards sit at the top of Inputs — Household, What you own, The plan — and any row you have not filled in asks for the number rather than showing a zero. Saving a scenario, exporting one, backing up everything and restoring from a file are now one set of controls. Affects: everyone, visually. No numbers changed — verified against all 38 saved test plans.
August 5, 2026
Your home moved to Results. The Home Equity Workbench — the free tool that compares keeping your home, downsizing, and selling and renting, each run through your real plan — used to sit on the Stress Test tab. It is now on Results, under Income, as a card called “Your Home.” The Stress Test tab is where you make one change and watch your number move; your house is not something that happens to you, it is a decision you make, and it belongs beside the rest of what you own. The card shows your equity and the housing plan you have already set, so you can see where you stand without opening anything; open it and the full comparison is exactly as it was. “Sell in a Down Market” stays a Stress Test card, because a soft market when you need to sell is something that happens to you. Affects: anyone with a home in their plan. Nothing about your numbers changed — only where the tool lives.
August 2, 2026
The AI Advisor can now see your home. Asked whether selling and renting beats buying somewhere smaller, the advisor answered with a general principle — that renting loses over a long retirement — which was the opposite of what the app had already calculated for that person’s plan. The cause was that it could not see the house at all: not the value, not the mortgage, not what you plan to do with it, and not a reverse mortgage if you have one. It now sees all of it, including the figures the Home Equity Workbench works out for your three paths once you have run it, and it answers from those rather than from a rule of thumb. Where it has no figures it says so and sends you to the tool instead of guessing. It also knows the Employment Pause solver exists, which it previously did not, and it can see whether each pension carries over to a surviving spouse — a 0% election is a real hole in a survivor plan that it was reasoning past. A new automated check now runs on every release: any figure the engine reads must be visible to the advisor, so it can never again discuss a plan it cannot fully see. Affects: what the AI Advisor knows. No projection or number changed.
August 1, 2026
Fixed: the app’s tools now open on the priority you set. The Social Security claiming explorer always opened on “Legacy” regardless of what mattered most to you; it now opens on your stated priority and tells you it did. And when you haven’t told us what matters most, Smart Moves, the Progress lens grid and the AI Advisor no longer assume it is retiring earlier — they start from safety, the honest default for a priority you declined to give. Four goal colours also gained proper light-mode values; one had been rendering close to invisible on the Stress Test tab in light mode.
July 31, 2026
The AI Advisor handles personal news more carefully. If you tell the advisor something difficult — an illness, a diagnosis, a death in the family — it now acknowledges what you’ve said before it shows you anything, rather than answering with a card or a number. It won’t make assumptions about anyone’s health or how long they have, it won’t turn a passing mention into an analysis you didn’t ask for, and it never raises the subject on its own. Ordinary planning questions are unchanged: ask what happens to your spouse if you die first and you’ll get the same direct answer, and the same card, as before.
July 30, 2026
Fixed: some figures in the app were unreadable in light mode. Verdict colours — green, gold, orange, red — were written for the dark theme and used unchanged in the light one, leaving some text nearly the same shade as the background behind it. Twenty-seven pieces of text on the Results tab measured below the readable-contrast floor. Every verdict colour now has a light-theme counterpart, the grey used for secondary text is darker in light mode and lighter in dark, and two selected-state buttons that drew black text on a filled background now flip with the theme. Two small labels remain marginal. Dark mode was audited the same way and came back clean. A check measuring every piece of text against its actual background, in both themes, at the full 4.5:1 standard now runs on every release. Affects: anyone using the light theme, and only what was displayed — no projection, saved plan, or number changed.
July 30, 2026
A new chart in the app’s Progress tab, and the visual refresh reaches the rest of it. Progress now opens with your plan drawn as a line across every check-in you have saved — success rate, nest egg, monthly income or gap to your goal, whichever you pick. It reads only the figures each check-in already stored, so it works on the history you have and collects nothing new. Where the line falls, it names a cause only when exactly one of your tracked inputs changed between those two check-ins; if several moved, it shows the dip and stays quiet rather than guess. Alongside it, the refresh described below reached the rest of the app: cards, panels, charts and callouts across Results, Projection, Stress Test, Compare and Progress now share one visual language; every chart was redrawn at full resolution so its labels are crisp rather than blurred; the explore sliders inside cards rest behind a labelled control until you open them, and close again when you are done; and the light–dark switch is a single day–night chip. Three fixes ride along: “How we calculate this” on the results banner now lands on the Monte Carlo section that computes your success rate instead of the top of the document (this had been affecting every link into the methodology, including the ones the AI Advisor offers); the Social Security Income Gap card no longer shows a permanent “Review and apply 1 change” for a change you never made; and this changelog was printing raw formatting marks around the “Affects” line of eight past entries. A follow-up pass corrected spacing throughout: several panels and controls were sitting flush against the divider line above them (an inline style was holding their top margin at zero, which no amount of styling elsewhere could override), on the Pre-Medicare card the spouse-coverage note was being drawn inside the age row itself — which pushed the ages into a stack against the right edge — and on Progress the income-makeup donut’s centre total was wider than the ring it sits inside. An automated check now runs on every release for both of those layout faults, so they cannot quietly return. Affects: how the app looks, plus one new chart on Progress. No projection, saved plan, or number changed.
July 30, 2026
A cleaner look for the app — same numbers, same math. The app got the first of several visual refreshes bringing it in line with this website's design: quieter panel headers without emoji icons, headline numbers set in the site's serif style with color reserved for figures that carry a judgment, softer open layouts inside expanded cards with longer explanations behind a "show more" toggle (nothing was removed — every explanation is one tap away), and charts redrawn at full resolution so text in them renders crisp. Affects: visual styling only, in both dark and light mode. No projection, plan, or number changed — the engine's math is verified unchanged against all 32 saved test plans on every release.
July 29, 2026
Arriving from a calculator now takes you to a real result, or to the questions that get you one. Arriving in the app from one of the free standalone calculators on our website now routes on what you actually entered, not which calculator you used. Every arrival gets a short introduction naming the calculator and the question that brought you. If the figures behind a real answer are genuinely yours, you go straight into the app with your result. If not, you get the same five-minute setup any new visitor gets, pre-filled with the numbers you did give and asking only for what's missing. Three smaller changes shipped with it: the setup no longer offers example plans on calculator arrivals; finishing the setup clears the arrival link, so a refresh keeps your answers; and the Retirement Tax calculator now passes along the Social Security figure you type into it. Affects: only visitors arriving from a free calculator. No saved plan, projection or number changed. If you already have a plan saved, none of this applies — a plan arriving in a link is still borrowed, and yours stays untouched.
July 29, 2026
Fixed: the AI Advisor didn't know what today's date was. The advisor's instructions never included the current date, so it fell back on the date its training ended — and computed ages from birthdates a year low. Every conversation now starts with today's date, and when you give a birthdate the advisor reads the computed age back to you, so a typo or a near birthday gets caught in conversation. This never touched the projection: the engine works from the ages stored in your plan, not the advisor's arithmetic, and is checked against saved test plans on every release. Affects: anyone who described their situation to the advisor using dates rather than ages — worth checking your ages in Inputs.
July 29, 2026
Where your plan lives, said plainly. A new note at the bottom of the Inputs tab explains how your plan is stored: it saves itself in this browser as you type, so there's nothing to press; bookmarking the page is how you come back to it; and “Save this scenario” is for keeping versions side by side to compare, not for keeping your work safe. It also names the one thing that loses a plan — clearing your browser's site data — and that we keep no copy, so there's nothing we can restore. Affects: nobody's numbers — nothing about how your plan is stored changed; it just wasn't explained anywhere.
July 26, 2026
Deep Search, more readable: every choice visible, and results that lead with the answer. Two Deep Search tools traded cramped dropdowns for visible pill controls: Solve for Goal shows all seven levers at once, each tagged by kind, and Spending Shape lays out its success-floor and leave-behind choices the same way. The break-planning results were also re-ordered — verdict, headline number, chart and next step first, with the dollar receipts always visible below and the assumptions one tap away under “what this assumes”. Settings now stay put while you move between the free workshop and the paid solver for the session, and reset on reload. Affects: nobody's numbers — presentation only.
Show all 19 earlier entries
July 22, 2026
The Inputs tab, rebuilt: only what's in your plan, and one timeline for your life events. The Inputs tab now shows only what you actually use. Each portfolio opens with the person — age, salary, timeline — then one card per account you hold; unused accounts wait behind a “+ Add” button. Spending rests as one line stating the shape your plan actually models, with the phase editor and guardrails a tap away. The accordions are gone — every section is simply open (your browser's own Find works across the whole plan again), with a strip at the top naming the plan you're looking at. Life Events reads as a timeline, one-time expenses included, saved as you type. Pensions and inheritances live with their owner, and Healthcare has its own section. Affects: nobody's numbers — no math changed, and every saved plan shows its accounts automatically, with no re-entry.
July 16, 2026
Your plan is yours to keep: export, back up, and import. Everything lives in your browser — no account, no server copy — so your data is now portable: export your current plan, back up everything (every scenario plus your check-in history) to one file, and import any of it on another machine. Progress history exports and imports free; full backup and plan export are on the paid tier; importing is always free, because restoring your own data should never be gated. Backups leave out identity and paid-unlock, so a file can't clone access. In the Inputs toolbar and the Progress tab. Affects: nobody's numbers — no calculator math changed.
June 2, 2026
CAPE blend disclaimer added to Guyton-Klinger methodology + glossary. The methodology section on Guyton-Klinger guardrails and the glossary entry now include a dedicated disclaimer explaining what the engine does and doesn't do with start-year CAPE (Shiller's cyclically-adjusted P/E ratio). The Pfau (2010+) and Karsten Jeske's "Big ERN" SWR series (2017+) bodies of work argue that high-CAPE start years materially compress safe withdrawal rates. The engine does NOT read your start-year CAPE; the 5.0% Smart Moves cap is the conservative-end anchor that hedges against this uncertainty. The disclaimer stays neutral on whether today is a high-CAPE environment (changes year-over-year, requires citing a specific source, and the conservative anchor's defensibility doesn't depend on the answer). Affects: anyone reading the Guyton-Klinger methodology or glossary entry. No engine impact.
June 2, 2026
Future Expenses surfaced in the cash flow Sankey. When a future expense fires in a given year, the Sankey now shows it as a destination block on the right (warm orange — distinct from red taxes and bridge-amber sources) with the expense label inline. The source side (savings / brokerage / Roth / 401k withdrawal blocks) reflects the cascade draws that actually funded the expense, so the Sankey's year-flow accounting reconciles. The narrative caption beneath the Sankey names the expense by name when one fires that year. Affects: anyone using Future Expenses. Engine endBalance byte-identical — only per-bucket record fields surface the cascade draws that the engine was already making.
June 1, 2026
Bad-sim narratives on the Guardrails card: see the actual cut-fire sequence. If you have Dynamic Spending Strategy active, the GK Results card now surfaces a concrete bad-sequence story above the spending trajectory chart. Instead of just aggregate counts ("median 6 cuts"), you see the actual ages where cuts fired in your worst-lived-experience simulation: "In a tough sequence, cuts fired at ages 61, 62, 63, 64, and 68 — 7 years below your stated goal across this retirement, with 4 of those consecutive." When prosperity boosts also fired in that same sequence, those ages are surfaced too. The selection picks the surviving simulation with the most below-target years — the worst-lived experience among plans that ultimately succeeded — so you're reading a real story that the engine's math actually produced for your inputs, not a worst-case hypothetical. Affects: only users with Dynamic Spending Strategy enabled. The narrative section hides itself when no surviving sim has any below-target years (clean plan, GK rarely fires).
June 1, 2026
Lived Experience Under Guardrails card responsiveness to user feedback. Three updates to the GK Results card driven by careful-tester feedback. (1) The "Years below target" tile now uses three-tier severity coloring: default text under 30%, amber 30–50%, red 50%+. The previous binary amber-only threshold underweighted the lived-experience cost when 80–90% of retirement years fall below stated goal — that's a red-severity outcome, not amber. (2) The "Worst-10% spending floor" tile now surfaces a concrete context line below the value: the dollar gap and percentage below your stated monthly goal, instead of the abstract "sustained low" label. Makes the floor's lived meaning legible at a glance. (3) The methodology section on Guyton-Klinger and its glossary entry now explicitly name the post-2008 research-community critique (Pfau 2010+, Karsten Jeske's "Big ERN" Safe Withdrawal Rate series 2017+) acknowledging that the 2006 paper's safe-start range was calibrated against pre-2008 market valuations. The 5.0% Smart Moves cap respects this critique; users at 4–5% effective WR should know they're operating in the contested research window. Affects: only users with Dynamic Spending Strategy enabled (for tiles 1+2), plus anyone reading the methodology / glossary for the GK strategy (for the critique disclaimer). Engine math unchanged.
May 31, 2026
Review and apply your SS Income Gap exploration in-card. The SS Income Gap toolkit on the Results tab has 11 sliders and toggles spanning part-time income, home sale earmark, cash reserve, and inheritance / other-lump-sum bridge routing. Users can now review and commit all in-card changes from inside the panel — no need to navigate to Inputs and re-find each field. As sliders move, a "Review and apply N changes →" button appears at the bottom. Clicking opens a summary listing each modified field with the current → preview value and a checkbox per row. Uncheck any rows you don't want to commit, then Apply — only the checked changes write to plan inputs. The panel is still a workspace for exploration; the review summary is a single commit moment when you're ready. Affects: anyone with a Social Security bridge period using the SS Income Gap toolkit. Engine math unchanged. The Inputs tab still works as before for direct field editing.
May 30, 2026
Initial WR explore slider on the Guardrails card. The Lived Experience Under Guardrails card now has an in-card slider for Initial WR (the baseline withdrawal rate the rules are calibrated against). Drag the slider to a different value — the app runs a fresh Monte Carlo at that baseline and shows preview tiles: years below target, median cuts, success rate, each with a delta vs your saved plan. Click "Apply to inputs →" to commit, or leave it as exploration without commitment. Replaces the prior "Tune guardrails settings →" link that broke the explore-without-commitment pattern every other Results card uses (Plan Robustness cash reserve, Income Picture monthly goal, SS Claiming Strategy, etc.) — users had to make a settings commitment just to see what a different baseline would do. A smaller "Open full settings in Inputs →" link is preserved at the bottom for tuning the band (±%) or adjustment (cut/raise size), which the in-card slider doesn't expose. Affects: only users with Dynamic Spending Strategy enabled. Engine math unchanged. AI Advisor knows about the slider and can suggest specific Initial WR values to explore.
May 30, 2026
Lived-experience metrics on the Guardrails card: years below target + clustering. The Lived Experience Under Guardrails card now leads with a lived-years metric instead of a rule-fire count. Where the headline tile previously said "Median cuts: 6 over 21 yrs" (mechanism — how often the rule fires), it now says "Years below target: 5 of 21 yrs" (consequence — how often spending falls below your stated goal). Same underlying simulation data, different cognitive load. The original cut/raise counts stay surfaced as supporting mechanism stats below. Plus a new "Median below-target stretch" stat captures clustering — whether your lean years run consecutively (sequence risk in action) or spread out across retirement. Reframe came from a contact who pointed out retirees think in lived years, not simulation events. Affects: only users with Dynamic Spending Strategy enabled. Same Monte Carlo data, just aggregated differently. Output unchanged when guardrails are off.
May 30, 2026
AI Advisor coordinates the projection tab across surfaces. When the AI Advisor highlights a specific year in your projection (e.g., "let's look at age 75 when RMDs start"), three surfaces now align to that year together: the table cells highlight + auto-scroll to the row, the row's detail panel auto-expands to show income / bucket sources / draw breakdown, AND the cash flow Sankey above the table snaps to the same year so its sources, destinations, and narrative caption all reflect what the AI is pointing at. Particularly useful for conversations like "walk me through my bridge years" or "what does my RMD year look like?" — you see the full year's story (table → detail → Sankey flow) without having to navigate to each surface manually. Affects: anyone using the AI Advisor on the Projection tab. The buttons paired with year-highlights also now work correctly when you're already on the Projection tab (previously they could be silent no-ops in that specific state). You retain manual Sankey control — prev/next/slider clicks still work; AI sync only fires on new highlights.
May 30, 2026
Lived Experience Under Guardrails (Results tab). If you've enabled the Guyton-Klinger dynamic spending strategy (shipped May 21), a new card on the Results tab shows what your retirement would actually feel like under the rules. The strategy's existing surfaces (Smart Moves entry, Inputs toggle, Stress Test card, projection Strategy column, Plan Robustness pill) all announce that guardrails exist and let you toggle them — this card surfaces the lived tradeoff in three layers: your lived spending across simulated retirements with bands and your stated monthly goal as reference; per-year frequency of cut / baseline / raise rule fires (so you can see when cuts cluster — sequence risk in action); and side-by-side comparison of your plan running with vs without guardrails. Makes the strategy interpretable, not just optional. Affects: only users with Dynamic Spending Strategy enabled. The Monte Carlo engine was extended to track per-year spending and rule-fire frequency across sims when guardrails are active; output unchanged when off.
May 28, 2026
"Why this isn't a subscription" — new four-promises modal documenting the anti-SaaS posture. A self-contained modal accessible from a callout in the marketing-page differentiator section, spelling out the four commitments behind the pricing and data architecture: one-time purchase, local-only data, no account required, open math. Deep-linkable at /#promises and via the /promises short URL. Affects: marketing-page content surface. No changes to operational behavior, pricing, or data handling — this documents the existing posture explicitly.
May 28, 2026
Add-on products renamed and repriced. Top-up renamed to Advisor Plus and repriced from $9.99 to $29 (still +10 deep analyses and +25 AI Advisor conversations, still stacks with no expiry). Navigator Annual renamed to Advisor 365 and repriced from $49 to $79 (still 365 days of unrestricted AI Advisor use, still no auto-renew). Names now tie to the AI Advisor surface they extend; new prices reflect the actual cost basis of the AI Advisor capacity over time. Affects: Top-up modal copy, Terms of Use, FAQ, About page, and post-purchase emails.
May 27, 2026
Navigator Annual: "unrestricted use" framing restored; Terms made explicit about background bounds. Marketing copy now describes Navigator Annual as unrestricted use — matching what normal users experience under the bounded mechanics shipped earlier today. The Terms now spell out the specific background bounds (per-conversation exchange caps, context resets, per-IP rate limits, output length caps, system spending alerts) and reserve a right to contact subscribers whose usage patterns suggest abuse. Affects: Navigator Annual marketing copy and Terms of Use. Operational behavior unchanged from the earlier ship today.
May 27, 2026
AI Advisor conversations now start with fresh context. When a conversation reaches its per-session exchange cap, the message history is cleared as the next conversation begins — aligning behavior with the per-conversation structure described in the Terms. A short toast surfaces the rotation; the server enforces a 50-message ceiling as a safety net. Affects: every AI Advisor conversation across all tiers. Implementation now matches what the Terms imply.
May 24, 2026
AI Advisor responses now more consistent across sessions. Internally pins the model's temperature parameter to a lower value — same trust-grounded reasoning, less per-session randomness in phrasing. Affects: every AI Advisor conversation. Substance unchanged; phrasing more stable.
May 23, 2026
New visual: Cliff Proximity Gauge on Roth Strategies card. For plans with bridge years, shows live MAGI position vs ACA cliff + 5 IRMAA Medicare-premium tiers. Drag the Roth conversion slider and watch the marker. Affects: visualization addition for plans with bridge years. Numbers unchanged.
May 14, 2026
Web Worker migration complete. All heavy Monte Carlo computations now run off the main thread. Heavy lenses, cohort comparisons, and snapshot saves no longer freeze the UI. Affects: UI responsiveness; no projection number changes.
May 11, 2026
Intent-driven Smart Moves — four lens system. Retire Earlier / Spend More / Leave a Legacy / Weather a Downturn. Each lens optimizes through its own currency; you pick the lens that matches your goal. Affects: Smart Moves card on Results tab — replaces prior pattern-grid with lens-aware optimization.
Every term, sourced
45 retirement-planning concepts, defined and cited
From RMD and Roth conversion sweet spot to bridge reserve, IRMAA tiers, plan robustness, Guyton-Klinger, Coast FIRE, and historical back-testing — each term explained, sourced to authoritative references where applicable, and cross-linked to related concepts.
The 25 most-asked terms are below — all 45 are defined in the app, cross-linked to the numbers that use them.
Deep Search (Searched Optimizers)
The paid optimizers in the Optimize tab that run hundreds of scenarios against your real plan to find the best strategy for one decision — the couple's Social Security claim, your coordinated bridge plan (Roth conversions + gain harvesting), what your plan hinges on, solve-for-any-goal, how much you can really afford to spend, whether two risks compound (the Combined Risk Scan), and the one-click Deep Scan that combines the legacy-seeking ones. Unlike a rule of thumb, every candidate is a full Monte Carlo run of your actual plan. It changes nothing about how your plan is computed, so it never affects your AI Plan Score. Part of Navigator.
Navigator — Optimize tab · methodology §31
Contribution Escalation (Ramping Savings)
Real savers raise their contributions as their income grows — contribution escalation models that instead of assuming a flat amount forever. Pick any account (401k, Roth, savings, brokerage, HSA, for you or your spouse) and set it to climb each year, by a percentage that tracks your raises or a flat dollar step; tax-advantaged accounts ramp to the IRS limit, then hold. A "Building your nest egg" table on the Projection tab shows, year by year, how your contributions and growth compound to your retirement-day nest egg — every row reads Start + Contributions + Growth = End, so you can validate the math. Free. A Smart Move also recommends ramping your 401(k) for savers who can grow into the max over time.
RetirementScenario.com — Inputs tab
Required Minimum Distribution (RMD)
Tax-deferred retirement accounts (Traditional IRA, 401(k), 403(b)) require minimum withdrawals starting at a specific age. Per the SECURE 2.0 Act, the age is 75 for births 1960 and later, 73 for births 1951–1959. The IRS Uniform Lifetime Table divisor determines the annual amount.
IRS Pub 590-B
Planning Horizon (Longevity Risk)
The age your money actually needs to last to — deliberately NOT your life expectancy. Life expectancy is a coin flip (by construction, half of people outlive it), so planning to it means a 50% chance of running short in your final years. Your planning horizon is a survival-percentile instead: an age only a small, chosen fraction of people like you reach, read from the SSA 2022 Period Life Table. For couples it’s the last-survivor age — the joint “at least one alive” curve sits above either spouse’s own, so a household’s honest horizon is longer than either individual’s. The free Planning Horizon Workshop suggests one and writes it to your plan; the period table slightly understates future longevity (a conservative direction) and is age + sex only, so healthy or long-lived profiles should lean cautious.
SSA Period Life Table 2022 (2025 TR)
Qualified Charitable Distribution (QCD)
A direct gift from a Traditional IRA to a qualified charity, allowed once you’re 70½. It’s excluded from your income (not a deduction — it never appears as taxable income), counts toward your Required Minimum Distribution tax-free, and lowers your MAGI so less Social Security is taxed and you can stay under Medicare IRMAA surcharge cliffs. The donated principal leaves your estate. Must come from an IRA, not a 401(k); annual limit ~$111,000 (indexed).
IRS Pub 590-B · IRC §408(d)(8)
Roth conversion sweet spot
The annual Roth conversion amount that fills available tax-bracket headroom during bridge years (post-retirement, pre-SS-claim) WITHOUT crossing into a higher bracket OR triggering IRMAA Medicare surcharges. The engine computes this per-year based on your specific income mix.
IRS Pub 590-A · 26 U.S.C. § 408A
Bridge period
The window between retirement and Social Security claim (often retirement age → SS claim age = 1–10 years). During bridge years, the portfolio shoulders the full spending burden — no SS income yet. Tax-bracket headroom typically opens up for Roth conversions.
SSA
Bridge reserve
Cash buffer (savings, HYSA, money market) drawn first to fund spending during bridge years. Protects portfolio against sequence-of-returns risk — letting investments recover after early downturns rather than selling at losses.
Withdrawal order
The tax-optimal sequence: bridge reserve → savings → brokerage → 401(k)/Traditional IRA → HSA (post-65) → Roth IRA. Drawing taxable accounts first preserves tax-advantaged growth as long as possible; Roth last minimizes lifetime tax.
Bengen 1994 · Kitces / Pfau research
Tax diversification
Holding retirement savings across three tax buckets: pre-tax (401k/Trad IRA — taxed on withdrawal), Roth (after-tax — tax-free withdrawals), and taxable (brokerage — capital gains). Provides withdrawal flexibility year-by-year as tax laws and income brackets change.
Monte Carlo simulation
Statistical method that runs many randomized scenarios (1,000 sims in this app) to estimate the probability your plan funds your full retirement. Returns Success Rate %, fan chart of possible outcomes, and worst-case tail.
Industry standard since Bengen 1994
Stress test
Modeling how your plan performs under adverse conditions: market crash in year 1 of retirement (sequence-of-returns risk), high inflation, longevity beyond planning horizon, healthcare cost surge. Reveals plan robustness vs hidden fragility.
AI Plan Score
The AI Advisor's qualitative weighting of plan strength. Weighs Monte Carlo success rate as the base, with material adjustments for sequence-risk exposure, account concentration, spending sustainability, and SS timing. Distinct from raw MC SR — the AI score factors holistic concerns.
Cohort benchmark
Comparison of your retirement plan against the median saver in your demographic cohort (age × income × marital status). Uses Survey of Consumer Finances (SCF) data for the cohort comparison.
Federal Reserve SCF
Earliest retirement age
The youngest age at which your plan funds retirement to life expectancy with at least 85% Monte Carlo confidence. The Retire Earlier Smart Moves lens optimizes for moving this age younger.
Phased spending
Three-phase retirement spending model: Phase 1 (active years, typically 100% of goal), Phase 2 (slow-down, 85%), Phase 3 (late years, 75%). Reflects empirical retirement spending decline as travel/discretionary outlays decrease.
Blanchett research
Lump sum tax handling
The engine taxes large one-time inflows (inheritance, home sale, severance, other lumps) at the year-of-receipt's bracket, including LTCG strata. Post-receipt, the after-tax amount routes to brokerage (default) or is earmarked for bridge funding (per your input).
IRC Section 121 for home sale exclusion
IRMAA
Income-Related Monthly Adjustment Amount — Medicare Part B + Part D surcharges that kick in above MAGI thresholds. 5 tiers; thresholds use 2-year IRS lookback in real life (engine uses current-year MAGI for simplification). 2026 Tier 1: $218K MFJ / $109K single.
CMS
SECURE 2.0 Super Catch-Up
Ages 60-63 get additional 401(k) catch-up contribution: $11,250 (2026) on top of the regular catch-up — total $35,750 contribution capacity at 60-63. After 63, drops back to regular catch-up.
SECURE 2.0 Act
State tax modeling
Per-state tax structure: brackets, standard deduction, retirement-income exclusions (some states exclude pensions entirely; others tax SS; 8 states give preferential LTCG rates). Updated annually against state revenue department publications.
Plan robustness
How well a plan holds up under adverse stress scenarios. Measured via the delta between baseline Success Rate and the same plan's SR under an early-crash stress test. Small delta = robust; large delta = fragile to sequence risk.
Guyton-Klinger guardrails
Dynamic withdrawal framework (Guyton + Klinger 2006) that adjusts spending ±10% based on portfolio performance. Capital preservation rule cuts spending in bad markets; prosperity rule bumps in good ones. Historically supports 5–5.5% safe withdrawal vs 4% rule's static math. Research-community critique: the 2006 paper calibrated against pre-2008 valuations; subsequent work from Pfau (2010+) and Karsten Jeske's "Big ERN" SWR series (2017+) raises high-CAPE / long-horizon concerns about whether the historical 4–5% rules-of-thumb transfer cleanly to today's regime. The engine's 5.0% Smart Moves cap respects this critique. CAPE disclaimer: the engine does not read your start-year CAPE; the 5.0% cap is the conservative-end anchor that hedges against this uncertainty.
The FIRE variant where you save aggressively until existing balances will compound to your retirement target, then stop contributing and keep working — your income covers expenses but no new money goes into retirement accounts. Opt-in via "Stop contributing at age" field.
Historical back-testing
Replays your plan against the actual year-by-year market sequence from a past retirement-start year (drawn from Shiller's 1928–2022 dataset). Cohort SR is the fraction of historical start-year cohorts where your plan would have survived. Distinct from Monte Carlo SR (probability across stochastic futures) — different sample spaces; both are honest probabilities. Surfaced two ways on the Stress Test tab: card (5 named eras) + workshop (full-range exploration).
Bengen 1994 · Trinity Study 1998 · Shiller dataset
Future one-time expenses
Planned one-time portfolio deductions at specific ages — weddings, college, car replacement, home repair — modeled separately from your monthly goal. You enter each in today's dollars; the engine inflates to the expense year via CPI and draws from your buckets in the optimal order (Savings → Brokerage → Roth → 401k). Up to 10 entries. Recurring costs belong in your monthly goal. UI-managed only: the AI Advisor can reference your list in narrative but cannot add or change entries on your behalf — you stay in control.
Verdict
A fee-only Certified Financial Planner is the gold standard for personalized retirement planning — and worth the cost for the right situation.
$200–$500/hr
Hourly rate
3+ weeks
First answer
$1k–$3k
Initial plan
vs Retirement Scenario Explorer
$79 once
Lifetime
5 minutes
First answer
$0/yr
No subscription
What CFPs do best
A fee-only Certified Financial Planner is the gold standard for personalized retirement planning. They take a complete picture of your financial life — assets, debts, income, taxes, estate, insurance, family situation, goals — and produce an integrated plan that no software can match. They catch things a calculator can't: the cousin you're going to inherit from, the small business interest your spouse never told you about, the way your kid's special-needs trust changes everything. For households with real complexity or significant assets, a CFP relationship is genuinely valuable.
Where CFPs don't fit for most people
Fee-only hourly engagements run $200–$500 per hour, with most retirement reviews requiring 3–8 hours of planner time plus your prep work — call it $1,000–$3,000 for an initial plan and another few hundred annually for updates. The first answer takes 3+ weeks between booking, intake, prep, and the actual meeting. And the plan you walk away with is a static PDF — when your numbers change next year, you're back on the calendar.
CFPs are built for ongoing relationships and life-complete planning. We're built for the moment you want to know "am I on track?" — and to come back whenever the answer might have changed.
Why people choose Retirement Scenario Explorer
If your situation is reasonably typical (W-2 income, 401(k) and IRA accounts, a paid-off-or-paying-off mortgage, Social Security on the horizon), a CFP's integrated plan is overkill for the question you actually have: am I on track? Retirement Scenario Explorer answers that in five minutes, with the same Monte Carlo math, the same actuarially correct Social Security modeling, and the same tax-optimal withdrawal sequencing professional planners use — for $79 once instead of $2,000 every year.
If you eventually want a CFP, you'll show up to the conversation with better questions and a baseline you understand. That makes the CFP's hours go further.
Boldin is the most comprehensive consumer retirement planning software on the market — and well worth the subscription if retirement planning is a hobby you enjoy.
$144/yr
Subscription
1–2 hours
Setup time
$1,440
Decade cost
vs Retirement Scenario Explorer
$79 once
Lifetime
5 minutes
First answer
$79
Decade cost
What Boldin does best
Boldin is the most comprehensive consumer retirement planning software on the market. Their depth on tax modeling — Roth conversions, Social Security taxability, state-by-state retirement tax variation — is genuinely impressive. They've built tools for advanced techniques most calculators don't touch: backdoor Roth, mega backdoor Roth, healthcare cost projections by state, IRMAA brackets, even rental property income modeling. If retirement planning is a craft you enjoy and want to spend hours on, Boldin rewards that effort.
Where Boldin doesn't fit for most people
Boldin runs $144 per year, ongoing — that's $1,440 over a decade for a tool you'll mostly use a few hours each year. Setup takes 1–2 hours of milestone configuration before you see your first meaningful answer. Their AI assistant is a more recent addition and feels bolted on — useful for some queries but not the conversational depth you'd expect from a tool that knows your full plan. And there's no path to "just give me the answer" — Boldin is built around exploring scenarios in detail, not delivering verdicts in five minutes.
Boldin is built for people who want to be their own retirement architect. We're built for people who want clarity quickly and don't want to subscribe to anything.
Why people choose Retirement Scenario Explorer
If you've tried Boldin and bounced off the setup, or if the annual subscription doesn't match how often you'll actually use it, Retirement Scenario Explorer gives you the same calculation engine — Monte Carlo simulation, tax-optimal withdrawal sequencing, Roth conversion analysis, stress testing — without the 90-minute setup or the recurring charge. $79 once. Yours forever. And the AI Advisor is the conversation layer Boldin's tool doesn't have: ask anything about your plan in plain English, get an answer that knows your actual numbers.
ProjectionLab is the FIRE community's favorite retirement tool, and the visualizations are exceptional — well worth the price for serious FIRE planners.
$129/yr
Premium plan
30+ min
Setup time
No AI
Assistant
vs Retirement Scenario Explorer
$79 once
Lifetime
5 minutes
First answer
AI Advisor
Built in
What ProjectionLab does best
ProjectionLab is the FIRE community's favorite retirement tool, and for good reason. The visualizations are exceptional — chart-rich, dense with information, satisfying to explore. The simulation flexibility is unmatched: you can model nearly any scenario you can imagine, with surgical control over assumptions. For someone who wants to model "what if I take a sabbatical at 45, work part-time at 50, downshift expenses at 55, and still want to retire at 60," ProjectionLab is built for exactly that.
Where ProjectionLab doesn't fit for most people
ProjectionLab runs $129 per year ongoing (about $1,290 over a decade; the lifetime license has been discontinued). Setup takes 30+ minutes to get a meaningful first projection — they want detailed phase-by-phase income, expense, and savings inputs before producing results. There's no AI assistant of any kind. And the depth of customization is its own form of friction: it's possible to spend hours configuring scenarios that, for most users, don't materially change the answer.
ProjectionLab is built for the FIRE planner who treats retirement modeling as a hobby. We're built for people who want the answer to "am I on track?" without the production.
Why people choose Retirement Scenario Explorer
If you're planning a relatively standard retirement (W-2 income, employer plans, Social Security, maybe a paid-off home), ProjectionLab's flexibility is mostly cost without value. The math under the hood is comparable, the tax modeling is comparable, the Social Security modeling is comparable. What's different is what we don't make you do: 30 minutes of setup, $129/year forever, or learning a sophisticated tool to answer a simple question.
If you're a serious FIRE planner with complex multi-phase scenarios, ProjectionLab is probably the right tool for you, and we'll cheerfully say so. For everyone else, $79 once and a 5-minute first answer is the deal.
If you're already using ProjectionLab, cFIREsim, or your own spreadsheet — this isn't trying to compete on depth. It's the recommendation for two groups: people who'd never set up PL on a Sunday afternoon, and standard-FIRE planners who don't need 12 asset classes modeled to answer "am I on track?"
The current default recommendation is broken
When someone asks "what calculator should I use," the practical options today are:
Empower / Personal CapitalFree, but it's a wealth-management lead-gen tool. Your friend gets advisor calls within weeks of signing up.
Vanguard / Fidelity calculatorsFree, but too thin to model anything specific. No bridge years, Roth conversions, or sequence-of-returns risk.
Boldin / ProjectionLabSubstantively good, but $129–$144/year and 1–2 hours of setup. The friend probably won't actually use them.
A 4% rule worksheetUseless for a real answer.
So the FIRE-knowledgeable recommender either gives a non-answer ("just save more"), points at Empower and accepts the lead-gen risk, or hands them their own ProjectionLab login (which isn't going to happen).
This is the third option.
$79 one-time. Real Monte Carlo. No data collection. No upsell funnel. The friend gets a meaningful answer in five minutes; the recommender doesn't get blamed for sending them somewhere that turned out to be a sales pitch.
A note from me
I built this because at 49, I was tired of two options: oversimplified calculators (the 4% rule doesn't tell you much) and overcomplicated subscription tools (I didn't want to model 12 asset classes manually to ask a simple question).
Most retirement-tool conversations among FIRE-knowledgeable people are about which depth-tool to use — Boldin or ProjectionLab or build-your-own. Those are good questions. But the people in your life asking you what to use aren't asking that question. They're asking: "is there something between a free calculator that doesn't say anything and a $144/year tool I'll never set up?"
This is built for that gap. Real Monte Carlo math. Real Social Security modeling. Real tax-optimal withdrawal sequencing. $79 once, no subscription, no account required, no hidden funnel. The math is sound enough that you can confidently point a friend at it without worrying they'll be misled or upsold. And honestly — sound enough that for a standard-FIRE plan, you might find yourself using it too.
— Luke
What works well for retirement modeling
The math is the same whether you're targeting 65 or 50 — what changes is which features matter most:
1,000-scenario Monte CarloReal probability of plan survival, not a single-point estimate.
Historical back-testingReplay your plan against every actual market sequence from 1928 onward, or by named stress era (Great Depression, 1966, stagflation, dot-com, financial crisis). The Bengen / Trinity Study methodology — cohort survival rate next to Monte Carlo on the Stress Test tab.
Actuarially correct Social SecurityProper FRA adjustments, claiming-age modeling, spousal benefits.
Tax-optimal withdrawal orderingTaxable, then tax-deferred, then Roth — modeled in every simulation.
Phase-based spendingDefine your own go-go / slow-go / no-go boundaries; model spending that tapers with age instead of a flat number.
Coast FIRESet a stop-contributing age; balances compound through to retirement. The variant where front-loaded savings remove savings pressure, not retirement itself.
Guyton-Klinger guardrailsDynamic spending that cuts in bad markets and bumps in good ones. Academic safe-start 5–5.5% vs static 4% — the difference compounds into meaningfully earlier retirement.
Roth conversion sweet spotFinds bracket headroom in your low-income post-retirement years.
Gain harvesting (0% LTCG)Sells and rebuys brokerage holdings in bridge years to reset cost basis at zero federal tax. Pairs with Roth conversions to fill both bridge-year brackets.
Bridge reserve modelingEarmark cash, home sale, or inheritance to fund the gap before Social Security.
Future one-time expensesPlan-aware lump outflows at specific ages — college help, gap-year travel, car replacement, late-life inheritance gifts. Engine inflates from today's $ via CPI and draws from buckets in optimal order.
Healthcare bridge panelExplicit pre-Medicare cost modeling — the early-retirement expense most calculators ignore.
Sequence-of-returns stressThe most important risk most free calculators don't model.
Backdoor & Mega Backdoor RothModeled correctly — high-earner staple, often ignored.
Cohort comparisonAnchored to published Federal Reserve and SSA data — full sourcing in How It Works.
AI AdvisorInterrogate scenarios conversationally — "if I convert $50k/yr from Traditional to Roth from 65–70, how does that change my IRMAA exposure?"
What this isn't
Honest about limits — important if you're vouching for it:
Not a full planning tool like ProjectionLab or cFIREsim. If your friend turns out to be a craft planner, send them there.
No Vanguard dynamic spending or Kitces ratcheting (Guyton-Klinger is supported — see above).
Single return rate assumption. No asset-allocation modeling.
How to recommend it well
If you're pointing someone at it:
Tell them it takes five minutes. That's actually true. The friction sink with most planning tools is what kills the recommendation.
Tell them no account is required. This is the differentiator from Empower they may not realize matters until you name it.
Tell them $79 is the upgrade, not the entry. The free version runs the full Monte Carlo and gives a real answer.
Set their success-rate target appropriately. 85%+ for traditional retirement; 95%+ if they're targeting 50 or earlier.
Point them at the SS Benefit Confidence slider if they're decades from claiming. Modeling Social Security at 70–80% of projected is the honest hedge against the 2033 trust-fund shortfall — it's the question every FIRE planner has about Social Security, and most calculators won't let them ask it.
Send them the share link if they have a complex situation. The AI Advisor can answer specific questions about their plan in plain English.
📐 How It Works → full methodology
Every formula, assumption, and source — the SCF cohort tables, the SSA hypothetical worker AIMEs, the IRMAA thresholds, the Monte Carlo distribution, the tax brackets. Nothing is hidden. Vet it before you recommend it.
Your benefit is calculated from your Full Retirement Age (FRA) benefit and adjusted for when you claim. Claiming before FRA permanently reduces it; delaying past FRA increases it up to age 70.
SSA factors: ~0.70 at 62, 1.00 at FRA (67 for most), 1.24 at 70. This tool assumes a Full Retirement Age of 67, which applies to anyone born in 1960 or later. If you were born before 1960, your FRA is slightly lower (66 for born 1943–1954, graduating to 67 by 1960) — enter your actual FRA benefit to keep the math accurate regardless. Spousal benefit is the higher of their own record or 50% of your FRA benefit. Benefits are inflation-adjusted to retirement-year dollars. Stress-testing for legislative shortfall: the SSA Trustees project the trust fund hitting depletion in 2033, after which scheduled benefits would be reduced by ~20-23% absent congressional action. To stress-test your plan against this, set the "SS Benefit Confidence" slider to 80% (or another haircut you find plausible) — the engine will scale all SS benefits accordingly.