Methodology
Every formula, in plain language and in the exact numbers.
This page exists so you don't have to take "we show our work" on faith. Below is exactly how Kessavo calculates Social Security, RMDs, taxes, and Medicare surcharges — and, just as important, exactly where it simplifies and what it doesn't attempt to model yet.
Tax brackets and figures last verified: August 7, 2026
How the projection runs
Kessavo simulates your finances month by month, from today through age 100, using three account buckets: taxable/cash, tax-deferred (traditional IRA/401k), and Roth. Each year it works out your income (Social Security plus any withdrawals), your expenses (living costs, health insurance or Medicare, taxes, debt, long-term care if you've added it), and covers the gap by drawing from your accounts in a fixed order:
- Taxable/cash first
- Tax-deferred next
- Roth last
That order isn't arbitrary — it's the standard sequencing recommendation for minimizing lifetime tax drag, since Roth withdrawals are the ones you least want to trigger early. Required minimum distributions (RMDs) are enforced on top of this order once you're old enough that they apply, even if you don't otherwise need the money that year.
One deliberate simplification worth naming directly: taxes and Medicare surcharges are calculated on a one-year lag — this year's income determines next year's tax bill and Medicare premium, which is how these systems actually work in real life (IRMAA in particular is explicitly based on your tax return from two years prior). We simplified that two-year lag to one year for modeling clarity, which is close enough to matter less than getting the mechanism itself right, but it's not an exact calendar match to the real IRMAA timeline.
Social Security
You can enter either your real 62–70 benefit table straight from your Social Security statement, or a single estimate at full retirement age (67) — the model derives the rest from there.
The numbers
- Claiming before 67: your benefit is reduced 5/9 of 1% per month for the first 36 months early, then 5/12 of 1% per month for any additional months earlier than that.
- Claiming after 67: your benefit increases 2/3 of 1% per month, up to age 70.
- Spousal benefits: up to 50% of the higher earner's full-retirement-age benefit, reduced on its own early-claiming schedule if the spouse claims before their own full retirement age — a steeper reduction in the first three years early than an individual's own benefit uses.
- The model always pays whichever is higher for a given spouse in a given year — their own benefit, or the spousal amount — matching how Social Security actually pays out.
Survivor view (Premium)
In couple mode, you can model your spouse passing away at a chosen age. From that age on, your household Social Security switches from spousal rules to real survivor ("widow(er)") rules, your spouse's Medicare Part B and IRMAA cost drops off, and your spouse no longer contributes to the senior deduction.
The numbers
- The survivor benefit's base amount: 100% of what your spouse was actually receiving if they claimed at or after their own full retirement age (67) — survivor benefits do get the benefit of delayed retirement credits. If they claimed early, the base is the higher of their actual reduced benefit or 82.5% of their full benefit amount — a floor that protects you from their early-claiming choice.
- Your own reduction as the survivor: 100% of that base if you're at your own full retirement age (67) or later when the survivor benefit starts, reduced on a straight line down to 71.5% at age 60 — survivor benefits can start as early as 60, earlier than retirement benefits' age-62 floor.
- The model pays whichever is higher: your own claimed benefit, or the survivor benefit.
What this simplifies: this models the primary person surviving their spouse — the reverse case isn't modeled yet. It uses your already-chosen claim age rather than independently optimizing when to start survivor benefits (the real "widow's switch" strategy some people use). It doesn't change tax filing status or federal brackets beyond removing your spouse's share of the senior deduction, and it doesn't reduce household spending automatically — if you expect your expenses to drop after your spouse is gone, adjust your expense slider yourself to see that effect layered on top.
Source: Congressional Research Service, IF12091 (the widow(er)'s limit provision), 20 CFR §404.410
Required minimum distributions (RMDs)
Once you reach your RMD age, you're required to withdraw a minimum amount from tax-deferred accounts each year, calculated using the IRS Uniform Lifetime Table — your account balance divided by a life-expectancy factor that shrinks as you age (26.5 at age 73, down to 6.4 at age 100).
The numbers
- Born 1959 or earlier: RMDs start at age 73.
- Born 1960 or later: RMDs start at age 75.
- Kessavo applies whichever age matches your entered birth year — this isn't a flat rule.
Source: IRS Publication 590-B, Congressional Research Service, IF12750 (SECURE 2.0 RMD age)
Roth conversion (Premium)
You can model converting a fixed amount from your tax-deferred balance to Roth each year, over a range of ages you choose — a common strategy for filling up low tax brackets in the years before RMDs start, so future forced withdrawals (and the taxes they trigger) are smaller.
Each converted dollar leaves your tax-deferred balance and lands in Roth immediately, and is taxed as ordinary income the same year it converts — exactly like a regular withdrawal, using the same one-year tax lag as everything else in the model. Converting more shrinks the balance your future RMDs are calculated against, so the effect compounds the earlier it happens relative to your RMD age.
What this simplifies: Kessavo models a flat amount over a chosen age range, not a dynamic "fill exactly to the top of the 12% bracket" strategy that adjusts every year based on your other income. That kind of year-by-year optimization is a real strategy some tools specialize in — this is a simpler, still genuinely useful, version of the same idea.
Federal income tax
Ordinary income — tax-deferred withdrawals, RMDs, and the taxable portion of Social Security — is taxed using the 2026 single-filer federal brackets, after your standard deduction ($16,100, plus an additional $2,050 if you're 65 or older). In couple mode, Kessavo uses the real married-filing-jointly brackets and deduction figures instead — not a simple doubling of the single-filer numbers. The MFJ standard deduction is $32,200 (exactly double), but the age-65 addition is $1,650 per qualifying spouse, not $2,050, and the top 37% bracket starts at $768,700 MFJ versus $640,600 single — nowhere near double.
| Taxable income up to | Rate |
|---|---|
| $12,400 | 10% |
| $50,400 | 12% |
| $105,700 | 22% |
| $201,775 | 24% |
| $256,225 | 32% |
| $640,600 | 35% |
| — | 37% |
The temporary senior deduction: an additional $6,000 deduction applies per qualifying spouse age 65+ — up to $12,000 for a couple where both qualify — phasing out at 6 cents per dollar of household income above $75,000 (single) or $150,000 (joint), and currently legislated to disappear after tax year 2028. Kessavo applies and expires this deduction on that same schedule, rather than treating it as a permanent feature of the tax code.
Source: IRS — 2026 inflation adjustments (including OBBBA amendments)
Fixed 2026-08-07: the brackets above previously started one bracket too high in the underlying calculation (the first $12,400 of income was taxed at 0% instead of 10%, and every dollar above that at the prior bracket's lower rate), understating tax across every plan. Verified against IRS Rev. Proc. 2025-25 and Rev. Proc. 2025-32's own worked figures and corrected. The same pass also added the real MFJ brackets and deduction figures described above, replacing an earlier version that used single-filer brackets even in couple mode. See review-or-fix.md #12 and #13.
Capital gains on taxable withdrawals
When you withdraw from your taxable account, Kessavo estimates how much of that withdrawal is gain (versus a return of your original investment) using your cost-basis percentage input, and taxes only the gain — at long-term capital gains rates, stacked on top of your ordinary income.
The numbers
- 0% up to $49,450 of stacked income.
- 15% up to $545,500.
- 20% above that.
What this simplifies: Kessavo uses one blended cost-basis percentage across your whole taxable account rather than tracking individual purchase lots — this matches how every major competitor we reviewed handles it (none do lot-level tracking in a consumer-facing planner), but it's still an estimate, not your actual per-lot basis.
Source: IRS — 2026 inflation adjustments
How Social Security gets taxed
Up to 85% of your Social Security benefit can itself be subject to federal income tax, depending on your other income. Kessavo uses the same "provisional income" method the IRS actually uses: your other taxable income plus half your Social Security benefit, compared against thresholds that determine what portion becomes taxable.
The numbers (single-filer, not inflation-indexed since 1984 — this isn't a Kessavo simplification, these thresholds are genuinely fixed in the tax code)
- Provisional income under $25,000: none of your benefit is taxable.
- $25,000–$34,000: up to 50% becomes taxable.
- Above $34,000: up to 85% becomes taxable.
Source: Congressional Research Service, IF11397 (Social Security taxation)
State tax
Kessavo uses real state-specific tax rules for 13 curated states — full progressive brackets where the state has them (CA, NY, NJ, VA, OR, SC), and the correct flat rate where it doesn't (MA, MI, NC, GA, AZ, OH, CO) — automatically applies $0 for the 9 states with no income tax (AK, FL, NV, NH, SD, TN, TX, WA, WY) and the 4 states that fully exempt retirement income (IA, IL, MS, PA), and falls back to a flat-rate estimate you set yourself for every other state.
What this simplifies: we didn't attempt full 50-state bracket accuracy — no retirement planning tool we reviewed does. The 13 curated states cover the specific carve-outs that actually move the number (like Social Security exemptions); everything outside that list uses your flat-rate estimate as an intentional, narrower version of the same fallback every competitor in this category also relies on.
Source: Tax Foundation — 2026 state income tax rates, SC Department of Revenue — H.4216 (each state's own Department of Revenue is the primary source for its figures)
Medicare and IRMAA
Once Medicare is active, Kessavo applies the standard Part B premium plus any IRMAA surcharge your income triggers — calculated per person, so a couple where both spouses are 65+ sees both premiums and both surcharges stack, based on the same household income.
| MAGI up to | Part B surcharge (added to the $202.90 standard premium) | Add-on |
|---|---|---|
| $109,000 | $0 | $0* |
| $137,000 | $81.20 | $14.50 |
| $171,000 | $202.90 | $37.50 |
| $205,000 | $324.60 | $60.40 |
| $500,000 | $446.30 | $83.30 |
| above | $487.00 | $91.00 |
* The standard $202.90 Part B base premium always applies, regardless of income tier — this column shows only the additional IRMAA surcharge.
Before 65: you enter your plan's full monthly premium — not a pre-subsidized guess — and Kessavo estimates your ACA premium tax credit automatically each year, based on your projected income, and nets it against that premium. Kessavo doesn't estimate the premium itself, since that varies heavily by state, county, and plan tier; you're expected to enter your own estimate of the full cost.
The numbers: for 2026, the enhanced ACA subsidies from 2021–2025 have expired — the original 400% federal poverty level (FPL) cliff is back, meaning $0 subsidy above that income line, with no exceptions. Below it, your expected contribution runs from 2.10% of income (under 133% FPL) up to a flat 9.96% (300–400% FPL), on a sliding scale in between. Kessavo compares your projected income each year against the federal poverty guideline for your household size (1 or 2), applies the matching percentage, and covers the rest of your entered premium up to that amount.
What this simplifies: real ACA subsidies use your income estimate at enrollment, reconciled against actual income at tax time (Form 8962) — Kessavo uses a one-year lag instead (this year's income sets next year's subsidy), the same simplification already used for tax and Medicare IRMAA elsewhere on this page. Household size is based on couple mode only (1 or 2) — dependents aren't modeled.
Sources: IRS Rev. Proc. 2025-25 (2026 premium tax credit applicable percentages), HHS 2026 poverty guidelines, Federal Register — CMS 2026 Medicare Part B premium rule
Survival-probability horizon (Premium)
Instead of assuming everyone lives to exactly one fixed age, Kessavo uses real 2023 SSA period life tables to show the probability you're still alive at any given age — and, for couples, the probability at least one spouse is still alive, which is meaningfully later than either individual's own odds.
Source: SSA — 2023 Period Life Tables
Monte Carlo simulation
Rather than a single fixed annual return, Monte Carlo mode runs 300 trials, each drawing a random annual return for every year from a normal distribution centered on your expected return with your chosen volatility — then reports the range of outcomes (10th, 50th, and 90th percentile ending balances) and what share of trials never ran out of money.
What this simplifies: returns are drawn independently each year (no modeled correlation between a bad year and the years around it, i.e. no explicit "sequence risk" clustering beyond what randomness alone produces), and the distribution is a plain normal curve, not a bootstrap from actual historical market sequences.
What Kessavo doesn't model yet
Stated plainly, not buried: these are the things Kessavo either simplifies more than the categories above, or doesn't attempt at all.
- Qualified charitable distributions. No modeling of using RMDs to satisfy charitable giving tax-free.
- Per-account growth rates. Taxable/cash balances use one rate; tax-deferred and Roth balances share a single rate rather than each having its own.
- State-specific credits beyond the curated list. Outside the 13 curated states, state tax is a flat estimate you provide, not a real bracket calculation.
- Massachusetts' millionaire surtax. The engine models Massachusetts as a flat 5% — it doesn't add the extra 4% surtax that applies to taxable income above roughly $1.1M. Low materiality for most users, but worth knowing if that applies to you.
- Net Investment Income Tax (NIIT). The 3.8% NIIT on investment income (including the taxable gain portion of a withdrawal) once MAGI exceeds $200,000 for a single filer isn't modeled. This can understate your tax bill in a high-income year with meaningful taxable-account gains.
- Exact per-lot cost basis. One blended percentage across your taxable account, not individual purchase-lot tracking.
The line Kessavo tries to hold: if something meaningfully changes your number, we simplify it as little as we can and say so where it appears. If it's a genuinely advanced strategy that depends on your specific tax situation and timing, we say plainly it's not modeled — that's the point where the "worth a conversation with a financial planner" guidance is meant to kick in.