Retirement Calculator Logo

Retirement Calculators

Not tax or financial advice — verify with a CPA

Estimate retirement income, taxes, MAGI, withdrawal rate, and needed portfolio size — all in one page.
Best for early retirees, ACA/MAGI planning, part-time work, pensions, Social Security, dividends, and California tax planning.
What do you want to solve for? Choose a calculator or show all 5 together.Each calculator uses your inputs and solves for a different unknown.
Calculator 1 — Spendable Income & Surplus / Shortfall
?
Solves annual surplus or shortfall.
Solves surplus/shortfall
2 Inputs
Income Sources
Portfolio
Includes dividends + share sales combined.
Spending and Deductions
Included in expenses:
Tax Treatment & Planning Assumptions
?
3 Results

Annual Spendable Income ?

—
After-tax income available to spend.

Annual Surplus / Shortfall

$22,848
Current inputs produce a surplus.

Universal Outputs

$132,000
$167,200
$154,848
$12,904
$12,352
7.38%
$77,200
$37,200
Anatomy of — in tax
Payroll —Fed Ord. —State —LTCG/NIIT/surtax —

Tax Breakdown

$4,040
$4,475
$3,837
$0
$4,475
NIIT$0
Add'l Medicare$0
Tax Settings Snapshot Click to edit
Federal tax year
State
California
State tax year
SS taxable %
HSA state treatment State HSA non-conforming
High-income state surtax

Planning Tables

Compare spending across work or SS/pension scenarios. Surplus / Shortfall shows the amount above or below your spending target at each withdrawal rate; Rate Needed shows the withdrawal rate and pre-tax portfolio draw required for each spending level.

Uses existing website tax engine Federal — State — HSA in expenses: — Planning settings save automatically in this browser
Shared assumptions

These inputs are shared by both planning tables. Tax brackets, payroll assumptions, Social Security taxable percentage, HSA state treatment, and other tax rules remain controlled by Tax Settings.

Work levels

Up to five work levels. When retirement-income mode is off, every enabled complete row appears in both planning tables. Social Security and pension are $0 in Work mode. An unchecked or blank row is excluded.

UseLevelAnnual income
Social Security / Pension levels

Up to five retirement-income levels. Use these levels to model a reduction in Social Security or pension benefits, or to compare different claiming ages / benefit amounts. The percentage labels are editable scenario labels only; enter the actual annual Social Security and Pension / Other amounts for each level. When enabled as the table axis, all checked labeled rows replace the work levels in both planning tables and earned income is automatically $0. A blank Social Security or Pension / Other amount is treated as $0.

UseLevelSocial SecurityPension / OtherCombined
Surplus / Shortfall spending target
Withdrawal-rate columns

Edit any rate or leave a slot blank to omit that column. The color bands below apply to both planning tables and are visual groupings only—not safety ratings.

Low
Middle
Higherabove the middle cutoff
Surplus / Shortfall by Withdrawal Rate
—
Saved planning tables (0)
Load = show this table · Upd = replace with current inputs · +Pre / −Pre = add to / remove from presets · Preset box = choose its number (a used number swaps) · ↑ ↓ = move · Dup = duplicate · Del = delete
Edit assumptions, income levels, and withdrawal rates above. This table updates automatically. Use Saved planning tables (just above this note) to keep named copies of these inputs. A saved table recalculates with the current Tax Settings when loaded. For a frozen copy of the results, choose Print and then Save as PDF.

Live Tables

Compare many independent Calc 1 and Calc 2 scenarios in compact rows. Every row uses the existing validated HTML tax engine; Advanced opens Filing Status, Social Security, Pension / Other Ordinary Income, and HSA without widening the table.

📁
Live Tables backup vs full backup
Backup Live Tables downloads both Live Surplus and Live Needed WD Rate tables together as a JSON file. Restore Live Tables restores those tables without changing Tax Settings, Scenario Manager, calculator inputs, or other saved data. Use Backup All Data in Tax Settings when transferring the entire calculator setup (including Scenario Manager, Planning Tables, and Live Tables) to another browser or device.
📊
CSV / Excel export explained
Export to CSV downloads spreadsheet-friendly Live Table data for analysis, sorting, or archiving. Export to Excel creates a formatted .xlsx workbook containing both Live Surplus and Live Needed WD Rate worksheets. CSV and Excel exports are snapshots for spreadsheet use; use the JSON backup when you want to restore editable Live Tables back into the calculator.
Adv show / hide Advanced inputs Dup duplicate this row below Del delete this row ↑ move this row up ↓ move this row down
Calculator 1 — Live Spendable Income & Surplus / Shortfall
Solves annual surplus or shortfall.
Scenario NameTotal Portfolio
Value
Earned
Income
Pre-tax Retirement
Contributions
Desired WD
Rate
Annual
Spending
Tax
Treatment
Cost Basis
%
Ordinary
Dividends
Qualified
Dividends
Implied Portfolio
Draw
Share
Sales
Total Investment
Cash
Total Gross
Income
Total Net
Income
Extra /
Year
Extra /
Month
Actions

Tools

Start from a calculator scenario, adjust it here, and explore without changing the calculator.

Next-dollar cost

Tax on the next amount you add to the Starting scenario.

Total cost
$0.00
0.00% of amount
$0.00
$0.00
$0.00
$0.00
$0.00
Estimate for the current tax year using this site's Tax Settings. Not tax advice.

Roth conversion fill

How much you can convert before a line you choose, and its tax.

Conversion amount
—
Tax —
—
—
—
—
—
—
Notes and the 59½ / 5-year rule

Room left

How much more income fits before each tax line.

Room left before…Extra ordinary incomeExtra long-term gain
Current federal bracket——
To the top of the current bracket——
Before gains leave the 0% band——
Before the 20% capital-gains band——
Before the NIIT threshold——
How to read this table

Ordinary-income amounts assume income like a 401(k)/IRA withdrawal or pension (no payroll tax). Gain amounts assume long-term gains. Amounts are the most you can add before each line is crossed.

ACA cliff check

Your income against the ACA subsidy lines, using ACA MAGI.

ACA MAGI
—
400% FPL CLIFF
——
—
Calculator MAGI —+ untaxed Social Security —+ tax-exempt interest —
ACA lineValueExtra ordinary incomeExtra long-term gain
400% of FPL (subsidy cliff)———
138% of FPL (Medi-Cal line)———
—
Subsidy amounts and rules

Spending worksheet

Baseline and discretionary spending, monthly and yearly.

MoveLabelMonthlyYearlyTypeDelete
MonthlyYearly
Baseline total$0.00$0.00
Discretionary total$0.00$0.00
Combined$0.00$0.00
Monthly totals are the yearly totals ÷ 12, so they can differ from the sum of the rounded monthly cells by a cent.
  • Put each bill in only one row. If a bill is paid on the credit card and included in that row's total, leave its own row blank.
  • Don't include income taxes. The calculators compute them.
  • HSA-paid medical costs: list them, and keep the HSA “Included in expenses” setting at Yes (the default). No is for an HSA contribution saved on top of your spending.
  • Health insurance: enter the net premium you expect to pay after any subsidy. It depends on your income, so check it against the ACA cliff check above.
  • When a reserve is spent (a new roof from the maintenance reserve), don't add it again. It was counted through the yearly reserve.
  • The Baseline total is the number to type into a calculator's spending input. Discretionary spending is extra.

How the Scenario Manager works

① Run a calculator
Go to the Calculator tab, choose a single calculator or the All 5 Calculators Dashboard, enter your numbers, and review the outputs — surplus/shortfall, needed withdrawal rate, needed portfolio size, needed earned income, or max investment income under MAGI.
② Save a scenario
Click "+ Save to Scenario Manager" in the active single-calculator view or in an All 5 Calculators Dashboard card. Give it a name like "Base case" or "Retire at 55 — low spending".
③ Compare scenarios
Each saved scenario appears as a row in the table below. The Scenario Manager uses the same 46 data columns, displayed names, default order, and categories as Excel v78. Use the seven view buttons to focus on a category while retaining your single custom master column order.
④ Load a scenario back
Click Load on any row to instantly restore all of that scenario's inputs into the matching calculator view — no re-typing needed. Then tweak and save a new variation.
🔒
Your data never leaves your device
No account required. No login. Your inputs, scenarios, and settings are saved in your browser's local storage and never transmitted anywhere.
📁
Scenario backup vs full backup
Backup Scenarios downloads only your saved scenarios as a JSON file. Restore Scenarios loads saved scenarios back into the Scenario Manager. Scenario backups do not include Tax Settings, current calculator inputs, MAGI/HSA preferences, theme, or Scenario Manager column layout. Use Backup All Data in Tax Settings for a full transfer to another browser or device.
📊
Export to CSV / Export to Excel explained
Export to CSV downloads raw spreadsheet-friendly data for analysis, sorting, or importing into another tool. Export to Excel creates a formatted .xlsx file with dollar/percent formatting and column widths — best for polished printing or sharing. The browser Print button is intended for quick PDF/print previews of selected columns.
⚠️
Important: browser storage has limits
If you clear your browser's cookies/site data, your saved scenarios will be erased. Use Backup Scenarios to back up scenarios only, or use Backup All Data in Tax Settings to back up scenarios plus calculator inputs, tax defaults, MAGI/HSA preferences, theme, Scenario Manager column layout, Planning Tables, saved planning tables, and Live Tables.

Scenario Manager

Tip: for the cleanest printed scenario table, export to Excel or CSV and print from your spreadsheet app.
Sort: Filter:
Move column: Choose a visible column, then move it left or right.
← scroll right to see all columns and actions →
💾 Tax Settings changes apply immediately for the current session, but most are not saved automatically for future sessions. Save as My Defaults stores the current Tax Settings as this browser’s persistent custom configuration. Those saved defaults reload automatically only when both the saved Federal/State tax years match the current calculator and the calculator’s built-in Tax Settings have not changed since they were saved. Ordinary wording, layout, accessibility, styling, or unrelated UI revisions do not invalidate compatible My Defaults. After an annual tax-year update or a same-year correction to the built-in Tax Settings, the old My Defaults record is retained but is not applied; the current built-ins stay active until you review them and save new My Defaults if desired. HSA settings are the one exception — they save automatically when changed.

