Real backtest · 1928–2025 · computed live in your browser

Every withdrawal rate, at once.

Drag the stock allocation and horizon below and watch every withdrawal rate's historical survival odds reshape live — the same real 1928–2025 backtest behind the videos, now at every single percent of stock allocation. Click any bar to see exactly which of the underlying starting years survived.

rest sits in bonds

years the portfolio must last

Historical survival rate by withdrawal rate 0%100%

Click a bar to load its year-by-year breakdown below.

—

Every starting year, at this rate

Real, individual 1928–2025 cohorts — not an average, not a smoothed curve.

📊

See the year-by-year breakdown

Every one of the 98 real starting years at your selected rate, color-coded by outcome — which survived, which ran out, and when.

If this was useful, subscribing to the channel and liking the video helps a lot — thanks for following along!
How this is calculated

Withdraw a fixed % of the starting balance in year one, then the same dollar amount adjusted for that year's actual inflation every year after — the original 4%-rule definition, not a moving % of the current balance. A run "survives" a horizon if the balance never hits zero within it.

Stock returns are real S&P 500 total returns, 1928–2025 (NYU Stern / Damodaran). Bond returns are an intermediate-term government bond proxy, built by rescaling the real long-term T-Bond series to match the published SBBI intermediate-term mean and volatility, since a free year-by-year intermediate series doesn't exist publicly. Inflation is actual annual-average CPI-U for every year, 1928–2025 (usinflationcalculator.com, based on BLS data).

Unlike the first version of this page, nothing here is precomputed or looked up from a table — your browser re-runs the actual year-by-year simulation (starting balance, withdraw, apply that year's real market return, adjust for that year's real inflation, repeat) for every bar and every cohort, live, from the raw 1928–2025 return and inflation series embedded in this page. A starting year with an incomplete horizon (not enough years of real data yet) is shown as "not enough data" rather than guessed at — unless it already ran out of money for real within the years we do have, in which case it's counted as a real failure.

One person's own backtest, for educational purposes — not personalized financial advice.