Monte Carlo SWP
Markets don’t pay a steady return. This runs your withdrawal plan through a thousand bumpy markets and counts how often the money lasts.
29% chance your money lasts to 90
In 1,000 simulated markets averaging 10% a year with 15% swings, 29% never ran out. When it did run out, it was typically around age 80. With steady returns, it would run out at 87.
Shown in future amounts. Turn on Today’s money to adjust for 6% inflation.
Fragile: it depends on markets being kind. Lower the withdrawal or the yearly increase.
Range of outcomes
The spread between the lines is the uncertainty a single steady-return number hides.
Your ageShow the numbers as a table
| Age | 10th pct | Median | 90th pct |
|---|---|---|---|
| 60 | $1,000,000 | $1,000,000 | $1,000,000 |
| 61 | $855,860 | $1,025,265 | $1,217,836 |
| 62 | $786,843 | $1,064,378 | $1,373,945 |
| 63 | $751,137 | $1,080,211 | $1,488,030 |
| 64 | $725,151 | $1,093,038 | $1,636,545 |
| 65 | $696,618 | $1,107,649 | $1,730,097 |
| 66 | $646,255 | $1,122,252 | $1,846,461 |
| 67 | $600,477 | $1,114,672 | $1,965,366 |
| 68 | $542,583 | $1,134,508 | $2,179,645 |
| 69 | $481,594 | $1,118,039 | $2,299,353 |
| 70 | $401,829 | $1,112,879 | $2,457,596 |
| 71 | $315,676 | $1,098,924 | $2,621,087 |
| 72 | $220,702 | $1,074,424 | $2,732,693 |
| 73 | $107,556 | $1,044,608 | $2,910,379 |
| 74 | $0 | $1,008,113 | $3,090,907 |
| 75 | $0 | $955,766 | $3,207,360 |
| 76 | $0 | $883,752 | $3,422,520 |
| 77 | $0 | $770,301 | $3,758,924 |
| 78 | $0 | $655,358 | $4,015,397 |
| 79 | $0 | $516,262 | $4,238,872 |
| 80 | $0 | $396,424 | $4,446,431 |
| 81 | $0 | $211,112 | $4,653,264 |
| 82 | $0 | $22,613 | $5,015,212 |
| 83 | $0 | $0 | $5,005,565 |
| 84 | $0 | $0 | $5,141,007 |
| 85 | $0 | $0 | $5,545,404 |
| 86 | $0 | $0 | $6,032,754 |
| 87 | $0 | $0 | $6,135,522 |
| 88 | $0 | $0 | $6,442,841 |
| 89 | $0 | $0 | $6,796,994 |
| 90 | $0 | $0 | $6,976,069 |
Still going, by age
Show the numbers as a table
| Age | Money left in |
|---|---|
| 60 | 100% of runs |
| 61 | 100% of runs |
| 62 | 100% of runs |
| 63 | 100% of runs |
| 64 | 100% of runs |
| 65 | 100% of runs |
| 66 | 100% of runs |
| 67 | 100% of runs |
| 68 | 100% of runs |
| 69 | 100% of runs |
| 70 | 99% of runs |
| 71 | 99% of runs |
| 72 | 97% of runs |
| 73 | 94% of runs |
| 74 | 89% of runs |
| 75 | 85% of runs |
| 76 | 81% of runs |
| 77 | 76% of runs |
| 78 | 71% of runs |
| 79 | 67% of runs |
| 80 | 61% of runs |
| 81 | 56% of runs |
| 82 | 51% of runs |
| 83 | 46% of runs |
| 84 | 43% of runs |
| 85 | 40% of runs |
| 86 | 37% of runs |
| 87 | 34% of runs |
| 88 | 32% of runs |
| 89 | 30% of runs |
| 90 | 29% of runs |
How this is calculated
Each of the 1,000 runs draws a return for every year from a bell curve centred on 10% with a 15% standard deviation. That year’s return is applied month by month, after each withdrawal.
success = balance never hits 0 before 90
Runs are seeded, so a shared link shows the same result. “Run a different set of markets” changes the seed; the percentage moves a little because 1,000 runs is a sample.
Real returns have fatter tails than a bell curve and can trend for years, so treat this as a guide to robustness, not a forecast. Tax isn’t modelled.