{"tool":{"slug":"retirement","name":"Retirement calculator","version":"2026-08-22","canonicalUrl":"https://carlo.finance/tools/retirement","jsonUrl":"https://carlo.finance/tools/retirement.json","pageUrl":"https://carlo.finance/tools/retirement","parameters":[{"key":"age","label":"Current age","unit":"years","min":18,"max":85,"default":35,"sourceId":null,"integer":true,"help":"How old you are today. The default is an example, not a statistic."},{"key":"retireAge","label":"Retirement age","unit":"years","min":40,"max":85,"default":67,"sourceId":"usc-42-416","integer":true,"help":"The age contributions stop and withdrawals start. The default is the Social Security full retirement age for anyone born in 1960 or later."},{"key":"balance","label":"Current retirement balance","unit":"usd","min":0,"max":50000000,"default":75000,"sourceId":null,"help":"Everything you have already saved for retirement, across every account. The default is an example."},{"key":"monthly","label":"Monthly contribution","unit":"usd-per-month","min":0,"max":200000,"default":800,"sourceId":null,"help":"Your own money, added at the end of each month, held flat for the whole run. The default is an example."},{"key":"matchRate","label":"Employer match","unit":"percent","min":0,"max":300,"default":50,"sourceId":null,"help":"Cents your employer adds per dollar you contribute: 50 is fifty cents on the dollar, 100 is dollar for dollar. There is no salary here, so the match applies to everything you contribute; if your plan caps it at a percent of pay, enter the blended rate you actually receive."},{"key":"rate","label":"Expected annual return","unit":"percent","min":0,"max":15,"default":6,"sourceId":null,"help":"The nominal yearly return you assume before and after retirement, before taxes and fees. This is your assumption, not a forecast, and it moves the answer more than anything else on the page."},{"key":"inflation","label":"Inflation","unit":"percent","min":0,"max":10,"default":2,"sourceId":"fomc-longer-run-goals","help":"What converts the future balance into today's dollars and lifts your spending each year in retirement."},{"key":"spending","label":"Annual spending in retirement","unit":"usd-per-year","min":0,"max":5000000,"default":60000,"sourceId":null,"help":"What the whole year costs, in today's dollars. It rises with inflation for as long as the money lasts. The default is an example."},{"key":"otherIncome","label":"Other retirement income","unit":"usd-per-year","min":0,"max":5000000,"default":0,"sourceId":"ssa-estimator","help":"Pension plus your own Social Security estimate, in today's dollars. This page does not estimate Social Security; read your figure from your SSA statement and enter it here. It defaults to zero so nothing is assumed on your behalf."}]},"inputs":{"age":35,"retireAge":67,"balance":75000,"monthly":800,"matchRate":50,"rate":6,"inflation":2,"spending":60000,"otherIncome":0},"result":{"yearsToRetirement":32,"months":384,"monthlyDeposit":1200,"monthlyMatch":400,"endBalance":1898347.43,"endBalanceToday":1007326.37,"inflationFactor":1.8845405921011302,"yourContributions":307200,"employerContributions":153600,"growthTotal":1362547.43,"realReturn":3.9216,"annualWithdrawal":60000,"withdrawalRate":5.9564,"sustainableFromPortfolio":38810.27,"sustainableRate":3.8528,"sustainableSpending":38810.27,"neverDepletes":false,"lastsYears":27.06,"depletionAge":94.06,"accumulation":[{"age":36,"paidIn":89400,"growth":5028.51,"balance":94428.51,"balanceToday":92576.97},{"age":37,"paidIn":103800,"growth":11255.33,"balance":115055.33,"balanceToday":110587.59},{"age":38,"paidIn":118200,"growth":18754.37,"balance":136954.37,"balanceToday":129055.16},{"age":39,"paidIn":132600,"growth":27604.09,"balance":160204.09,"balanceToday":148003.81},{"age":40,"paidIn":147000,"growth":37887.8,"balance":184887.8,"balanceToday":167458.58},{"age":41,"paidIn":161400,"growth":49693.95,"balance":211093.95,"balanceToday":187445.38},{"age":42,"paidIn":175800,"growth":63116.44,"balance":238916.44,"balanceToday":207991.13},{"age":43,"paidIn":190200,"growth":78254.95,"balance":268454.95,"balanceToday":229123.72},{"age":44,"paidIn":204600,"growth":95215.34,"balance":299815.34,"balanceToday":250872.07},{"age":45,"paidIn":219000,"growth":114109.97,"balance":333109.97,"balanceToday":273266.2},{"age":46,"paidIn":233400,"growth":135058.14,"balance":368458.14,"balanceToday":296337.26},{"age":47,"paidIn":247800,"growth":158186.51,"balance":405986.51,"balanceToday":320117.59},{"age":48,"paidIn":262200,"growth":183629.54,"balance":445829.54,"balanceToday":344640.74},{"age":49,"paidIn":276600,"growth":211530.01,"balance":488130.01,"balanceToday":369941.54},{"age":50,"paidIn":291000,"growth":242039.47,"balance":533039.47,"balanceToday":396056.18},{"age":51,"paidIn":305400,"growth":275318.86,"balance":580718.86,"balanceToday":423022.22},{"age":52,"paidIn":319800,"growth":311539,"balance":631339,"balanceToday":450878.68},{"age":53,"paidIn":334200,"growth":350881.28,"balance":685081.28,"balanceToday":479666.08},{"age":54,"paidIn":348600,"growth":393538.27,"balance":742138.27,"balanceToday":509426.54},{"age":55,"paidIn":363000,"growth":439714.41,"balance":802714.41,"balanceToday":540203.79},{"age":56,"paidIn":377400,"growth":489626.75,"balance":867026.75,"balanceToday":572043.28},{"age":57,"paidIn":391800,"growth":543505.74,"balance":935305.74,"balanceToday":604992.26},{"age":58,"paidIn":406200,"growth":601596.03,"balance":1007796.03,"balanceToday":639099.81},{"age":59,"paidIn":420600,"growth":664157.36,"balance":1084757.36,"balanceToday":674416.96},{"age":60,"paidIn":435000,"growth":731465.49,"balance":1166465.49,"balanceToday":710996.73},{"age":61,"paidIn":449400,"growth":803813.2,"balance":1253213.2,"balanceToday":748894.25},{"age":62,"paidIn":463800,"growth":881511.33,"balance":1345311.33,"balanceToday":788166.84},{"age":63,"paidIn":478200,"growth":964889.86,"balance":1443089.86,"balanceToday":828874.09},{"age":64,"paidIn":492600,"growth":1054299.16,"balance":1546899.16,"balanceToday":871077.96},{"age":65,"paidIn":507000,"growth":1150111.19,"balance":1657111.19,"balanceToday":914842.85},{"age":66,"paidIn":521400,"growth":1252720.86,"balance":1774120.86,"balanceToday":960235.76},{"age":67,"paidIn":535800,"growth":1362547.43,"balance":1898347.43,"balanceToday":1007326.37}],"drawdown":[{"age":68,"withdrawn":60000,"growth":38432.05,"balance":985758.42},{"age":69,"withdrawn":60000,"growth":37586.25,"balance":963344.67},{"age":70,"withdrawn":60000,"growth":36707.28,"balance":940051.95},{"age":71,"withdrawn":60000,"growth":35793.84,"balance":915845.79},{"age":72,"withdrawn":60000,"growth":34844.58,"balance":890690.37},{"age":73,"withdrawn":60000,"growth":33858.09,"balance":864548.46},{"age":74,"withdrawn":60000,"growth":32832.92,"balance":837381.38},{"age":75,"withdrawn":60000,"growth":31767.54,"balance":809148.93},{"age":76,"withdrawn":60000,"growth":30660.39,"balance":779809.32},{"age":77,"withdrawn":60000,"growth":29509.82,"balance":749319.13},{"age":78,"withdrawn":60000,"growth":28314.12,"balance":717633.26},{"age":79,"withdrawn":60000,"growth":27071.54,"balance":684704.8},{"age":80,"withdrawn":60000,"growth":25780.23,"balance":650485.02},{"age":81,"withdrawn":60000,"growth":24438.28,"balance":614923.3},{"age":82,"withdrawn":60000,"growth":23043.7,"balance":577967},{"age":83,"withdrawn":60000,"growth":21594.43,"balance":539561.43},{"age":84,"withdrawn":60000,"growth":20088.33,"balance":499649.76},{"age":85,"withdrawn":60000,"growth":18523.17,"balance":458172.92},{"age":86,"withdrawn":60000,"growth":16896.62,"balance":415069.55},{"age":87,"withdrawn":60000,"growth":15206.3,"balance":370275.84},{"age":88,"withdrawn":60000,"growth":13449.68,"balance":323725.52},{"age":89,"withdrawn":60000,"growth":11624.18,"balance":275349.7},{"age":90,"withdrawn":60000,"growth":9727.09,"balance":225076.78},{"age":91,"withdrawn":60000,"growth":7755.6,"balance":172832.38},{"age":92,"withdrawn":60000,"growth":5706.8,"balance":118539.18},{"age":93,"withdrawn":60000,"growth":3577.65,"balance":62116.84},{"age":94,"withdrawn":60000,"growth":1365.01,"balance":3481.85},{"age":95,"withdrawn":3493.03,"growth":11.18,"balance":0}]},"drivers":[{"key":"rate","label":"Expected annual return","step":1,"balanceDelta":273634.66,"yearsDelta":null,"makesItLast":true,"sentence":"Each point of assumed return adds $273,635 to the balance at retirement, which is enough to stop the money running out at all."},{"key":"monthly","label":"Monthly contribution","step":250,"balanceDelta":230364.01,"yearsDelta":14.11,"makesItLast":false,"sentence":"Each $250 more a month adds $230,364 to the balance at retirement and 14.1 years to how long it lasts."},{"key":"retireAge","label":"Retirement age","step":3,"balanceDelta":152197.02,"yearsDelta":8.42,"makesItLast":false,"sentence":"Each 3 more years of working adds $152,197 to the balance at retirement and 8.4 years to how long it lasts."},{"key":"spending","label":"Annual spending","step":-6000,"balanceDelta":0,"yearsDelta":5.91,"makesItLast":false,"sentence":"Each $6,000 a year less spending adds 5.9 years to how long the money lasts."},{"key":"balance","label":"Current balance","step":25000,"balanceDelta":90053.83,"yearsDelta":4.65,"makesItLast":false,"sentence":"Each $25,000 more saved today adds $90,054 to the balance at retirement and 4.7 years to how long it lasts."}],"sensitivity":{"byReturn":[{"rate":4,"balanceToday":637402.85,"balanceNominal":1201211.54,"realReturn":1.9608,"lastsYears":11.91,"depletionAge":78.91},{"rate":5,"balanceToday":798064.06,"balanceNominal":1503984.12,"realReturn":2.9412,"lastsYears":16.83,"depletionAge":83.83},{"rate":6,"balanceToday":1007326.37,"balanceNominal":1898347.43,"realReturn":3.9216,"lastsYears":27.06,"depletionAge":94.06},{"rate":7,"balanceToday":1280961.03,"balanceNominal":2414023.05,"realReturn":4.902,"lastsYears":null,"depletionAge":null}],"byRetireAge":[{"retireAge":62,"balanceToday":788166.84,"balanceNominal":1345311.33,"realReturn":3.9216,"lastsYears":18.34,"depletionAge":80.34},{"retireAge":65,"balanceToday":914842.85,"balanceNominal":1657111.19,"realReturn":3.9216,"lastsYears":23.02,"depletionAge":88.02},{"retireAge":67,"balanceToday":1007326.37,"balanceNominal":1898347.43,"realReturn":3.9216,"lastsYears":27.06,"depletionAge":94.06},{"retireAge":70,"balanceToday":1159523.39,"balanceNominal":2318918.72,"realReturn":3.9216,"lastsYears":35.48,"depletionAge":105.48}]},"assumptions":[{"key":"age","label":"Current age","value":35,"unit":"years","provided":false,"source":null},{"key":"retireAge","label":"Retirement age","value":67,"unit":"years","provided":false,"source":{"id":"usc-42-416","name":"42 U.S.C. § 416(l) (Social Security retirement age)","url":"https://uscode.house.gov/view.xhtml?req=granuleid:USC-prelim-title42-section416&num=0&edition=prelim","asOf":"2026-08-21","note":"The retirement-age default. Paragraph (l)(1)(E) sets retirement age at 67 years for anyone who reaches early retirement age (62) after December 31, 2021, which is everyone born in 1960 or later. It is a benefits milestone, not a rule about when you must stop working, so the field is editable."}},{"key":"balance","label":"Current retirement balance","value":75000,"unit":"usd","provided":false,"source":null},{"key":"monthly","label":"Monthly contribution","value":800,"unit":"usd-per-month","provided":false,"source":null},{"key":"matchRate","label":"Employer match","value":50,"unit":"percent","provided":false,"source":null},{"key":"rate","label":"Expected annual return","value":6,"unit":"percent","provided":false,"source":null},{"key":"inflation","label":"Inflation","value":2,"unit":"percent","provided":false,"source":{"id":"fomc-longer-run-goals","name":"FOMC Statement on Longer-Run Goals and Monetary Policy Strategy","url":"https://www.federalreserve.gov/monetarypolicy/files/FOMC_LongerRunGoals.pdf","asOf":"2026-01-27","note":"The inflation default. The Committee reaffirms its judgment that inflation at the rate of 2 percent, as measured by the annual change in the price index for personal consumption expenditures, is most consistent over the longer run with its mandate. Adopted effective January 24, 2012 and reaffirmed effective January 27, 2026. Your own cost of living can run above or below it, which is why the field is editable."}},{"key":"spending","label":"Annual spending in retirement","value":60000,"unit":"usd-per-year","provided":false,"source":null},{"key":"otherIncome","label":"Other retirement income","value":0,"unit":"usd-per-year","provided":false,"source":{"id":"ssa-estimator","name":"Social Security Administration, my Social Security retirement estimate","url":"https://secure.ssa.gov/RIL/SiView.action","asOf":"2026-08-22","note":"Where the other-income figure comes from. This calculator does not estimate a Social Security benefit: that takes your 35 highest indexed earning years, and SSA computes it from the earnings record it already holds. The link is SSA's own my Social Security service, which asks you to sign in and then shows the estimate built from your record. Read it there and type it into the other retirement income field."}}],"sources":[{"id":"fomc-longer-run-goals","name":"FOMC Statement on Longer-Run Goals and Monetary Policy Strategy","url":"https://www.federalreserve.gov/monetarypolicy/files/FOMC_LongerRunGoals.pdf","asOf":"2026-01-27","note":"The inflation default. The Committee reaffirms its judgment that inflation at the rate of 2 percent, as measured by the annual change in the price index for personal consumption expenditures, is most consistent over the longer run with its mandate. Adopted effective January 24, 2012 and reaffirmed effective January 27, 2026. Your own cost of living can run above or below it, which is why the field is editable."},{"id":"usc-42-416","name":"42 U.S.C. § 416(l) (Social Security retirement age)","url":"https://uscode.house.gov/view.xhtml?req=granuleid:USC-prelim-title42-section416&num=0&edition=prelim","asOf":"2026-08-21","note":"The retirement-age default. Paragraph (l)(1)(E) sets retirement age at 67 years for anyone who reaches early retirement age (62) after December 31, 2021, which is everyone born in 1960 or later. It is a benefits milestone, not a rule about when you must stop working, so the field is editable."},{"id":"ssa-estimator","name":"Social Security Administration, my Social Security retirement estimate","url":"https://secure.ssa.gov/RIL/SiView.action","asOf":"2026-08-22","note":"Where the other-income figure comes from. This calculator does not estimate a Social Security benefit: that takes your 35 highest indexed earning years, and SSA computes it from the earnings record it already holds. The link is SSA's own my Social Security service, which asks you to sign in and then shows the estimate built from your record. Read it there and type it into the other retirement income field."},{"id":"medicare-65","name":"Medicare.gov, Get started with Medicare","url":"https://www.medicare.gov/basics/get-started-with-medicare","asOf":"2026-08-22","note":"Medicare.gov states that \"Medicare is health insurance for people 65 or older who meet citizenship or residency requirements.\" That is the age this page names when it says an earlier retirement carries a healthcare cost the model never charges. Nothing here prices those premiums."}],"warnings":[{"code":"no-other-income","message":"Other retirement income is zero, so the whole spending plan comes out of the portfolio. This page does not estimate Social Security. Read your own figure from your SSA statement and enter it, and the years the money lasts will change a lot."}],"disclaimer":"This models a constant return and a constant inflation rate, which is a modelling convenience and not a forecast. It leaves out sequence-of-returns risk, the tax due on withdrawals, Social Security, healthcare and long-term care costs, and required minimum distributions. It is not a retirement plan and not financial advice."}