Portfolio Success Lab

Loading modules...

Tax-aware retirement forecasting

Portfolio Success Lab

Model coverage
  1. About you
  2. Plan & spending
  3. Portfolio
  4. Review

A few essentials and you'll have a working plan. Everything else uses smart defaults you can fine-tune later in the full workspace.

About you

Used for taxes, mortality, and benefit timing.

Modular setup · Build your plan

Portfolio Success Lab

Model coverage
—
View full results to see your number
Pick modules, fill in the basics, then open results.
Ready
👤

The basics

Age, plan length, target spend
19 controls
Longer-life stress test

Compare the current lifetimes with five extra years for you, your spouse, and both. Uses your selected simulation count, fees, healthcare and survivor budgets, and extends the horizon through both lifetimes.

💼

Portfolio

Your accounts and holdings
7+ controls
Sample CSV

Symbol / ID accepts a ticker (live quote or previous close), a Treasury TIPS CUSIP (inflation-adjusted principal at par; units = face ÷ $100), or an I-bond purchase month like 2021-11 (official redemption value computed locally; units = face value in dollars). Prices update only when you click refresh — never on their own — and rows that could not update are highlighted with the reason on hover.

Opening Roth conversion history

Enter amounts remaining after past withdrawals, without thousands separators. Owner is primary or spouse. Regular contributions go in the fields above. A checked box with no lines means no remaining conversions. Otherwise, legacy conversion-tagged account rows supply the opening principal once. Securities traded inside a Roth do not change these balances. Roth IRA ordering is modeled; inherited beneficiary IRAs and designated Roth employer accounts require separate treatment.

Opening tax history

IRA basis is the remaining total for each person, not security purchase cost. Include all traditional, SEP, and SIMPLE IRAs, including accounts held elsewhere, in the holdings above. Employer plans and your spouse's IRAs are separate. Opening balances must already include contributions made before the plan starts. Confirm remaining basis against Form 8606.

Investment fees

Advisory fees are an additional annual cash expense based on beginning portfolio value. Fund expenses reduce investment values only when returns are marked gross; use the same convention for Monte Carlo and historical returns. Individual TIPS ladder securities are excluded from the fund-expense charge.

Privacy mode keeps modeling local by disabling Google Sheets imports and live CMS Marketplace plan searches. CSV, JSON, setup backup/restore, offline ZIP lookup, and manual ACA plan inputs remain available.

Google Sheets
Private sheet (OAuth)
JSON editor
Save / Load setup
Ready to import.
🩺

Healthcare

Insurance until Medicare
20 controls

Confirm tax-dependent status, employer coverage affordability/minimum value, Medicaid/CHIP and other coverage eligibility before choosing eligible. The MFS exception must meet IRS requirements; living apart alone does not establish it.

Member coverage calendar

Use primary, spouse, or a dependent name. Eligibility is eligible, employer, medicaid, dependent (claimed by another tax family), or unknown. Only eligible months receive a modeled credit. Enter Marketplace premiums in today’s dollars, before tax credits, without thousands separators. All members and months need their own records; unspecified future years receive no subsidy until confirmed. A dependent you claim can be eligible. The calendar overrides household premium quotes for its specified years.

Silver plan cost-sharing reductions

Household annual amounts in today's dollars, excluding premiums. Enter each variant's actual plan limit and expected covered spending. These replace the OOP-use percentage for the primary plan. Annual MAGI is assumed reported to the Marketplace before enrollment; mixed eligibility uses standard costs. Backup plans retain their separate OOP assumptions. American Indian/Alaska Native and other special CSR variants are not included.

Assumption: ACA subsidy math uses coverage-year household size, marketplace member ages, and prior-year FPL guidelines for the selected tax year.

Plan & premium overrides

Assumption: exact plan mode calculates PTC from the household SLCSP and applies the selected plan gross premium and OOP max. Quoted net premium mode trusts the quote and bypasses PTC recalculation.

Backup plan (high-MAGI fallback)

Assumption: the backup plan becomes active only when modeled ACA MAGI exceeds the trigger, so it can model subsidy cliffs without replacing low-MAGI coverage.

Federal Marketplace plan finder