How Tax Settings works

① Edit brackets and rates
Edit federal and state bracket thresholds/rates, deductions, LTCG thresholds, Social Security taxable %, payroll rates, NIIT, Additional Medicare Tax, high-income state surtax, and HSA settings. Changes recalculate the calculators immediately.
② Save as My Defaults
After editing Tax Settings, click 💾 Save as My Defaults to make the current settings this browser’s persistent custom defaults. They reload automatically only when both the saved Federal/State tax years match and the built-in Tax Settings configuration is unchanged. The HTML/app version number by itself does not control compatibility, so ordinary cosmetic or unrelated revisions continue loading compatible My Defaults. An annual tax update or same-year built-in correction leaves the old saved record in storage but does not apply it; review the new built-ins and save again if desired.
③ Back up or restore Tax Settings
⇓ Backup Tax Settings exports the Tax Settings currently visible on screen, including compatibility metadata for the current built-in tax configuration; creating the file does not save, replace, or otherwise change My Defaults. ⇑ Restore Tax Settings makes a compatible file the new My Defaults and applies it immediately. If its tax years/fingerprint differ, or it is a legacy file without compatibility metadata, the calculator warns first; if you accept, it applies for this browser session only and disappears on reload, while cancel leaves the current Tax Settings unchanged. Backup All Data captures the current on-screen Tax Settings plus the rest of the full browser state without changing My Defaults merely by creating the backup.
④ Customize for your state
Changing State Name only changes labels. To model another state, update the State Brackets, state standard deduction, exemption credit, SDI rate, HSA state treatment, and any high-income surtax settings. For states with fewer brackets, enter the real brackets in ascending lower-threshold order, then use $0 and 0% for unused rows. If your state has more brackets than this table allows, approximate carefully or revise the code. Then click 💾 Save as My Defaults.
↻
Reset Federal / Reset State / Reset Fed & State — restores built-in IRS and California defaults
Reset Federal restores federal brackets, standard deductions, LTCG thresholds, and payroll rates to built-in IRS values. Reset State restores state brackets and deductions to California defaults. Reset Fed & State resets federal, state, and HSA toggle defaults.
💾
Back up or move your saved settings
Why back up? Your saved calculator data lives only in this browser. Back up before changing computers, switching browsers, clearing website data, or moving between Safari and the iPhone Home Screen version. Backup Tax Settings exports only the Tax Settings currently visible on screen. Backup All Data is a snapshot of the current browser state and includes calculator inputs, filing status/preferences, MAGI/HSA preferences, saved scenarios, Scenario Manager preferences/column layout, Planning Tables, saved planning tables, Live Tables, theme, and the Tax Settings currently visible on screen. Creating either backup does not overwrite My Defaults, so temporary Tax Settings can be included in a backup without becoming persistent merely because the backup was created. Restore Tax Settings checks tax-year and built-in-default compatibility before deciding whether restored settings can become My Defaults. Restore All Data restores the whole backup. Compatible backup Tax Settings replace My Defaults; incompatible or legacy backup Tax Settings are skipped so existing My Defaults, if any, remain unchanged. All other backup data still restores normally. Save as My Defaults is the explicit action that stores current Tax Settings as this browser’s persistent custom defaults. ✕ Clear My Saved Defaults removes that saved custom record so future visits use the built-in federal IRS and California defaults.
⚠️
Your saved defaults are browser-specific
Saved My Defaults live in this browser's local storage. An annual tax update or same-year built-in tax correction does not delete the old record; it simply prevents an incompatible record from being loaded over the new built-ins. You do not need to clear browser storage or delete old backups after an update. Use Backup Tax Settings to export the Tax Settings currently on screen without changing My Defaults, or Backup All Data to move the full saved state to another browser or device.

Tax Settings

Built-in defaults
My browser defaults
Tax settings backup
Full backup
Sync between computers
Not linked.
Keeps scenarios, saved Planning Tables (including presets), the spending worksheet, Scenario Manager layout and My Defaults in step between computers through a file you choose, for example in your Google Drive folder. Calculator inputs and Tax Settings stay on each computer. Chrome or Edge on a computer only.
⚙️

federal / state are the page defaults. Edit tax brackets, rates, and assumptions below. Changes apply immediately to all calculators, but save them if you want to keep them for future visits.

For no-tax states, set state brackets to 0%. Also set State SDI Rate to 0% if applicable.
Federal

Federal Brackets (MFJ)

Lower $Rate %

Federal Brackets (Single)

Lower $Rate %
Assumptions — MFJ — Federal
Assumptions — Single — Federal
Assumptions — Both Filing Statuses — Federal & Payroll
Default is . This is the percentage of your Social Security Benefits field included in taxable income. This percentage applies to federal tax only; California and most states exclude Social Security from state taxable income. Social Security taxability thresholds: Use if combined income exceeds (Single) or (MFJ). Use if combined income is roughly – (Single) or – (MFJ). Use if your income is below (Single) or (MFJ) and you expect no SS to be taxable. Use 100% for conservative modeling or if you intentionally want all Social Security benefits treated as taxable.
Additional Medicare Tax (Form 8959): on wages above the threshold ( Single / MFJ under the federal assumptions shown here). Only applies to earned wages — not investment income (NIIT separately covers that). Set rate to 0% to disable.
State

State Brackets (MFJ)

Lower $Rate %

State Brackets (Single)

Lower $Rate %
Assumptions — MFJ — State
If your state income is high enough, your state may reduce or phase out this exemption credit. The calculator does not automatically model state-specific phaseout worksheets; manually lower this credit, possibly to $0, if your state rules require it.
Assumptions — Single — State
If your state income is high enough, your state may reduce or phase out this exemption credit. The calculator does not automatically model state-specific phaseout worksheets; manually lower this credit, possibly to $0, if your state rules require it.
Assumptions — Both Filing Statuses — State
State Name only changes labels. To actually model another state, edit the State Brackets, state standard deduction, exemption credit, SDI rate, HSA state treatment, and any high-income state surtax settings. No income tax state? Set all state bracket rates to 0%; the lower thresholds do not matter when rates are zero.

State LTCG note: This calculator generally treats long-term capital gains as ordinary income for state tax. Some states tax LTCG differently, including AR, HI, MT, ND, NM, SC, VT, WA, and WI. For those states, state tax may be overstated. See Read Me for details.
State SDI uses the current/federal-year payroll-rate assumption and is independent of the state income-tax year above. Current settings: payroll/SDI rate with income-tax settings.
Additional state tax on high income, applied to state taxable income above the threshold. California default: Behavioral Health Services Tax / Mental Health Services Tax of above . Set rate to 0% to disable for states without this tax or replace the rate/threshold for another state's high-income surtax.
Affects surplus, not tax — your HSA always reduces federal taxable income and MAGI regardless. Yes (default): your Annual Expenses already include the HSA contribution/outflow, so the calculator does not subtract it a second time. No: the HSA contribution is additional to Annual Expenses (savings on top of your spending), so it is subtracted as a separate cash outflow (like a 401(k) contribution). If your HSA pays your medical bills, list them in Annual Expenses and keep Yes. Choose the setting that matches how you entered Annual Expenses.
Most states follow federal tax treatment and allow HSA deductions — set to Yes. California and New Jersey do not recognize HSA deductions at the state level — leave as No (default). When No, the HSA amount reduces federal taxable income but not state taxable income.

Retirement Calculators

I built this free, single-page calculator because retirement spending depends on more than a single withdrawal rate. Income composition, taxes, dividends, taxable brokerage sales, MAGI, ACA subsidies, payroll taxes, state taxes, and withdrawal rates interact, and I could not find a simple tool that brought those pieces together with realistic, composition-aware tax modeling.

It is designed as a one-year snapshot for income and tax planning, answering five related and interdependent retirement-planning questions:

  1. How much surplus or shortfall do I have?
  2. What withdrawal rate do I need?
  3. What portfolio size do I need?
  4. How much earned income do I need?
  5. How much investment income can I take while staying under my MAGI target?

Each calculator uses your inputs and solves for a different unknown. A value that is an input in one calculator may be the unknown that another solves for. For example, Withdrawal Rate is an input in most calculators, but Calculator 2 solves for the needed withdrawal rate.

If this calculator saves you time or helps you think through your own retirement scenarios, feel free to show your support.

✨ What makes this calculator different

Most online retirement calculators either ignore taxes entirely or apply a flat effective rate. Both can produce misleading numbers because real-world tax depends on the composition of your income — not just the total. This calculator is built around that composition.

  • A rare five-way solver — surplus/shortfall, needed withdrawal rate, needed portfolio size, needed earned income, and maximum investment income under an ACA/MAGI target. Many tools answer one or two of these questions, but not all five in one compact interface.
  • Current-year after-tax spendable income focus — useful for early retirees trying to see how taxable brokerage withdrawals, part-time W-2 income, dividends, Social Security benefits, and pension income translate into actual net spending.
  • Composition-aware tax modeling — separates earned wages, Social Security benefits, Pension / Other Ordinary Income, ordinary dividends, qualified dividends, LTCG share-sale residual, ordinary share-sale income, Roth/cash no-tax treatment, and cost basis rather than hiding everything inside a black box.
  • Progressive federal and state brackets — applies bracket math rather than flat tax rates, and stacks qualified dividends and long-term capital gains on top of ordinary income to determine the correct preferential federal LTCG rate.
  • Investment-tax detail — applies cost basis only to the share-sale residual, treats dividends as fully taxable, computes NIIT where applicable, and models high-income state surtax when configured.
  • Payroll-tax detail — computes Social Security, Medicare, Additional Medicare Tax, and state SDI on earned income only, so pension income, Social Security benefits, and portfolio income are not mistakenly treated as wages.
  • ACA/MAGI visibility — a meaningful niche for early retirees balancing dividends, gains, HSA/401(k), Social Security, pension income, and earned income.
  • California-ready but editable — includes California brackets, state treatment of qualified dividends/LTCG as ordinary income, HSA nonconformity, and high-income state surtax assumptions out of the box, while the Tax Settings panel can be edited for another state.
  • No login, local storage only — unlike many modern planners that require accounts, subscription dashboards, or cloud-based data entry.
  • Editable tax settings — users can inspect and adjust brackets, deductions, thresholds, payroll rates, NIIT, Social Security taxable percentage, state credits, and state assumptions, which builds trust for a calculator where tax assumptions are central.

