# Retirement Savings Calculator

> Projects retirement savings from the current balance and a fixed monthly contribution compounded monthly at an assumed annual return until the retirement age, reports the result in today's money using an inflation rate, and the income it supports at a 4 % withdrawal rate.

- Calculator id: `retirement-savings` · Category: Finance (`finance`) · Tool name: `project_retirement_savings`
- Canonical page: https://tttkmbb.com/finance/retirement-savings · This document: https://tttkmbb.com/finance/retirement-savings.md · JSON definition: https://tttkmbb.com/finance/retirement-savings.json

## Purpose

Projects retirement savings from the current balance and a fixed monthly contribution compounded monthly at an assumed annual return until the retirement age, reports the result in today's money using an inflation rate, and the income it supports at a 4 % withdrawal rate.

**Use when:** You want to estimate what your savings will grow to by retirement, how much of that is contributions versus growth, and what it is worth in today's purchasing power.

**Do not use when:** You need the amount required to retire (use fire-number), how long a balance lasts in retirement (use savings-withdrawal), or contributions that change over time.

## Input

| Parameter | Type | Unit | Required | Description |
| --- | --- | --- | --- | --- |
| `current_age` | number | years | required | Age today. (min 0, max 100) |
| `retirement_age` | number | years | required | Planned retirement age; must exceed current_age. (> 0, max 110) |
| `current_savings` | number |  | optional, default 0 | Retirement balance today. (min 0, max 1000000000000) |
| `monthly_contribution` | number |  | optional, default 0 | Amount added at the end of every month (including any employer match). (min 0, max 1000000000) |
| `annual_return_percent` | number | % | optional, default 7 | Expected nominal annual return in percent, compounded monthly. (min -50, max 50) |
| `annual_inflation_percent` | number | % | optional, default 2.5 | Assumed annual inflation used to express the result in today's money. (min -10, max 30) |

## Output

| Field | Type | Unit | Description |
| --- | --- | --- | --- |
| `years_to_retirement` | number | years | retirement_age − current_age. |
| `balance_at_retirement` | number |  | Projected balance in future currency. |
| `balance_in_todays_money` | number |  | balance_at_retirement / (1 + inflation)^years. |
| `total_contributions` | number |  | current_savings + monthly_contribution × months. |
| `investment_growth` | number |  | balance_at_retirement − total_contributions. |
| `annual_income_at_4_percent` | number |  | 0.04 × balance_at_retirement (nominal). |
| `annual_income_in_todays_money` | number |  | 0.04 × balance_in_todays_money. |

## Formula

`i = annual_return_percent/1200; m = 12 × (retirement_age − current_age); balance = current_savings × (1 + i)^m + monthly_contribution × ((1 + i)^m − 1) / i; todays_money = balance / (1 + inflation/100)^years; income = 0.04 × balance`

Constant return, constant contribution, end-of-month deposits, no taxes or fees. Real returns vary; the 4 % withdrawal figure is the Trinity-study rule of thumb for a 30-year retirement, not a guarantee.

## Data Sources

- Investopedia – Future Value (FV): Formula and Calculation — https://www.investopedia.com/terms/f/futurevalue.asp (reference, retrieved 2026-09-24)
- Wikipedia – Trinity study (safe withdrawal rates) — https://en.wikipedia.org/wiki/Trinity_study (reference, retrieved 2026-09-24)
- Wikipedia – Time value of money — https://en.wikipedia.org/wiki/Time_value_of_money (reference, retrieved 2026-09-24)

Data freshness: `static`. Deterministic formula with fixed constants; results never go stale. Inputs supplied by the caller determine the output.

## API

- `GET https://tttkmbb.com/api/v1/calculate/retirement-savings?current_age=…&retirement_age=…`
- `POST https://tttkmbb.com/api/v1/calculate/retirement-savings` with JSON body `{"inputs": {…}}`
- Response: unified envelope (`success`, `request`, `result.values`, `result.units`, `sources`, `freshness`, `timestamp`, `next_actions`, `links`); see https://tttkmbb.com/docs/response-format.md
- Schema: https://tttkmbb.com/api/v1/calculators/retirement-savings · OpenAPI operationId `project_retirement_savings` in https://tttkmbb.com/openapi.json
- Authentication: none. Rate limit: fair use, see https://tttkmbb.com/docs/rate-limits.md.

## MCP

- Server: `https://tttkmbb.com/mcp` (Streamable HTTP, JSON-RPC 2.0, no auth)
- Tool:  `run_calculator` with `{"calculator_id": "retirement-savings", "inputs": {…}}`

## Example

- Age 30 to 65, 50,000 saved, 500/month, 7 %, 2.5 % inflation: inputs `{"current_age":30,"retirement_age":65,"current_savings":50000,"monthly_contribution":500,"annual_return_percent":7,"annual_inflation_percent":2.5}` → `{"years_to_retirement":35,"balance_at_retirement":1475834.89,"balance_in_todays_money":621874.12,"total_contributions":260000,"investment_growth":1215834.89,"annual_income_at_4_percent":59033.4,"annual_income_in_todays_money":24874.96}`
- Age 45 to 67, 200,000 saved, 1,000/month, 6 %, 3 % inflation: inputs `{"current_age":45,"retirement_age":67,"current_savings":200000,"monthly_contribution":1000,"annual_return_percent":6,"annual_inflation_percent":3}` → `{"years_to_retirement":22,"balance_at_retirement":1292451.73,"balance_in_todays_money":674520.87,"total_contributions":464000}`

```
GET https://tttkmbb.com/api/v1/calculate/retirement-savings?current_age=30&retirement_age=65&current_savings=50000&monthly_contribution=500&annual_return_percent=7&annual_inflation_percent=2.5
```

## Limitations

You need the amount required to retire (use fire-number), how long a balance lasts in retirement (use savings-withdrawal), or contributions that change over time. Constant return, constant contribution, end-of-month deposits, no taxes or fees. Real returns vary; the 4 % withdrawal figure is the Trinity-study rule of thumb for a 30-year retirement, not a guarantee. All values are computed from the formula above; no measurement or live data is involved.

## FAQ

**Why is the inflation-adjusted balance so much lower?**

At 2.5 % inflation prices rise 2.37× over 35 years, so 1.48 million then buys what about 622,000 buys today. Plan with the today's-money figure.

**Should I enter a nominal or real return?**

Enter the nominal return and let the inflation input do the adjustment. Entering a real return with inflation set to 0 gives the same today's-money result.

## Related

- [FIRE Number Calculator](https://tttkmbb.com/finance/fire-number.md) — How much you need to retire and when you reach it.
- [Compound Interest Calculator](https://tttkmbb.com/finance/compound-interest.md) — Same growth arithmetic for any savings goal.
- [Inflation Calculator](https://tttkmbb.com/finance/inflation.md) — Purchasing power of a future amount.