Assumption: federal Marketplace lookup uses the HealthCare.gov API for FFM states. State-based exchanges are routed to localized benchmarks offline, or accept manual local plan overrides.

ACA plan helper ready.
🦷

Medicare / IRMAA

Premiums after 65
12 controls
IRMAA tax-return history and redeterminations

Modeled lookback years retain their actual filing status. Enter a redetermination only for an approved or separately confirmed SSA-44 assumption; a spouse’s death does not automatically grant relief.

💰

Other income

Social Security, work, SE
24+ controls

For benefits already received, enter the actual claim age and current annual award. For an unclaimed benefit, enter the estimate at the selected future age. Past elections are locked; claim withdrawal, voluntary suspension, retroactive awards, and exact claim-month cash flows are not modeled.

Claim-month and earnings-test detail

The annual earnings test is automatic before full retirement age. To use the special first-year monthly rule, enter all 12 months and reconcile their total to annual wages plus net self-employment income. Otherwise the annual test applies. In the FRA year, missing monthly detail conservatively treats all annual earnings as pre-FRA earnings. Withheld months adjust future worker benefits at FRA; auxiliary/survivor adjustments require SSA review.

Recurring income streams

Pensions, annuities, rent, and other recurring income: age-started on the owner's clock, optional COLA, survivor share after the owner's death, and state retirement-income treatment for pensions/annuities.

🧰

Strategy toolkit

Taxes, allocations, withdrawal rules
43 controls

In lifetime mode, automatic harvesting compares projected plans through your full horizon. It may accept higher taxes or premiums now to build cost basis and preserve larger premium tax credits later. The MAGI buffer and annual override still apply.

HSA eligibility and expense history

Starting expense balance is the documented receipt total before the reimbursements/deductions entered here. Only expenses incurred after the HSA was established qualify. ACA premiums and Medigap are excluded by default; enter only a supported insurance exception such as COBRA or coverage while receiving unemployment compensation. Qualified out-of-pocket costs accrue to the receipt pool. Medicare B/D premiums accrue only when all living adults are 65+; mixed-age receipt ownership requires review. Contributions assume eligible HDHP coverage, no disqualifying coverage, and no Medicare enrollment; the model stops contributions at 65. Each spouse’s $1,000 age-55 catch-up goes into their own account and is not inflation-indexed. The last-month rule is not assumed.

Survivor budgets

Enter separate budgets in today's dollars for each surviving spouse. These replace the household spending strategy after the year of death and grow with inflation. Include healthcare and taxes only when your target-spend settings include them.

Legacy / heir assumptions

Assumption: automated tax moves are capped by bracket, ACA, NIIT, IRMAA, and liquidity guardrails before they are treated as recommended actions.

🪣

Cash reserve

Sequence-risk bucket strategy
11 controls
🎲

Monte Carlo model

Return assumptions and sampling
20 controls
📜

History test

How would you have done?
7 controls

Assumption: modern baseline starts in 1928. Extended source adds JST stock/bond/cash from 1872 and real estate from 1891.

✨

What ifs

Future expenses, income, or asset sales
14+ controls
⚖️

Tax overrides

Power-user tax tweaks
23 controls

Results · Dashboard

Run the model to see your number
Model coverage
Viewing year Year 1
Slide to update every panel on this page

Cash flow

Year 1

Year

This year

Action plan

    Path

    Portfolio over the plan

    Median + tax line

    Tax · Year 1

    Bracket fill

      Withdrawal order

      Cash in, out & conversions per year

      Sensitivity

      Top movers

      Click to recompute

        Healthcare

        ACA → Medicare timeline

        ACA marketplace Medicare Subsidy-sensitive

        Monte Carlo

        Ending-value distribution

        Model audit

        Assumptions and source checks

        Action plan · all years

        Recommended moves per year

        Year-by-year

        Ledger

        Asset snapshot

        Account balances over time

        Rescues · Strategy Comparison

        Rescue strategy comparison

        Tradeoffs · Efficient Frontier

        Tradeoff frontier comparison

        Scenarios · side-by-side

        Scenario breakdown

        Backtests

        How would your plan have done in past eras?