🔢 The five calculators

1) Surplus Calculator
Given my portfolio, income, and spending — do I have extra money each year or a shortfall?
2) Needed Withdrawal Rate
What withdrawal rate would exactly fund my spending?
3) Needed Portfolio Size
How large does my portfolio need to be to support this lifestyle?
4) Needed Earned Income
If I'm still working, how much W-2 income do I need?
5) Max Under MAGI
How much investment income can I take while staying under my MAGI target?

Each calculator answers a different question about the same scenario. Calculator 1 shows where you stand today; 2–4 each adjust a single input to exactly cover your spending; 5 finds the most you can withdraw before hitting your MAGI target. On the All 5 Calculators Dashboard a single Shared Inputs panel drives all five at once — every card uses the same inputs, replacing only the one field it solves for. For independent inputs, open a calculator’s single view.

📊 Planning Tables

The Planning Tables page turns Calculator 1 and Calculator 2 into side-by-side scenario grids. It uses the same tax engine, filing status, investment treatment, dividends, cost basis, retirement contributions, HSA inputs, and live Tax Settings as the calculators; it simply evaluates many income, withdrawal-rate, or spending combinations at once.

Surplus / Shortfall
Compares each enabled income level across the configured withdrawal rates. Every cell shows the resulting monthly and annual surplus or shortfall after taxes relative to the baseline spending amount.
Rate Needed
Compares spending levels across the enabled income scenarios. For each combination it uses the same solver as Calculator 2 to show the withdrawal rate needed and the corresponding pre-tax portfolio draw.
Work levels or Social Security / Pension levels
In Work mode, up to five enabled work levels become the table scenarios and Social Security / pension income is set to $0. The first-load work examples are None, 1, 2, 3, and 4 days/week with illustrative annual earned income of $0, $25,000, $50,000, $75,000, and $100,000; these labels and amounts are fully editable. In SS / Pension mode, the enabled retirement-income levels replace the work levels and earned income is set to $0. The default retirement labels are 0%, 50%, 60%, 75%, and 100%, with illustrative annual Social Security / Pension amounts of $0 / $0, $30,000 / $20,000, $36,000 / $24,000, $45,000 / $30,000, and $60,000 / $40,000, respectively. Their combined income is therefore $0, $50,000, $60,000, $75,000, and $100,000. These percentages are editable scenario labels, not automatic multipliers: the sample amounts simply illustrate proportional benefit levels and can be replaced with actual claiming-age or benefit estimates. A blank Social Security or Pension / Other field is treated as $0; an unchecked level or a level with no label is omitted.
Low / Middle / Higher withdrawal-rate bands
The green, yellow, and pink/red fills are user-defined visual bands, not safety ratings. By default, Low is through 2.00%, Middle is above 2.00% through 2.50%, and Higher is above 2.50%. You can change the Low and Middle cutoffs in the Planning Tables withdrawal-rate settings; Higher automatically means anything above the Middle cutoff. These band settings are saved with the rest of your Planning Table settings in browser local storage.
Share sales rows
With Show share sales in both tables ticked (the default, under Shared assumptions), both tables add a Share sales row: the pre-tax portfolio draw minus ordinary and qualified dividends, never below $0. It is the same figure as the calculators' Share Sales output, so you do not have to subtract the dividends yourself. In the Surplus / Shortfall table it sits under the withdrawal rates, because it depends only on the rate; in the Rate Needed table it follows each Pre-tax draw. It assumes dividends and interest are paid out in cash; if they are reinvested, you would need to sell more, up to the full draw. Untick the box for a more compact table. The choice is remembered in this browser only; it is not part of saved planning tables, presets or backups.
Net rates
With Show net rates (after Pre-tax Contrib + HSA) in both tables ticked (the default, under Shared assumptions), both tables show the withdrawal rate net of your contributions in small type: beside each rate in the Rate Needed table, and under each withdrawal rate in the Surplus / Shortfall table. Net = (pre-tax draw − Pre-tax Retirement Contributions − HSA) ÷ portfolio, the same rule as the calculators' Show rate net of Pre-tax Contrib + HSA: the HSA is subtracted only when Tax Settings HSA Included In Expenses is No (HSA saved on top of spending). A note under each table says how much was subtracted. Nothing is shown when there is nothing to subtract, or at the 100% solver cap; when no draw is needed the net rate is negative (the contributions are larger than the draw). Display only: the rates, draws and amounts in the tables do not change. The choice is remembered in this browser only; it is not part of saved planning tables, presets or backups.

Planning Table settings are saved automatically in this browser. Saved planning tables keep named copies of the table inputs, while calculated results are recomputed with the current Tax Settings whenever a saved table is loaded. The Print button prints the active table in landscape format with a compact assumptions summary so the portfolio, filing status, dividends, tax treatment, cost basis, and tax-rule years remain visible with the results.

Saving Planning Tables for future reference
Use the always-shown Saved planning tables section below the table, name the current setup, and click Save current table. Load restores that saved setup and recalculates it with the current Tax Settings; Load and the preset buttons keep you on the tab you are viewing; each saved table holds the inputs for both the Surplus and Rate Needed tables. Upd replaces the loaded saved copy with the inputs currently on screen; ↑ / ↓ reorder it; Dup makes a copy; and Del removes it. If a saved table came from different federal or state tax-rule years, the status line identifies the saved years and reminds you that current Tax Settings are used. Saved planning tables store inputs rather than frozen results, so use Print → Save as PDF when you need a historical snapshot whose numbers will never recalculate.
Planning Table presets
Pin up to 60 saved planning tables above each table with +Pre. They are shown in rows of 6: the first two rows always, and each further row once a preset number in it is used; −Pre removes a pin without deleting the saved table. Each preset button shows the saved table's name and, underneath, its portfolio, Work or SS / Pension levels, tax treatment and Pre-tax Retirement Contributions (hover for the full text). Clicking a numbered preset immediately shows that saved table. +Pre gives a table the lowest free number. To choose a specific number, use the table's Preset box in Saved planning tables: pick 1–60, or — to remove it. If you pick a number another table already uses, the two tables swap numbers. Preset numbers stay assigned until changed, removed or deleted; if all 60 are in use, remove a preset before adding another. You can keep up to 100 saved planning tables.
Backing up saved planning tables
Backup saved tables and Restore saved tables move only the named Planning Table copies. They do not replace the working Planning Table setup on screen. Backup All Data also includes both the working Planning Tables settings and the saved planning tables.

📋 Live Tables

The Live Tables page provides row-by-row versions of Calculator 1 (Surplus) and Calculator 2 (Needed Withdrawal Rate) so you can compare many independent scenarios at once. Each row recalculates immediately using the calculator's current tax engine and Tax Settings; row inputs save automatically, while calculated outputs are recomputed when the table is opened. You can duplicate, reorder, or delete scenario rows, expand Advanced inputs when needed, and use Print to save a compact landscape snapshot.

Live Tables vs. Scenario Manager
Live Tables are a working comparison sheet for Calculators 1 and 2: enter or edit many scenarios directly in rows and see the results recalculate immediately. Scenario Manager is a broader saved-scenario library: it stores scenarios from all five calculators, preserves the larger standardized set of scenario fields, and lets you load a saved case back into its calculator. Use Live Tables for rapid side-by-side what-if analysis; use Scenario Manager for scenarios you want to save as structured calculator cases.

Live Tables are stored automatically in this browser. Backup Live Tables / Restore Live Tables moves both editable tables between browsers or computers without changing other calculator data. CSV exports the currently selected table as a spreadsheet-readable snapshot, while Excel creates one workbook with Live Surplus and Live Needed WD Rate worksheets. Backup All Data creates a complete browser/device transfer backup, including current calculator inputs, Tax Settings, MAGI/HSA preferences, theme and saved UI settings, Scenario Manager scenarios and column layout, Planning Tables, and both Live Tables.

Which backup should I use?
Backup Scenarios = Scenario Manager only. Backup Live Tables = both Live Tables only. Backup All Data = everything above plus Planning Tables, saved planning tables, and the rest of the saved calculator state, for a complete browser/device transfer backup.

🧰 Tools

