{
  "slug": "safe-withdrawal-rate",
  "title": "Safe Withdrawal Rate Calculator",
  "heading": "Safe Withdrawal Rate Calculator",
  "category": "financial",
  "url": "https://www.revenuelab.fyi/toolbox/safe-withdrawal-rate",
  "summary": "Sustainable annual income from a portfolio, adjusted for inflation.",
  "description": "The 4% rule came from 30-year US historical data. For an early retirement spanning 40+ years, most planners now model 3.3–3.7% instead.",
  "formula": "Annual withdrawal = Portfolio × SWR; depletion modelled year by year with real returns.",
  "dateModified": "2026-09-30",
  "run_url": "https://www.revenuelab.fyi/api/public/calc?tool=safe-withdrawal-rate",
  "inputs": [
    {
      "id": "portfolio",
      "label": "Portfolio value",
      "kind": "number",
      "hint": null,
      "default": 1200000,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "swr",
      "label": "Withdrawal rate",
      "kind": "number",
      "hint": null,
      "default": 4,
      "unit": "%",
      "min": 1,
      "max": 10
    },
    {
      "id": "realReturn",
      "label": "Real return after inflation",
      "kind": "number",
      "hint": null,
      "default": 5,
      "unit": "%",
      "min": -5,
      "max": 12
    },
    {
      "id": "years",
      "label": "Retirement length (years)",
      "kind": "number",
      "hint": null,
      "default": 35,
      "unit": null,
      "min": 5,
      "max": 60
    },
    {
      "id": "other",
      "label": "Other annual income (pension, SS)",
      "kind": "number",
      "hint": null,
      "default": 0,
      "unit": "$",
      "min": 0,
      "max": null
    }
  ],
  "outputs": [
    {
      "id": "withdrawal",
      "label": "Annual withdrawal",
      "format": "currency",
      "hint": null,
      "primary": true
    },
    {
      "id": "monthly",
      "label": "Monthly income",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "totalIncome",
      "label": "Total income including other sources",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "ending",
      "label": "Portfolio at end of horizon",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "depleted",
      "label": "Year the portfolio runs out (0 = never)",
      "format": "number",
      "hint": null,
      "primary": false
    },
    {
      "id": "needed",
      "label": "Portfolio needed for this income",
      "format": "currency",
      "hint": null,
      "primary": false
    }
  ],
  "worked_example": {
    "inputs": [
      "Portfolio value: 1200000 $",
      "Withdrawal rate: 4 %",
      "Real return after inflation: 5 %",
      "Retirement length (years): 35",
      "Other annual income (pension, SS): 0 $"
    ],
    "outputs": [
      "Annual withdrawal: $48,000.00",
      "Monthly income: $4,000.00",
      "Total income including other sources: $48,000.00",
      "Portfolio at end of horizon: $2,283,843.69",
      "Year the portfolio runs out (0 = never): 0",
      "Portfolio needed for this income: $1,200,000.00"
    ]
  },
  "how_to": {
    "title": "How to use this",
    "steps": [
      "Enter portfolio value ($).",
      "Enter withdrawal rate (%).",
      "Enter real return after inflation (%).",
      "Enter retirement length (years).",
      "Enter other annual income (pension, ss) ($).",
      "Read your annual withdrawal on the right — it updates as you type.",
      "Hit Share to keep the scenario or send it to someone."
    ]
  },
  "scenarios": [
    {
      "name": "Conservative",
      "description": "Lower-end numbers — what if things land soft?",
      "values": {
        "portfolio": 720000,
        "swr": 2.4,
        "realReturn": 3,
        "years": 21,
        "other": 0
      }
    },
    {
      "name": "Typical",
      "description": "Defaults — the most common real-world setup.",
      "values": {
        "portfolio": 1200000,
        "swr": 4,
        "realReturn": 5,
        "years": 35,
        "other": 0
      }
    },
    {
      "name": "Ambitious",
      "description": "Higher-end numbers — what if things really pop?",
      "values": {
        "portfolio": 1920000,
        "swr": 6.4,
        "realReturn": 8,
        "years": 56,
        "other": 0
      }
    }
  ],
  "limitations": [
    "Results are estimates before tax, fees, and inflation unless an input explicitly covers them.",
    "Rates are treated as fixed for the whole period — variable-rate products will drift from this projection.",
    "This is educational maths, not financial advice. Check anything contractual with the lender or your accountant."
  ],
  "faq": [
    {
      "q": "How does the safe withdrawal rate calculator work?",
      "a": "The 4% rule came from 30-year US historical data. For an early retirement spanning 40+ years, most planners now model 3.3–3.7% instead. The underlying maths is: Annual withdrawal = Portfolio × SWR; depletion modelled year by year with real returns."
    },
    {
      "q": "What do I need to enter?",
      "a": "5 values: portfolio value, withdrawal rate, real return after inflation, retirement length (years), and other annual income (pension, ss). Each field starts with a sensible default, so you can change one number at a time and watch the result move."
    },
    {
      "q": "What does the annual withdrawal result mean?",
      "a": "It is returned as a money amount in US dollars and updates live as you edit the inputs, so you can compare two or three versions of a scenario in a few seconds."
    },
    {
      "q": "Is this calculator free, and do I need an account?",
      "a": "Yes, it's free, and no account is required. Nothing you type is stored on our servers — the maths runs entirely in your browser."
    },
    {
      "q": "How accurate is the result?",
      "a": "It applies the standard formula exactly, so the arithmetic is precise. Results are estimates before tax, fees, and inflation unless an input explicitly covers them."
    },
    {
      "q": "Who is this tool for?",
      "a": "It's built for anyone comparing money scenarios before committing — budgeting a payment, sanity-checking a quote, or seeing what a change in rate or term actually costs."
    }
  ],
  "related": [
    "https://www.revenuelab.fyi/toolbox/coast-fire",
    "https://www.revenuelab.fyi/toolbox/portfolio-rebalance"
  ],
  "license": "CC-BY-4.0",
  "citation": "RevenueLab — Safe Withdrawal Rate Calculator (https://www.revenuelab.fyi/toolbox/safe-withdrawal-rate)"
}