A projection should balance before it persuades.
Most retirement tools begin with a handful of inputs and jump to a probability or chart. RetireOdds begins with the books: what you own, what kind of account holds it, what comes in, what goes out and what remains unpaid.
A retirement decision is rarely changed by investment returns alone. The same withdrawal can create a capital gain, ordinary income, no federal income, a Roth penalty, an ACA subsidy change or an IRMAA surcharge two years later. Collapsing every dollar into one balance loses the information needed to model those consequences.
The RetireOdds ledger preserves that information through time. Every modeled year has an opening position, categorized activity, source-aware settlement, a tax and healthcare record, and a closing position that rolls into the next year.
| Question | Typical calculator | RetireOdds ledger |
|---|---|---|
| What is modeled? | A balance, growth rate and spending rule. | Account books, income character, expenses, taxes, healthcare, events and obligations. |
| How is time represented? | A start value and an ending outcome. | A continuous annual record from the current year through the final settlement. |
| What happens to account identity? | Balances are often pooled. | Taxable, deferred, Roth and non-liquid books remain distinct. |
| What happens when cash is insufficient? | The result may simply hit zero. | The unpaid amount remains visible as an obligation and fails plan funding. |
| Can a number be checked? | Usually only the assumptions are shown. | Ledger cells carry facts, source references, rule versions and equations where available. |
A specialized feature may read from the canonical plan, but it may not invent a second financial history. Taxes, healthcare, Roth analysis, Compare and simulation must reconcile to the same resolved inputs and year conventions.
Real inputs become one canonical record.
RetireOdds does not continuously scrape your financial institutions. You control the record: enter facts manually or upload brokerage and expense files, review what changed, and confirm the books that drive the plan.
Inputs carry provenance
Account classifications, basis records, as-of dates and imported positions are not decorative metadata. They determine whether a withdrawal is a taxable sale, an ordinary distribution or a Roth distribution. File imports use snapshot reconciliation: matching positions are updated, absent positions can be removed after confirmation, cash is replaced rather than added, and repeated imports are designed to be idempotent.
Missing facts stay visible
If a material input is absent, such as account tax treatment, cost basis, investment-income character or a valuation date, the product raises a review action. It does not silently turn unknown data into a confident result. Where a conservative fallback is necessary, the assumption is disclosed.
Every year must explain where the money went.
A ledger year is a cash-and-balance reconciliation, not just a return calculation. The exact rows vary by phase and enabled features, but the conservation rule does not.
Separately: requested obligations − funded obligations = visible unfunded amount. Transfers such as Roth conversions move value between books; they do not create wealth.
Where an exact equation is available, RetireOdds calculates its residual and treats a difference greater than one cent as unreconciled. The ledger also distinguishes balances, cash flows, transfers, tax metrics and non-spendable values so a transfer cannot be mistaken for income and illiquid NAV cannot quietly pay a bill.
| Annual record | What it preserves |
|---|---|
| Opening position | Taxable, tax-deferred, Roth, illiquid and deferred-compensation values entering the year. |
| Money coming in | Wages, Social Security, pensions, timeline income, deferred compensation and characterized distributions. |
| Money going out | Lifestyle spending, healthcare, life events, liabilities, taxes, penalties and capital obligations. |
| Transfers | Roth conversions, RMD proceeds and other moves whose tax character matters even when total wealth is unchanged. |
| Tax & healthcare facts | Ordinary income, gains, taxable Social Security, ACA MAGI, IRMAA MAGI and the two-year lookback queue. |
| Closing position | Each source book after activity, plus any unfunded amount that must remain visible. |
A dollar's source changes what it can do.
RetireOdds keeps market value separate from statutory basis and keeps liquid wealth separate from assets that cannot fund spending today.
Tracks market value, cost basis, realized-gain fraction, dividend character and cash with full basis.
Tracks pretax balances, traditional IRA basis, ordinary distributions, RMDs and conversion sources.
Separates market value from contribution basis, conversion lots, taxable and nontaxable principal, earnings and qualification clocks.
Maintains NAV, basis, debt, capital calls and explicit cash flows. NAV is wealth, not spendable cash.
Runs as a separate gross pretax sub-ledger with elections, investment return, fees, withholding and ordinary-income payouts.
Remain uses of cash. If the plan cannot settle them, the unpaid amount survives as a visible shortfall.
Settlement is source-aware
When cash is needed, the engine uses the selected withdrawal order and the legal character of the available source. A taxable sale realizes only its gain portion; a tax-deferred distribution creates ordinary income and can recover entered IRA basis pro rata; a Roth distribution follows contribution, conversion and earnings ordering. Taxes created by the draw are included in the amount that must be funded.
Basis survives market losses
Market value and statutory basis are different records. A decline in Roth market value does not erase historical contribution basis. A taxed dividend can increase taxable cost basis when reinvested. A return of capital reduces alternative-asset basis before later gains are characterized.
The books begin today, not at retirement.
The same annual architecture covers the current year, working years, retirement years and the final plan settlement. This prevents pre-retirement activity from bypassing tax, healthcare or source rules.
The primary person's age is the shared axis. A spouse is represented by an age offset, so claim dates, Medicare eligibility, survivor tax status and each person's horizon remain tied to the same calendar year rather than drifting across two independent timelines.
Depth without a second set of answers.
Complex features add characterized facts to the annual record. They do not create disconnected calculators with their own balances or year conventions.
Global Wealth keeps native context without rewriting the books.
Currency metadata and captured FX snapshots describe a global household around the canonical plan. They do not create a second, automatically translated Ledger.
Three currencies have separate jobs
Spending currency records native lifestyle context. Reporting/display currency formats supported current-value and expense surfaces. Tax/canonical planning currency remains fixed to USD. Changing a display preference never converts or revalues the Ledger, tax books, or saved plan values.
Exposure tags are not native books
Account, holding, and liability currency tags identify economic exposure and can inform the static natural-hedge planning assumption. Saved balances, prices, basis, and tax-book values remain canonical USD and are not automatically revalued. Institution location is an independent fact: a foreign-institution flag neither sets nor proves the account's currency exposure.
A native Life Event or alternative-asset entry captures one native amount with the applied exchange rate, source, capture time, and rate date. At save, RetireOdds freezes the resulting canonical USD planning amount or current NAV. Later FX changes do not reprice it, and stale or reference-fallback snapshots require review.
Context is not performance, a forecast, or verified country advice
Recorded FX history and context are read-only. They are not portfolio performance or native cost basis, a forecast, investment recommendation, transfer quote, or FX advice, and they do not convert canonical USD values.
A CUSTOM destination contains user-authored planning assumptions and uses a simplified higher-of-US-or-local tax treatment. It is not a verified country tax, treaty, visa, healthcare, legal, or immigration module. Residency supports one optional start/end window for the selected destination, not a timeline of residence across multiple countries.
Global Wealth capabilities not currently modeled
- Native transaction and cost-basis performance.
- Automatic revaluation of saved balances, Life Events, or illiquid NAV.
- Stochastic multi-currency projection.
- Verified treaty modules country by country.
- Real multi-country residence periods.
Every consequential number should have a receipt.
Click an underlined Ledger amount to open its explanation. The side panel is generated from the selected cell's typed provenance, not generic help text.
closing taxable + closing tax-deferred + closing Roth = closing liquid portfolio
A trace can include the output cell ID, financial phase, treatment, source facts, source-page links, input references, decision references, rule ID, model version, exact unrounded result and downstream cells. Where an exact formula exists, the panel shows the terms, result and residual. Where detailed provenance is not available, RetireOdds does not show an empty “breakdown.”
This makes review practical. You can move from a tax number to Tax Planning, from spending to Expenses, or from an account balance to Portfolio, change the underlying fact and regenerate every downstream year.
A scenario is a temporary second set of books.
What-if analysis is useful only when the alternative keeps the same accounting discipline as the baseline.
The preview request is allowlisted and never writes back to your saved plan. Changed assumptions re-resolve dependent ages, healthcare, taxes, life events and horizon values instead of editing one headline in isolation. A country preview, for example, reprices living costs, healthcare, inflation, FX and coordinated tax assumptions as one server-owned bundle.
Withdrawal-strategy comparisons are different: the annual table remains the deterministic reference plan, while paired stochastic runs compare market-path outcomes under the selected strategy. Both runs still begin with the same resolved plan and common random seed.
The product's strategy names describe its internal controls. Percent of Portfolio spending falls with the balance and may become very low. Guyton-style guardrails is a descriptive product label, not a claim of canonical Guyton-Klinger behavior. Assumption-derived percentage uses rate = a + b × expected real return, with defaults a = 1.5% and b = 0.5; the final rate is clamped to 2%–8% and fixed for the whole simulation. Sensible Withdrawals v2 requires essential annual spending, defaults to a 10% extra rate, and caps at desired lifestyle spending unless allowed otherwise. Vanguard Dynamic Spending v2 omits its optional custom rate by default, uses AUTO for the plan's initial rate, and exposes maximum annual real increase and decrease controls. Legacy settings are explicitly review-gated rather than silently rewritten.
Monte Carlo sits on top of the ledger.
The deterministic books explain one internally consistent plan. Simulation asks how often that plan remains funded when market returns, longevity and other enabled uncertainties change.
Draws positive lognormal real gross returns calibrated to the selected allocation's geometric return and volatility.
Resamples five-year blocks of historical stock and bond returns to preserve clustered sequences.
Replays only complete historical start-year windows without wrapping the end of history to its beginning.
Monte Carlo and bootstrap run 1,000 paths by default. Each path walks the same life stages and re-solves source-aware withdrawals, taxes, MAGI, healthcare, conversions, RMDs and enabled cash flows against that path's balances. A path fails when any after-tax obligation remains unfunded, including in the final modeled year. A zero portfolio is still successful when outside income fully covers every obligation.
The Chance screen also preserves the other side of the percentage. Where this plan fails counts the exact paths that left an obligation unfunded, groups their first-shortfall ages into real five-year bands, and shows one to three actual failed trials selected deterministically from the early, middle and late ranks of failure timing. The ages and gaps are conditional on failed paths only. These examples come from the same run as the headline success rate; they are not forecasts, causal diagnoses or synthetic percentile paths.
How to read the results
- Plan success is the share of paths in which every modeled year is funded. It is not a guarantee.
- P10, P50 and P90 are the 10th percentile, median and 90th percentile ending balances for each future year.
- Median funded spending reports what the paths actually funded, which matters when a strategy flexes spending.
- At 1,000 paths, a mid-range success estimate has roughly a ±3 percentage-point sampling margin at 95% confidence, before model uncertainty.
All primary planning values use real, today's-dollar terms. Explicit nominal return assumptions are converted through the Fisher relation: (1 + nominal) / (1 + inflation) − 1.
The architecture is designed to expose drift.
Financial software becomes unreliable when each screen assembles a slightly different version of the household. RetireOdds uses mechanical constraints and parity tests to make that divergence visible.
A complete model still has boundaries.
RetireOdds aims to make material simplifications explicit. The Ledger is planning-grade financial software, not a tax return, legal opinion or promise about markets.
Important current limitations
- State income tax is a simplified planning estimate. It does not implement every state deduction, credit, locality or special rule.
- The portfolio return model uses a blended stock-and-bond allocation. It does not project each individual security, trading cost or future rebalancing decision.
- Traditional IRA basis is applied across the combined deferred bucket when the source account of a draw is unknown; actual tax filing aggregates IRA basis separately by spouse under Form 8606 rules.
- The standalone Roth optimizer uses a same-age spouse simplification for some age-65 deductions and Medicare enrollment. Core household projections use the entered spouse age.
- Detailed Roth qualification requires the first Roth contribution year. Legacy records without it remain conservative.
- Early-distribution penalties and statutory exceptions depend on account type and circumstances. RetireOdds does not determine eligibility for every exception.
- ACA advance credits are modeled and reconciled, but the graduated repayment cap below 400% FPL is not implemented; the full difference is used.
- The optional Medicaid cost is a planning assumption, not an eligibility determination. State-specific expansion and eligibility rules are not fully modeled.
- A person working past RMD age does not yet receive source-account-specific still-working exception treatment across every employer and IRA account.
- Supported expat countries receive characterized U.S./host treatment. Unsupported countries retain a clearly labeled simplified higher-of estimate.
- Destination tax scales, special regimes, treaty routing defaults, and Roth recognition per supported country are curated model estimates pending primary-source verification, and are labeled as such in the app. Host brackets are single-filer approximations converted to today's US dollars at a fixed reference exchange rate and treated as inflation-indexed; host filing units (e.g. the French quotient familial) are not modeled. Territorial systems exclude US-source income from the host base; remittance-based systems approximate remitted income as the income drawn and spent. Explicit user elections always override curated defaults.
- Foreign assets: account, holding, and liability books remain in US dollars; currency labels identify economic exposure and produce local-currency display equivalents at the current exchange rate without reinterpreting existing balances. As a static planning approximation, the share of modeled liquid assets exposed to the destination currency funds a local spending sleeve while the remainder follows the full modeled FX path; the local-vs-US inflation differential affects both sleeves. Unprojected liability principal is displayed but excluded from the hedge. FBAR/FATCA/PFIC indicators are incomplete-data review prompts, not filing determinations. Statement imports assume US-dollar amounts.
- FX alerts and the transfer planner compare the live rate and your own planned transfer against the pair's recorded daily history (backfilled up to about a year where the free rate API provides it). They are range context for a transfer you already planned — never forecasts, never investment or FX advice. Alerts are checked when rates refresh (about four times a day) and are limited to one notification per rule per week.
- Roth abroad: three host treatments are modeled — recognized (tax-free both sides), taxed as pension income, and taxed as an account (an explicit election: withdrawals host-taxed and each year's nominal Roth growth taxed at the host passive rate, paid from taxable cash first and then the account itself; the host re-taxing that payment is not modeled). Roth conversion schedules apply to supported expat destinations with each conversion year priced under the coordinated US + host obligation; conversion amounts are still chosen by the US-bracket optimizer. Pre-move conversion years carry no host tax via residency proration. Expat conversion plans require classified account buckets.
- Illiquid valuations, employer credit risk, future tax law and personal behavior can differ materially from entered assumptions.
No model predicts the future. A success rate measures robustness across the assumptions and paths that were modeled. It does not measure every risk and is not a recommendation to buy, sell, convert, claim or retire.
RetireOdds is a comprehensive personal money tracker and retirement planning tool. It is not a substitute for a certified financial planner, registered investment adviser, accountant or tax preparer. Review consequential decisions with a qualified professional.
The rules are tied to published sources.
Tax, healthcare and retirement constants are pinned to a stated model year and updated together. Primary authorities take precedence over summaries or memory.
| Area | Primary reference |
|---|---|
| 2026 federal tax | IRS Revenue Procedure 2025-32 |
| ACA applicable percentages | IRS Revenue Procedure 2025-25 and Form 8962 instructions |
| IRMAA | SSA POMS HI 01101.030 |
| IRA and Roth distributions | IRS Publication 590-B |
| Early distributions | IRS exceptions to tax on early distributions |
| Withdrawal research | Bengen (1994), Determining Withdrawal Rates Using Historical Data; Cooley, Hubbard & Walz (1998), The Trinity Study |
| Market valuation research | Robert Shiller's historical market data |
Put your retirement on the books.
Bring your portfolio, income and spending. RetireOdds will build the annual record, show what changes it, and carry it through the rest of your financial life.