Starting scenario
The Tools page copies the current inputs and solved result from any of the five calculators into a separate Starting scenario. Editing the Tools page does not write those changes back to the calculator you loaded. Until you change something on the Tools page, it starts from Calculator 1 each time it opens. Once you edit a Tools input or click a Load button, all Tools inputs (the Starting scenario, each widget's inputs, and the ACA household size, FPL and tax-exempt interest) save automatically in this browser and come back after a refresh; from then on only the Load from Calculator buttons replace the Starting scenario. Tools inputs are included in Backup All Data but are not synced between computers.
Next-dollar cost
The Next-dollar cost widget runs the existing tax engine once for the Starting scenario and once with the selected additional amount, then shows the change in Federal ordinary tax, Federal capital-gains tax, NIIT, California tax, Payroll tax, and total tax. For an LTCG portfolio sale, only the gain portion based on the entered cost-basis percentage is added as taxable gain; an ordinary taxable-account sale is modeled as ordinary income, and a Roth/cash no-tax sale adds no tax.
Room left
The Room left widget repeatedly runs the existing tax engine to find, to the nearest whole dollar, how much additional ordinary income or long-term gain fits before the current federal ordinary bracket, the 0% and 20% capital-gains bands, the NIIT threshold, or an optional MAGI target is crossed. Its Tax-free gain harvesting panel converts the available 0%-federal gain room into an estimated sale amount using the Starting scenario cost basis and shows the incremental federal capital-gains, NIIT, and California tax on that harvested gain. California still taxes capital gains as ordinary income; the harvesting estimate assumes shares held more than one year.
Roth conversion fill
The Roth conversion fill widget searches the existing tax engine for the largest whole-dollar traditional IRA/401(k) conversion that stays within the tax line you choose. A conversion is modeled as ordinary income with no payroll tax, and the card shows the incremental Federal ordinary tax, Federal capital-gains tax, NIIT, California tax, total tax, and average rate. You can fill the current bracket, a selected federal bracket, the 0% capital-gains band, or an entered MAGI target.
ACA cliff check
The ACA cliff check uses ACA MAGI, which equals the calculator's MAGI plus untaxed Social Security plus tax-exempt interest entered in this widget. The FPL is pre-filled from the prior year's guidelines for the coverage year, and its poverty-level defaults live in the yearly-update block with the other annual numbers; the field can still be edited for another year or household. The widget shows the 138% and 400% lines and the room below 400%, but it does not estimate subsidy amounts. Next to ACA MAGI, the card also shows the 400% subsidy line and how far above or below it you are.
Spending worksheet
List your recurring bills with your own labels, monthly or yearly (each fills in the other), and mark each one Baseline or Discretionary. The Baseline total is the spending number to type into a calculator. Starter rows are a checklist: fill in what applies, then use Clear empty rows. The worksheet saves in this browser and is included in Backup All Data. Put each bill in only one row, and leave out income taxes; the calculators compute them. Discretionary rows are shaded so they stand out; Group by type puts all Baseline rows first and Discretionary rows after, keeping your order within each group.
Limitations
The result is an estimate for the current tax year using this site's current Tax Settings. A 401(k) / IRA withdrawal before age 59½ may also owe a 10% early-withdrawal penalty, which this widget does not include. The capital-gains displacement note estimates dollars pushed out of the 0% band only when the increase can be treated as moving into the 15% band; when gains reach the 20% band it reports only that gains moved to a higher band. This planning estimate is not tax advice.

🧭 Using the Tools: questions each widget answers

What the Tools page is for
The five calculators answer a whole-year question: does this plan work, and what withdrawal rate, portfolio, or income does it need? The Tools page answers the questions that come up during the year, one decision at a time: what will this next dollar cost me, how close am I to the next tax line, how much can I convert to a Roth, and where am I against the ACA subsidy lines. Every widget re-runs the same tax engine the calculators use, once without the change and once with it, so the answers include the interactions that rules of thumb miss: ordinary income pushing capital gains out of the 0% band, extra income exposing investment income to NIIT, California taxing capital gains as ordinary income, and payroll tax on wages.
Setting up a question
The Starting scenario panel feeds every widget. The usual steps are:
  1. Click Load from Calculator 1–5 to copy that calculator's inputs and solved result into the Starting scenario, or type the values directly. The calculator itself is not changed.
  2. To model spending dividends without selling shares, click Set WD rate = Dividends (no share sales) under Withdrawal Rate. It sets the withdrawal equal to ordinary plus qualified dividends.
  3. If a MAGI line matters to you, enter it as the MAGI Target (for example, the 400% line shown on the ACA cliff check card). Leave it at $0 if no target applies.
  4. If you buy health coverage through the marketplace, enter your Household size on the ACA cliff check card.
  5. Ask your question in the widget that matches it. Then change one Starting scenario input at a time to see how the answer moves.
The example households used below
You can reproduce every example by typing these values into the Starting scenario. Inputs not listed are $0, Investment Tax Treatment is LTCG, and the Social Security taxable percentage is left at its default. Dollar results are rounded and were computed with the Tax Settings in use when this section was written, so after an annual tax update your results will differ slightly.
  • Couple A, early retirees (MFJ): Ordinary Dividends $3,000; Qualified Dividends $15,000; Total Portfolio Value $1,500,000; Withdrawal Rate 4%; Cost Basis 60%; MAGI Target $84,600 (the 400% ACA line for a household of 2 when this was written); ACA household size 2.
  • Couple B, part-time workers (MFJ): Earned Income $90,000; Ordinary Dividends $2,000; Qualified Dividends $12,000; Total Portfolio Value $1,200,000; Withdrawal Rate 3%; Cost Basis 50%; Pre-tax Retirement Contributions $23,500; HSA Contribution $8,750; ACA household size 2.
  • Couple C, retired with Social Security and a pension (MFJ): Social Security Benefits $55,000; Pension / Other Ordinary Income $70,000; Ordinary Dividends $5,000; Qualified Dividends $15,000; Total Portfolio Value $1,000,000; Withdrawal Rate 4%; Cost Basis 50%.
  • D, single early retiree (Single): Pension / Other Ordinary Income $30,000; Ordinary Dividends $1,000; Qualified Dividends $10,000; Total Portfolio Value $800,000; Withdrawal Rate 4%; Cost Basis 55%; MAGI Target $62,600 (the 400% ACA line for a household of 1 when this was written); ACA household size 1.
  • Couple E, high earners (MFJ): Earned Income $200,000; Ordinary Dividends $10,000; Qualified Dividends $30,000; Total Portfolio Value $2,500,000; Withdrawal Rate 3%; Cost Basis 40%; Pre-tax Retirement Contributions $23,500.
Next-dollar cost: what will this extra income really cost me?
Choose an amount and an income type: Work income (adds payroll tax), 401(k) / IRA withdrawal or pension (ordinary income, no payroll tax), or a Portfolio sale (LTCG with a cost basis, Ordinary for a taxable-account sale such as a short-term gain, or No tax for Roth or cash). The card shows the extra tax in dollars and as a percent of the amount, broken into federal ordinary, federal capital gains, California, NIIT, and payroll. Notes appear when the amount pushes capital gains out of the 0% band, when NIIT starts, or when your MAGI target is crossed. The percent is your true cost for that one decision, and it is often quite different from your tax bracket.
  • Which account should pay for a big purchase? Enter the amount once as a 401(k) / IRA withdrawal and once as a Portfolio sale at your cost basis, and compare the totals.
  • Is extra work worth it after tax? Enter the extra wages as Work income. The Payroll line shows Social Security, Medicare, and California SDI on top of income tax.
  • What will selling this stock position cost? Enter the sale as a Portfolio sale with LTCG treatment and the position's own cost basis %.
  • Will a year-end bonus or extra withdrawal cross a line? Watch the notes for gains pushed out of the 0% band, NIIT starting, or your MAGI target being crossed.
  • What does waiting for long-term treatment save? Enter the same sale once as LTCG and once as Ordinary, and compare.
Example (couple C): paying for a $30,000 car
Taken from the IRA, the $30,000 costs about $8,750 (29%), even though the couple is in the 12% bracket. Only about $11,250 fits in the 12% bracket; the rest is taxed at 22%, and the extra ordinary income pushes about $9,350 of their capital gains out of the 0% band into the 15% band. Sold from the brokerage account at a 50% cost basis, the same $30,000 costs about $3,150 (10.5%), because only the $15,000 gain is taxed. The cheaper source is clear, and the notes explain why.
Example (couple B): an extra $10,000 of work
Another $10,000 of wages costs about $2,640 (26%): 12% federal, about 5% California, and about 9% payroll tax. The same $10,000 from an IRA would cost about $1,740 (17%). But the ACA cliff check shows only about $1,850 of room below the 400% line, so the extra work would also cross the subsidy cliff. The lost subsidy is not part of the Next-dollar cost, so check the ACA card for any decision that raises income.
Example (couple E): selling $50,000 of stock
At a 40% cost basis, the $30,000 gain costs about $7,955 (16%): 15% federal, 9.3% California, and about $665 of NIIT, with the note that NIIT starts.
Room left: how much more before the next tax line?
The table shows how much more income fits before each line, in two columns: extra ordinary income (such as an IRA withdrawal or pension) and extra long-term gain. The lines are the federally tax-free amount (any unused standard deduction), the top of your current federal bracket, the top of the 0% capital-gains band, the start of the 20% band, the NIIT threshold, and your MAGI target. The Tax-free gain harvesting panel turns the 0% room into a sale amount at your cost basis and shows the California tax that still applies, because California has no 0% rate for capital gains.
  • How much can I withdraw this year and stay in my bracket? Read "To the top of the current bracket" in the ordinary-income column.
  • How much gain can I take at 0% federal tax? Read "Before gains leave the 0% band", or the harvesting panel's sale amount.
  • How close am I to NIIT? Read "Before the NIIT threshold".
  • Which limit do I hit first? Compare the rows. The smallest amount among the lines you care about is your real limit.
  • Should I harvest gains this year to raise my cost basis? The harvesting panel shows the gain, the amount of shares to sell, and the California cost. Selling at a gain and buying back right away is allowed; the wash-sale rule applies only to losses.
Example (couple A): early retirees in a low-income year
About $29,200 more ordinary income would be completely free of federal tax, because their income does not use up the standard deduction. About $54,000 fits to the top of the 10% bracket, and about $96,300 of gains fits before leaving the 0% band. Harvesting shows they could realize that $96,300 gain at 0% federal tax by selling about $240,750 of shares, for about $4,040 of California tax. But their MAGI target row shows only about $49,800 of room, so harvesting the full amount would cross their ACA line.
Example (D): the ACA line comes first
She has about $15,100 of 0% gain room, but only about $12,150 before her MAGI target (the 400% ACA line for one person). The ACA line, not the 0% band, is her real limit for extra withdrawals or harvesting this year.
Example (couple E): close to NIIT
Only about $12,500 of room remains before the NIIT threshold. Past that point, part of their investment income starts to owe the extra 3.8%.
Roth conversion fill: how much can I convert, and what will it cost?
Pick where to stop: the top of your current bracket, the top of any federal bracket, keeping your gains in the 0% band, or staying at or under your MAGI target. The card finds the largest whole-dollar conversion that stays within that line and shows the tax in dollars and as an average rate, its breakdown, and your MAGI after the conversion. It tells you what a conversion costs this year. Whether converting is worth it also depends on your future tax rate (for example, required minimum distributions, or a surviving spouse filing as Single), which this single-year tool does not model.
  • How much can I convert and stay in the 12% (or 22%, or 24%) bracket? Choose that bracket.
  • How much can I convert and keep my ACA subsidy? Set the MAGI Target to the 400% line and choose "Stay at or under my MAGI target".
  • How much can I convert without taxing my capital gains? Choose "Keep my gains in the 0% band".
  • What does "filling the bracket" really cost? Compare the average rate with the bracket rate. If you also have capital gains, the average rate can be far higher than the bracket, because the conversion pushes gains out of the 0% band.
  • Should we convert while still working? Check the NIIT line. A conversion is not investment income, but it raises MAGI, which can make your dividends and gains owe NIIT.
Example (couple A): the early-retirement conversion window
Staying at or under their $84,600 ACA line allows a conversion of about $49,800 for about $3,410 (6.9%). Filling the 10% bracket instead converts $54,000 for about $4,000, but the card shows MAGI after the conversion of $88,800: over the ACA line, which would cost them the premium tax credit. Keeping gains in the 0% band allows about $96,300 for about $11,590 (12%). Filling the 12% bracket converts about $130,000 for about $23,210 (18%), including about $4,770 of capital-gains tax on gains pushed out of the 0% band.
Example (D): "the 12% bracket" is not 12%
Filling her 12% bracket converts about $35,500 at an average rate of about 28%, because the conversion pushes all of her gains into the 15% band and California taxes the conversion too. Staying under her ACA line converts about $12,150 at about 18%.
Example (couple E): converting while working
Filling their 22% bracket converts about $57,100 at an average rate of about 34%, including about $1,695 of NIIT on their investment income. A conversion in a lower-income year after retirement would usually cost much less.
ACA cliff check: where am I against the subsidy lines?
Enter your household size and any tax-exempt interest (for example, municipal bond interest). The card builds ACA MAGI from the calculator's MAGI plus the untaxed part of Social Security plus tax-exempt interest, shows it as a percent of the federal poverty level (FPL), and shows two lines: 400% of FPL (the subsidy cliff under current law) and 138% of FPL (below it, California adults generally qualify for Medi-Cal instead of subsidized Covered California plans). It also shows how much more ordinary income or long-term gain fits below the 400% line. It does not estimate your subsidy; use the linked KFF calculator, HealthCare.gov, or Covered California for dollar amounts. It applies to people buying marketplace coverage, which generally means before Medicare at 65.
  • How much more can I withdraw or earn and keep my subsidy? Read the room below the 400% line.
  • Will a bonus, an extra shift, or a fund's year-end capital-gain distribution push me over the cliff? Compare the amount with the room below 400%.
  • Am I close to the Medi-Cal line? Compare ACA MAGI with the 138% line.
  • Do my Social Security and muni-bond interest count? Yes. The card adds both, which the MAGI used elsewhere on this site does not.
  • What MAGI Target should I use in the other tools and in Calculator 5? The 400% line shown here. If you have untaxed Social Security or tax-exempt interest, lower the target by those amounts, because the rest of the site uses tax-return MAGI (see Known limitations).
Example (couple B): right at the cliff
ACA MAGI is about $82,750, about 391% of FPL for two people, leaving only about $1,850 of room below the 400% line. Almost any extra income this year, including an extra shift or a mutual fund's year-end distribution, would cross it.
Example (couple A): comfortably in the subsidy range
ACA MAGI of about $34,800 is about 165% of FPL: above the 138% Medi-Cal line (about $29,190) and about $49,800 below the 400% line.
Example: Social Security before Medicare
A couple aged 63 with couple C's income (Social Security $55,000, pension $70,000) has calculator MAGI of about $146,750 but ACA MAGI of about $155,000, because the untaxed 15% of their Social Security ($8,250) counts for ACA purposes.
Reading the results sensibly
When several widgets apply, the smallest room among the lines you care about is your real limit. All results are estimates for the current tax year using this site's Tax Settings. Social Security uses a fixed taxable percentage; if your income is in the range where more of your benefit becomes taxable as income rises, the real cost of extra income can be higher than shown. Medicare premium surcharges (IRMAA), which are based on MAGI from two years earlier, are not modeled. Withdrawals before age 59½ may owe a 10% penalty that is not included. This is a planning estimate, not tax advice.

🧮 Understanding the Dashboard

The five calculators each answer a different retirement question, but they all describe the same financial situation — your portfolio, your income, your spending. The All 5 Calculators Dashboard puts all five side by side so you can see every answer for that one scenario at the same time.

On the left is the Shared Inputs panel. Type your numbers there once — filing status, portfolio value, expenses, dividends, and so on — and all five cards update together. You are not filling out five separate forms; you are describing one scenario, and each card responds to it.

Each card solves for one field, replacing what you typed
This is the key to reading the dashboard. Calculator 2 solves for your withdrawal rate, so it crosses out the withdrawal rate in the shared panel and shows the rate you would actually need. Calculator 3 solves for portfolio value and shows how large your portfolio needs to be. Calculator 4 solves for earned income. Calculator 1 keeps every field as you typed it — it shows where you stand today. Hover over any card to highlight the inputs it uses.

Dashboard vs. a single calculator: Use the dashboard when you want all five answers for one consistent scenario at a glance. Open a calculator’s single view when you want to give that one calculator its own independent inputs without affecting the others.

▶ How to use

  1. Click the Calculator tab
  2. Choose your filing status — MFJ or Single. Each single calculator has its own editable filing status; on the All 5 Calculators Dashboard, the Shared Inputs panel sets one filing status that applies to all five calculators.
  3. Enter your inputs — sample values are pre-loaded as a realistic example
  4. In Calculator 1, click Set WD rate = Dividends (no share sales) if you want to model spending dividends without selling shares.
  5. Read the primary result box at the top of each calculator result panel
  6. Save scenarios using the + Save to Scenario Manager button in the active single-calculator view or dashboard card
  7. To customize for a different state, edit the Tax Settings tab. Changing the State Name alone only changes labels; you must also update the state brackets and assumptions.
  8. To track ACA health-insurance planning, enter your chosen MAGI Target in the calculator inputs, such as the applicable FPL-based limit for your household size. Each calculator then shows whether MAGI is over or under target.
  9. Your calculator inputs are saved automatically and reloaded on your next visit. To start fresh, use Reset calculator to sample data or Clear calculator to zero in a single-calculator view. In the dashboard view, use Reset dashboard calculators to sample data or Clear dashboard calculators to zero.
  10. In Tax Settings, click 💾 Save as My Defaults when you want the current Tax Settings to become this browser’s persistent custom defaults. Compatible My Defaults continue loading across ordinary HTML revisions; HSA settings save automatically.
Not tax or financial advice. Verify all results with a qualified CPA or financial advisor before making decisions. This tool is for planning and exploration only.

⭐ Key features

  • Live recalculation — outputs update on every keystroke; no submit button needed
  • MFJ / Single filing controls — each single calculator can use its own filing status, while the All 5 Calculators Dashboard uses one shared filing status for all five cards; both use the same tax tables
  • Theme — use the "Switch to Aurora" / "Switch to Classic" button in the top bar to toggle between the Classic light theme and the Aurora dark theme
  • Copy inputs — the Copy Calc 1 inputs to 2-5 button copies Calculator 1's inputs into Calculators 2, 3, 4, and 5 in the same view. The dashboard also includes Copy all input values from single calculator view to dashboard.
  • Effective tax rate — shown below Total Tax in every calculator's breakdown
  • Collapsible tax breakdown — click the "Tax Breakdown" title to collapse the detail rows
  • Tax Settings panel — all brackets, rates, thresholds, and deductions are editable; changes apply instantly to all calculators
  • Save as My Defaults — stores the current Tax Settings as this browser’s persistent custom configuration. They reload automatically only when both the saved Federal/State tax years match the current calculator and the built-in Tax Settings configuration is unchanged. Ordinary app-version, wording, layout, accessibility, styling, and unrelated UI changes do not invalidate them. Annual tax updates and same-year built-in tax corrections intentionally stop older My Defaults from loading over the new built-ins; the old saved record is retained so you can review the new values and save a new compatible configuration if desired.
  • Scenario Manager — save, compare, sort, filter, and duplicate scenarios; export as JSON, CSV, or Excel
  • Print-friendly — calculator print buttons create compact calculator reports. Scenario Manager printing is available for quick previews, but Export to Excel or CSV is recommended for the cleanest printed scenario tables
  • MAGI target helper — enter your target in the calculator inputs; each calculator then shows whether your MAGI is over or under target, and by how many dollars.
Tax Settings: save vs. backup vs. restore
Save as My Defaults explicitly saves the current Tax Settings as this browser’s persistent custom defaults. Backup Tax Settings exports the Tax Settings currently visible on screen, including their compatibility metadata, but does not change My Defaults or make unsaved experiments persistent. Backup All Data exports the calculator’s current browser state, including the Tax Settings currently visible on screen, but merely creating the backup does not change My Defaults. Restore Tax Settings is conditional: a compatible file is applied and saved as My Defaults; a year-mismatched, fingerprint-mismatched, or legacy file warns first and, if accepted, is applied for the current session only without replacing My Defaults. Restore All Data is compatibility-gated: compatible backup Tax Settings replace stored My Defaults and load normally after reload; incompatible or legacy backup Tax Settings are skipped, existing My Defaults (if any) remain unchanged, and all other backup data still restores. A one-time notice explains when backup Tax Settings were skipped.
Sync between computers (Chrome or Edge)
Tax Settings → Sync between computers keeps your saved scenarios, saved Planning Tables and presets, spending worksheet, Scenario Manager layout and My Defaults in step through a sync file you choose. On the first computer click Create sync file and save it in a folder that your cloud drive copies to your other computers (for example Google Drive for desktop). On each other computer click Use existing sync file and pick the same file. After that, changes are saved to the file automatically, and newer changes from another computer load when you open the calculator or return to its tab. Calculator inputs, Tools page inputs, Tax Settings, MAGI/HSA settings and the theme are not synced. If both computers changed saved items before syncing, the calculator asks which version to keep and saves the other as a safety copy you can download. Chrome may ask you to click Reconnect when you return; choose Allow on every visit to skip that. Sync works only in Chrome or Edge on a computer; Backup All Data and Restore All Data still work everywhere.
When saved My Defaults continue to load
My Defaults reload automatically only when both conditions remain true: (1) the saved Federal and State tax years match the current calculator, and (2) the built-in Tax Settings fingerprint still matches the built-in configuration under which the defaults were saved. The full-backup file may contain an appVersion, but application version by itself does not determine Tax Settings compatibility. Ordinary same-tax-year revisions — such as wording, layout, Read Me, accessibility, styling, or unrelated UI fixes — continue loading compatible My Defaults when the tax years and built-in Tax Settings are unchanged.
Annual updates and same-year tax corrections
After a new calculator version updates the annual Tax Settings, open the new version and let the calculator load its new built-ins. My Defaults from the prior tax-year configuration are retained in browser storage but are not automatically applied. Review the new Federal and State Tax Settings, make any desired custom changes, and click Save as My Defaults if you want those settings to persist across later compatible revisions. A tax-year change is not the only trigger: if a later release corrects a built-in bracket, deduction, threshold, or other built-in Tax Settings value while keeping the same displayed years, the fingerprint changes and older My Defaults are likewise held back. This prevents saved custom settings from silently masking a correction to the calculator’s built-in assumptions. No manual clearing of browser storage or deletion of old backups is required.
Restoring an older full backup after a tax update
Example: a December 2026 full backup contains Federal 2026 / State 2025 Tax Settings. The calculator is then updated to Federal 2027 / State 2026, and on January 3 the old full backup is restored. Calculator inputs, scenarios, Planning Tables, saved planning tables, Live Tables, preferences, and theme restore normally, but the incompatible 2026/2025 Tax Settings are skipped rather than written over My Defaults. Existing My Defaults, if any, remain unchanged. After reload, compatible existing My Defaults load normally; otherwise the current 2027/2026 built-in Tax Settings remain active. A one-time notice explains that the backup Tax Settings were skipped. Review the current settings, make any desired changes, and click Save as My Defaults if you want a new persistent custom configuration.
ACA/FPL timing note
ACA premium tax credit calculations for a coverage year generally use federal poverty line (FPL) thresholds published before that coverage year begins. Current-year coverage can rely on the prior year's FPL guidelines because open enrollment and plan pricing occur before the new year. ACA subsidy rules can change, so verify the current rule and FPL threshold before relying on the MAGI target for planning.
  • No account required — your inputs, scenarios, and settings are stored in your browser's local storage and never transmitted to any server — if you turn on Sync between computers, the calculator also saves your saved items to a file you choose on your own computer (for example in your Google Drive folder); it still sends nothing to any server.

💵 Dividend-only withdrawal rate

Set WD rate = Dividends (no share sales)
Calculator 1 keeps one consistent definition: total desired withdrawal rate includes dividends plus share sales. The dividend-only shortcut sets the withdrawal rate equal to (ordinary dividends + qualified dividends) ÷ portfolio value. This models spending portfolio dividends with no share sales. The same button is in the Tools page's Starting scenario panel, under Withdrawal Rate.
Scenario Manager impact
Scenarios save the resulting withdrawal rate, not the button click itself. For example, if dividends are $32,000 and portfolio value is $4,000,000, the saved withdrawal rate is 0.80%. Loading the scenario later restores that withdrawal rate and keeps the calculator consistent with the other calculators.
Dividend-only rate in Calculator 2 and Planning Tables
Calculator 2 and its dashboard card show the dividend-only rate next to the needed withdrawal rate: (ordinary dividends + qualified dividends) ÷ portfolio value, with the total dividends in dollars. They also show how far the needed draw is above dividends, as a rate and in dollars; that dollar amount is the same as Share Sales. If dividends are more than the needed draw, they show how much dividends exceed it instead. For example, with a $7,800,000 portfolio and $90,000 of dividends, the dividend-only rate is 1.15%; a needed rate of 1.81% ($141,464) is +0.66% ($51,464) above dividends. The Planning Tables header shows Total Dividends and the Dividend-only Rate for the portfolio in use. This is a display only: it does not change any calculation.

🔁 Rate net of Pre-tax Contrib + HSA

Show rate net of Pre-tax Contrib + HSA (tick box)
Pre-tax Retirement Contributions (shown as “Pre-tax Contrib”: 401(k), 403(b), 457 and deductible IRA contributions) are paid for by the withdrawal, so they raise the withdrawal rate the calculators show, even though that money goes back into your accounts. HSA contributions are paid for by the withdrawal too, as part of your Annual Expenses or on top of them (Tax Settings, HSA included in expenses). Tick Show rate net of Pre-tax Contrib + HSA under the Withdrawal Rate in any calculator to also see the rate with those contributions taken back out: (withdrawal − Pre-tax Contrib − HSA) ÷ portfolio value. Pre-tax Contrib is always subtracted. The HSA is subtracted only when HSA included in expenses is No: then the HSA contribution is savings on top of your spending and stays in your accounts. With Yes (the default) the HSA pays medical bills that are already in your Annual Expenses, so nothing goes back in and the HSA is not subtracted. The line says which ones it subtracted. Calculator 3 uses the solved portfolio size. For example, a $4,200,000 portfolio with $24,500 of Pre-tax Contrib and $9,000 of HSA contributions needs a $98,294 withdrawal (2.34%) with Yes, and shows "Net of Pre-tax Contrib: 1.76% ($73,794 net)" under the tick box and "−$24,500 back in = $73,794 net" under Investment Income ($98,294); the dashboard card shows "Net of Pre-tax Contrib 1.76%: $98,294 withdrawn − $24,500 back in = $73,794 net withdrawal". With No, the same spending needs $107,572 (2.56%), because the $9,000 now comes on top of Annual Expenses, and the line shows "Net of Pre-tax Contrib + HSA: 1.76% ($74,072 net)". The two net rates match because the household spends the same either way; the $278 difference is the tax on the larger withdrawal. The $73,794 is already net; do not subtract the contributions again. If you spend only part of the HSA contribution in the year, the net rate is approximate. If the contributions are larger than the withdrawal, the net rate and the net withdrawal are negative. Each calculator's dashboard card follows the same tick box, and the Show rates net of Pre-tax Contrib + HSA (all calculators) box in the dashboard's Shared Inputs panel ticks or clears all five at once. The choice is remembered in this browser only, not in scenarios, backups or sync. The Planning Tables show the same net rate in small type, with their own checkbox (see Net rates in the Planning Tables section). This is a display only: it assumes your pre-tax retirement and HSA balances are part of the portfolio value you entered, it does not account for the future tax on pre-tax money, and it does not change any calculation.

💡 Key concepts

Ordinary income
Wages, Traditional 401(k)/IRA withdrawals, interest, and ordinary dividends. Taxed at regular progressive federal rates and full state rates.
Long-Term Capital Gains (LTCG)
Profits from selling assets held more than a year. Federally taxed at preferential LTCG rates. Cost basis % applies only to the share-sale residual — not to dividends. A 60% cost basis means 40% of the sale residual is taxed as a realized capital gain.
Example: A $120,000 withdrawal with $5,000 ordinary dividends, $5,000 qualified dividends, and a $110,000 share-sale residual at 50% cost basis produces $55,000 of taxable gain. California then taxes $5,000 ordinary + $5,000 qualified + $55,000 gain = $65,000 CA-taxable investment income before deductions.
Qualified dividends
Dividends from certain stocks held long enough. Taxed federally at LTCG rates. Most states treat them as ordinary income.
Total Desired Withdrawal Rate
The percentage of your portfolio you withdraw per year — this includes dividends. If your portfolio is $1M and your withdrawal rate is 4%, your annual portfolio withdrawal is $40,000 (dividends + share sales combined, not in addition to).
HSA Included In Expenses
Yes is the default. This setting affects cash-flow/surplus math, not the federal HSA tax deduction. Choose Yes when the HSA contribution/outflow is already included in your Annual Expenses, so it is not subtracted twice. If your HSA pays your medical bills, list those bills in Annual Expenses and choose Yes. Choose No when the HSA contribution is savings on top of your Annual Expenses; in that case it is subtracted separately from net income. The setting also decides whether Show rate net of Pre-tax Contrib + HSA counts the HSA as money going back into your accounts (only with No). State HSA deductibility is controlled independently in Tax Settings.

🔢 How the math works

When you enter inputs, the calculator works through this chain:

  1. Compute total portfolio income: Portfolio × Withdrawal Rate
  2. Subtract your dividends (ordinary + qualified) — what's left is the implied "share sale"
  3. Categorize each income stream by tax treatment (ordinary vs. LTCG vs. tax-free)
  4. Apply federal brackets to ordinary taxable income
  5. Stack LTCG on top of ordinary income and apply preferential LTCG rates by threshold
  6. Apply state brackets to state-taxable income (state treats LTCG as ordinary; Social Security benefits are excluded)
  7. Compute payroll taxes on earned income only
  8. Subtract everything to get net income; compare to expenses to get surplus or shortfall

For Calculators 2, 3, 4, and 5, a bisection solver works backwards — it tries values of the unknown variable until the math balances at the relevant target, such as target spending or the ACA/MAGI target.

📋 Income types

Input Federal treatment State treatment
Earned income (W-2)Ordinary bracketsOrdinary brackets + payroll taxes
Social Security benefitsTaxable % included in ordinary brackets ( default, adjustable)Excluded from state taxable income (California and most states); no state income tax or payroll tax on benefits
Pension / other ordinary incomeFully included in ordinary bracketsFully included in ordinary brackets (no payroll tax)
Ordinary dividendsOrdinary bracketsOrdinary brackets
Qualified dividendsLTCG rates (stacked)Ordinary brackets
Share-sale residual (LTCG)LTCG rates on gain portionOrdinary brackets on gain portion
Roth / cash / no-taxNot taxedNot taxed

🏛 Tax coverage

Federal tax coverage
  • Progressive ordinary income tax brackets for MFJ and Single filing status
  • Federal standard deduction settings
  • Long-term capital gains and qualified dividend stacking
  • Net Investment Income Tax where applicable
  • 401(k) and HSA deductions for federal taxable income and MAGI
  • Configurable taxable percentage for Social Security benefits
Payroll tax coverage
  • Social Security payroll tax on wages
  • Medicare payroll tax on wages
  • Additional Medicare Tax on wages where applicable
  • State payroll/disability tax where configured
  • No payroll tax on Social Security benefits, pension income, dividends, or portfolio withdrawals
State tax coverage
  • Editable state name, bracket schedule, standard deduction, and exemption credit settings
  • State treatment of long-term capital gains and qualified dividends as ordinary income unless manually adjusted
  • Social Security benefits excluded from state taxable income (matches California and most states)
  • State HSA conformity or nonconformity based on Tax Settings
  • High-income state surtax where configured
  • Exact rates, brackets, thresholds, deductions, credits, and state assumptions are shown and editable in the Tax Settings tab.

⚠️ Important nuances

Withdrawal rate includes dividends
If your withdrawal rate is 4% and your portfolio is $1M, the model assumes $40,000 of total portfolio income — including dividends. Dividends and share sales are different sources of the same $40k, not additions on top of it.
Why higher ordinary dividends increase the needed withdrawal rate
In Calculator 2, increasing ordinary dividends will increase the rate the solver returns. This isn't a bug — ordinary dividends are taxed at higher rates than LTCG. Shifting income from "share sale at preferential LTCG rates" to "ordinary dividend at regular progressive rates" creates more tax, so you need to withdraw more total to net the same spending.
Why 401(k) or HSA deductions may look offset in solver calculators
In Calculators 2, 3, and 4, the calculator solves backward to hit your target spending. A 401(k) or HSA contribution still reduces federal taxable income and MAGI directly, but the solver may increase the needed withdrawal, portfolio size, or earned income to keep net spending funded. If the extra solved withdrawal is taxed as ordinary income, the offset can be exact: 401(k) contribution reduces MAGI by $1; extra ordinary withdrawal increases MAGI by $1; net MAGI change = $0. So MAGI may appear unchanged even though the deduction is included.
State taxes vary widely
California is built in, but you can enter any state's brackets in the Tax Settings tab. For states with no income tax (TX, FL, NV, SD, WY, AK, TN, NH, etc.), set all state bracket rates to 0%.

Nine states (AR, HI, MT, ND, NM, SC, VT, WA, WI) tax LTCG differently from ordinary income — the calculator will overstate state tax for residents of those states. See the Read Me's "What this calculator does NOT model" section for details.

Social Security is excluded from state taxable income (correct for California and most states); the few states that tax Social Security use income-based phaseouts that are not modeled.

🗺 Customizing for your state

The calculator loads with California-style defaults, but the State Tax Settings are editable. Changing the state name only changes labels; to model another state, also update the standard deduction, exemption credit, bracket schedule, HSA state treatment, payroll/SDI rate, and high-income surtax settings. See the Tax Settings tab for the editable fields.

  • If your state has fewer brackets, enter the real brackets from top to bottom in ascending lower-threshold order, then enter $0 and 0% in any unused bracket rows at the bottom.
  • If your state has more brackets than the table allows or uses special worksheets, the state-tax estimate may require approximation or code changes.
  • For states with no income tax, set the state bracket rates to 0%. Separate taxes outside the ordinary income-tax schedule may not be modeled.

📁 Scenario Manager

The Scenario Manager lets you build a library of "what if" cases side by side.

To save a scenario: run any of the five calculators in a single view or dashboard card, then click + Save to Scenario Manager and give it a name like "Base case — retire 2027".

To load a scenario: go to the Scenario Manager tab, find the row, and click Load — the saved inputs populate into the matching calculator view and the calculator recalculates. Click Duplicate to copy a scenario and modify it, or Delete to remove it.

To sort and filter: use the Sort buttons (Extra/Mo, Withdrawal Rate, Portfolio) and Filter buttons (Calc 1–5) above the table to focus on what matters. Null values always sort to the bottom.

To export or print: use Backup Scenarios for a restorable JSON backup. Scenario Manager CSV and Excel exports use the same standardized 46-column schema and names as Excel v78, in canonical order. The 🖨 Print selector is grouped into the same seven categories and continues to select the intended fields even after columns are reordered.

To back up and move scenarios only: use Backup Scenarios and Restore Scenarios to move saved scenarios between browsers or devices. Use Backup All Data in Tax Settings to move scenarios plus calculator inputs, Tax Settings, MAGI/HSA preferences, theme, Scenario Manager column layout, Planning Tables, saved planning tables, and Live Tables.

🔒 Your data never leaves your device. No account required. No login. Your inputs, scenarios, and settings are saved in your browser's local storage and never transmitted anywhere. If you clear your browser's site data, saved scenarios will be erased — use Backup Scenarios regularly to keep a scenarios-only backup, or Backup All Data for a full browser/device transfer.

💾 What saves automatically

  • ✅ Calculator inputs — saved on every field change; restored on your next visit
  • ✅ Scenarios — saved whenever you click "+ Save to Scenario Manager"
  • ✅ Planning Tables — table settings, scenario levels, rate bands, and active table are saved automatically and are included in Backup All Data. Saved planning tables (named copies) are stored separately and are also included in Backup All Data.
  • ✅ Live Tables — row inputs save automatically; calculated outputs are recomputed from the current HTML engine when the table is opened
  • ✅ Spending worksheet (Tools page): rows save automatically and are included in Backup All Data
  • ✅ Tools page inputs: the Starting scenario and widget inputs save automatically once you edit them or click a Load button, are included in Backup All Data, and are not synced
  • ✅ HSA settings — saved whenever you change either HSA toggle in Tax Settings
  • ✅ Dark mode preference — remembered across visits
  • ✅ MAGI target settings — saved automatically when changed
  • ⚠️ Tax Settings / My Defaults — ordinary Tax Settings edits are session-only until you click Save as My Defaults. Saved My Defaults auto-load only while the Federal/State tax years and built-in Tax Settings fingerprint remain compatible; backup buttons do not change My Defaults merely by creating a file.

✅ How the tax math was checked

Multiple independent checks
The tax engine was checked against multiple independent sources before release and after the later Social Security / pension, Additional Medicare Tax, and high-income state surtax changes:
  • PSLmodels Tax-Calculator — an open-source Python library used by economists and tax-policy researchers to model federal tax law. The calculator's federal outputs were compared for the regression scenarios on the overlapping federal items: AGI/MAGI-style income, regular federal tax, NIIT, and total federal income tax.
  • OpenTaxSolver US 1040 + Form 8960 / Form 8959 — open-source tax preparation software run from command-line input files. It was used as a separate federal check for regular federal tax, qualified-dividend/LTCG behavior, NIIT, and Additional Medicare Tax under matching test-year assumptions.
  • OpenTaxSolver CA 540 — OpenTaxSolver's California Form 540 module. It was used to check the California tax-from-California-AGI layer: standard deduction, bracket tax, personal exemption credit, and final CA tax for the overlapping lines. Remaining high-income differences were explained by California exemption-credit phaseout, which is user-adjustable but not automated, and separate high-income surtax line handling.
  • PolicyEngine US — an open-source microsimulation model of US federal and state tax-benefit rules. It was used as an independent cross-check on California results built from raw inputs and on federal results in a matching-year simulation.
  • AARP's federal calculator and California FTB materials — selected federal cases were checked against AARP's federal calculator, including complex investment-income and NIIT cases. California bracket math and state constants were checked against California FTB materials.
Payroll taxes were checked against published Social Security, Medicare, Additional Medicare Tax, and state SDI assumptions. The regression and external checks covered both filing statuses, earned wages, Social Security taxable percentage, Pension / Other Ordinary Income, ordinary and qualified dividends, long-term capital gains, ordinary share-sale income, 401(k) and HSA deductions, NIIT, Additional Medicare Tax, California HSA nonconformity, high-income state surtax logic, and a dividends-exceed-withdrawal edge case.

These checks reduce the risk of errors, but this calculator is still an estimate and is not a substitute for professional tax advice.

📌 Known limitations

Enter traditional IRA and 401(k) withdrawals as Pension / Other income
Traditional IRA and 401(k) withdrawals are ordinary income, but they are not subject to the 3.8% Net Investment Income Tax (NIIT). Enter them in Pension / Other Ordinary Income, which the calculator taxes correctly. Do not model them by setting Investment Tax Treatment to Ordinary Income: that setting is meant for taxable-account sales taxed as ordinary income (for example, short-term gains), and the calculator includes those sales in NIIT. When MAGI is above the NIIT threshold ($250,000 Married Filing Jointly / $200,000 Single), using that setting for IRA or 401(k) money overstates federal tax by up to 3.8% of the amount. Federal income tax and state tax on the same dollars are the same either way; only NIIT differs.
MAGI here is the tax-return MAGI, not ACA MAGI
The MAGI shown in the calculators, and the MAGI Target that Calculator 5 solves to, is the tax-return (AGI-based) figure: income minus 401(k) and HSA contributions, counting only the taxable part of Social Security. That is the correct MAGI for NIIT. The ACA premium tax credit uses a larger MAGI that also adds back the untaxed part of Social Security and any tax-exempt interest. If you have either one and use the MAGI Target for ACA planning, your ACA MAGI will be higher than shown, and Calculator 5 can overstate how much you can withdraw while staying under an ACA limit. For example, $30,000 of Social Security at the 85% taxable setting makes ACA MAGI $4,500 higher than the calculator's MAGI. The ACA cliff check on the Tools page computes ACA MAGI with both add-backs. Medicare IRMAA uses a different MAGI again (it adds tax-exempt interest).
Traditional IRA contributions that are only partly deductible
The calculator treats everything in Pre-tax Retirement Contributions as fully deductible: it lowers federal and California taxable income and MAGI, and it is subtracted from the cash available to spend. That is always right for 401(k), 403(b) and 457 deferrals. A traditional IRA contribution, however, can be only partly deductible, or not deductible at all, when you or your spouse are covered by a retirement plan at work and your income is in or above the IRS phase-out range for that year. The calculator does not figure this limit. Enter only the deductible portion in Pre-tax Retirement Contributions, and add the nondeductible portion to Annual Expenses (cash outflow) so the calculator still funds the after-tax cash outflow. Because the calculator plans one year at a time, this gives the same cash result as the contribution itself, without a tax deduction it does not earn. Nondeductible contributions are reported to the IRS on Form 8606.
Which MAGI the IRA phase-out uses
The phase-out test uses modified AGI figured before any traditional IRA deduction. On a joint return it is one figure for the couple, with the IRA deductions of both spouses left out, and each spouse's deduction is tested against that same figure. It includes wages (already reduced by 401(k), 403(b) and 457 deferrals), interest, dividends, realized capital gains, pension and IRA withdrawals, and the taxable part of Social Security, minus HSA contributions. Tax-exempt interest is not included. The IRS also adds back a few items this calculator does not model: the student loan interest deduction, the foreign earned income and housing exclusions, excluded savings bond interest, and employer-provided adoption benefits. The calculator's MAGI subtracts everything in Pre-tax Retirement Contributions, so once an IRA amount is entered there, the MAGI shown is lower than the phase-out figure by that amount. To use the calculator for the phase-out test:
  1. Enter your 401(k), 403(b) or 457 deferrals in Pre-tax Retirement Contributions, but leave out the traditional IRA contributions of both spouses.
  2. Read the MAGI the calculator shows. That is the modified AGI to use in Worksheet 1-2, Figuring Your Reduced IRA Deduction, of IRS Publication 590-A (use the edition for the tax year you are planning), or in Vanguard's IRA contribution calculator, which also asks whether you or your spouse are covered by a workplace plan.
  3. Add each spouse's deductible portion to Pre-tax Retirement Contributions and each nondeductible portion to Annual Expenses (cash outflow). The MAGI now shown is the tax-return MAGI after the IRA deduction: the one used for NIIT, and the starting point for ACA MAGI.
  4. In Calculators 2–5, which solve for a value, the result can shift after step 3. The new MAGI plus the deductible IRA amounts you entered is the updated phase-out figure; if it changes the deductible amount, update the two entries once more. Repeat these steps whenever a scenario's income changes. Outside the phase-out range the IRA is either fully deductible or not deductible at all, so no recalculation is needed there.

🚫 What this calculator does NOT model

  • Full Social Security benefit taxation formula — the calculator uses a fixed taxable percentage (default shown in Tax Settings, adjustable by the user) rather than automatically applying the IRS phase-in formula based on combined income. Earlier calculator versions treated the former combined SS / Pension field as fully taxable, so older saved scenarios with Social Security income may show different results after this update.
  • State taxation of Social Security in the few states that tax it — California (built in) and most states fully exclude Social Security from state taxable income, which the calculator models by excluding Social Security from the state base. The roughly eight states that still tax Social Security (e.g. CO, CT, MN, MT, NM, RI, UT, VT) do so through income- and age-based phaseouts that are not modeled; for those states the calculator understates state tax on Social Security.
  • Multi-year projections, inflation, sequence-of-returns risk, or Monte Carlo simulation
  • RMDs, Roth conversions, or account sequencing optimization
  • Itemized deductions — the standard deduction is assumed
  • Alternative Minimum Tax (AMT)
  • Tax credits beyond the basic state exemption credit
  • ACA premium tax credit calculation or Form 8962 reconciliation — the calculator tracks MAGI against a user-entered target but does not calculate the actual subsidy or repayment amount
  • Full federal-to-state adjustment worksheets or state-specific tax worksheets beyond the editable bracket, deduction, credit, HSA, payroll, and surtax settings
  • State exemption-credit phaseouts — some states reduce or eliminate exemption credits at higher incomes using state-specific worksheets. The calculator does not automatically model those phaseouts; adjust the State Exemption Credit manually in Tax Settings if applicable.
  • State LTCG preferential or separate state capital-gains taxes — some states (including AR, HI, MT, ND, NM, SC, VT, WA, and WI) tax long-term capital gains differently from ordinary income. Because this calculator generally treats LTCG as ordinary income for state purposes, state tax may be overstated or otherwise not match those states. For WA residents, set state income-tax bracket rates to 0%; Washington's separate capital gains tax is not modeled.

🔧 Technical notes

  • Tax engine written in vanilla JavaScript; bisection solver runs 60 iterations per calculation for precision equivalent to less than a penny on any result
  • All data stored in browser localStorage — see "What saves automatically" above for details
  • Print-optimized CSS included; use calculator header print buttons for calculator reports. For wide Scenario Manager tables, Export to Excel or CSV usually prints more cleanly than browser print.

📝 Calculation changelog

2026-06-14 — Fixed California tax on Social Security: California fully excludes Social Security benefits from state taxable income (Schedule CA 540 subtraction, R&TC §17087), but the calculator had been including the federally-taxable portion (up to 85%) in the California base. Social Security is now excluded from the state computation; the federal treatment (up to 85% taxable) is unchanged. California tax is lower and net income higher for any scenario with Social Security benefits.
2026-06-06 — Visual interface changes were made to the website, including layout and usability updates, but the underlying calculation engine was unchanged.
2026-06-03 — Added Additional Medicare Tax (Form 8959) on wages above the configured threshold. Previously not modeled; high-wage earners' payroll taxes were understated. The rate and thresholds are configurable in Tax Settings.
2026-06-03 — Added configurable high-income state surtax on state taxable income above the configured threshold. Previously not modeled; filers subject to a state high-income surtax could have understated state tax. The rate and threshold are configurable in Tax Settings and can be disabled there for states without this tax.
2026-06-03 — Added configurable Social Security taxable percentage in Tax Settings. Previously Social Security and pension income were treated the same way for tax purposes. The taxable percentage can now be adjusted in Tax Settings. Saved scenarios from the prior version that included Social Security income may show different taxes after this update.
2026-06-03 — Fixed Calculator 4 (Needed Earned Income): the bisection solver's lower-bound probe was missing the Pension / Other Ordinary Income value, causing Calculator 4 to overstate needed earned income when pension income was entered. Calculators 1, 2, 3, and 5 were unaffected.
2026-06-03 — Split the former combined SS / Pension input into separate Social Security Benefits and Pension / Other Ordinary Income fields. Pension / Other Ordinary Income is treated as fully taxable ordinary income with no payroll tax. Social Security Benefits use an adjustable Social Security Taxable % setting. Earlier calculator versions conservatively treated the former combined SS / Pension field as 100% taxable. The default is now 85% for Social Security benefits, and users can adjust the taxable percentage in Tax Settings to better match their income situation.
2026-06-01 — Added Calculator 1 “Set WD rate = dividends only, no share sales” shortcut. This sets the withdrawal-rate input so total withdrawal equals ordinary plus qualified dividends, allowing users to model spending dividends without share sales while preserving the calculator’s definition that withdrawal rate includes dividends plus share sales.
2026-05-30 — Fixed federal LTCG / qualified dividend tax for retirees with low ordinary income. When earned income and ordinary dividends fall below the standard deduction, the unused portion of the deduction now correctly reduces the LTCG taxable amount before rate stacking, matching the IRS qualified dividend and capital gain tax worksheet. Previously the calculator overstated federal capital gains tax in this scenario.

💬 Feedback & discussion

This calculator was shared on the Bogleheads forum. If you have questions, found a bug, or want to suggest an improvement, that thread is the best place to reach me.
© All rights reserved. This calculator and its source code may not be copied, modified, redistributed, or used as the basis for other products without explicit written permission.
Model notes and disclaimer
Disclaimer: This calculator is for educational and planning purposes only. Results are estimates and may contain errors. It is not tax, legal, investment, financial, or insurance advice. Verify results independently and consult a qualified professional before making financial decisions.
Key assumptions: Federal tax uses settings; California income tax uses settings unless changed in Tax Settings. Total Desired Withdrawal Rate is inclusive of dividends. Cost basis % applies to share-sale residual only, not dividends. NIIT is on investment income above the applicable MAGI threshold.
Model limits: State tax modeling may not reflect every state-specific rule. State LTCG preferences (AR, HI, MT, ND, NM, SC, VT, WA, WI) are not modeled. Payroll taxes include Social Security, Medicare, and state SDI on wages only; Social Security and pension income are not subject to payroll taxes. The calculator does not model every tax item, credit, deduction, phaseout, carryover, AMT item, Form 8962 detail, or state-specific adjustment.