{
  "id": "fire",
  "version": "fe67656f629c",
  "status": "published",
  "name": "FIRE Calculator",
  "question": "When can I retire early with FIRE?",
  "summary": "Computes your FIRE number (yearly spending ÷ withdrawal rate) and how long it takes to reach it from your savings and what you save, at a real return.",
  "category": "finance",
  "subcategory": "retirement",
  "url": "https://www.acalculator.org/finance/fire-calculator",
  "markdown": "https://www.acalculator.org/finance/fire-calculator.md",
  "kind": "schedule",
  "method": "FIRE number = yearly spending ÷ withdrawal rate; each month, in today’s money, balance = balance × (1 + i) + savings, with i = ((1 + R) ÷ (1 + inflation))^(1/12) − 1, until the balance reaches the FIRE number.",
  "assumptions": [
    "All amounts are in today’s money: your savings and spending rise with prices.",
    "The return and inflation stay the same every year. Real returns go up and down.",
    "Savings are added at the end of each month.",
    "The withdrawal rate is a rule of thumb from past market returns, not a guarantee that the money lasts.",
    "Taxes, fees, and Social Security are not included.",
    "This is an estimate for planning, not financial advice."
  ],
  "inputs": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "type": "object",
    "properties": {
      "age": {
        "title": "Your age",
        "description": "Your age now.",
        "type": "integer",
        "minimum": 18,
        "maximum": 90
      },
      "spending": {
        "title": "Yearly spending in retirement",
        "description": "What you expect to spend each year once you stop working, in today’s money.",
        "type": "number",
        "x-unit": "USD",
        "minimum": 1,
        "maximum": 100000000
      },
      "saved": {
        "title": "Invested today",
        "description": "What you have invested for retirement now.",
        "type": "number",
        "x-unit": "USD",
        "minimum": 0,
        "maximum": 1000000000
      },
      "save": {
        "title": "You save",
        "description": "What you invest per month or per year, in today’s money: it rises with prices. A yearly amount is split into 12.",
        "type": "number",
        "x-unit": "USD",
        "x-period": "month",
        "minimum": 0,
        "maximum": 100000000
      },
      "rate": {
        "title": "Expected yearly return",
        "description": "The yearly return before inflation. It stays the same every year.",
        "type": "number",
        "x-unit": "percent",
        "minimum": 0,
        "maximum": 20
      },
      "inflation": {
        "title": "Prices rise each year by",
        "description": "The yearly inflation rate. The real return is (1 + return) ÷ (1 + inflation) − 1.",
        "type": "number",
        "x-unit": "percent",
        "minimum": 0,
        "maximum": 20
      },
      "swr": {
        "title": "Safe withdrawal rate",
        "description": "The share of your savings you plan to spend in the first year of retirement, often 4%.",
        "type": "number",
        "x-unit": "percent",
        "minimum": 1,
        "maximum": 10
      }
    }
  },
  "outputs": {
    "fireAge": {
      "label": "You reach financial independence at age",
      "description": "Your age now plus the years it takes for your investments to reach the FIRE number.",
      "format": "number"
    },
    "years": {
      "label": "Years to go",
      "description": "The months until your investments reach the FIRE number, divided by 12.",
      "format": "number"
    },
    "fire": {
      "label": "Your FIRE number",
      "description": "Yearly spending ÷ safe withdrawal rate, in today’s money.",
      "format": "money"
    },
    "progress": {
      "label": "How far you are",
      "description": "What you have invested today as a percent of the FIRE number.",
      "format": "percent"
    },
    "contributed": {
      "label": "You’ll save",
      "description": "Everything you invest until you reach the FIRE number, in today’s money.",
      "format": "money"
    },
    "growth": {
      "label": "Real growth",
      "description": "The growth after inflation until you reach the FIRE number.",
      "format": "money"
    },
    "status": {
      "label": "Reached by age 100?",
      "description": "Shown when your investments do not reach the FIRE number by age 100.",
      "format": "text"
    }
  },
  "defaultAnswer": {
    "inputs": {
      "age": 30,
      "spending": 50000,
      "saved": 100000,
      "save": 2000,
      "rate": 7,
      "inflation": 3,
      "swr": 4
    },
    "outputs": {
      "fireAge": 54.91666666666667,
      "years": 24.916666666666668,
      "fire": 1250000,
      "progress": 8,
      "contributed": 598000,
      "growth": 556583.3349006018
    },
    "text": "Spending $50,000.00 a year needs $1,250,000.00 at a 4% withdrawal rate; saving $2,000.00 a month, you reach it at age 54.9."
  },
  "examples": [
    {
      "given": {
        "age": 30,
        "spending": 40000,
        "saved": 40000,
        "save": "3,000",
        "rate": 0,
        "inflation": 0,
        "swr": 4
      },
      "expect": {
        "fire": 1000000,
        "years": 26.666666666666668,
        "fireAge": 56.66666666666667,
        "progress": 4,
        "contributed": 960000
      },
      "source": "hand calculation in content.mdx: 40,000 ÷ 0.04; (1,000,000 − 40,000) ÷ 3,000 = 320 months"
    },
    {
      "given": {
        "age": 30,
        "spending": 50000,
        "saved": 100000,
        "save": 2000,
        "rate": 7,
        "inflation": 3,
        "swr": 4
      },
      "expect": {
        "fire": 1250000,
        "years": 24.916666666666668,
        "fireAge": 54.91666666666667
      },
      "source": "month by month at the real return in content.mdx; checked in Python"
    },
    {
      "given": {
        "age": 45,
        "spending": 60000,
        "saved": 2000000,
        "save": 0,
        "rate": 5,
        "inflation": 3,
        "swr": 4
      },
      "expect": {
        "fire": 1500000,
        "years": 0,
        "fireAge": 45
      },
      "source": "hand calculation in content.mdx: $2,000,000 is already above 60,000 ÷ 0.04"
    },
    {
      "given": {
        "age": 30,
        "spending": 50000,
        "saved": 0,
        "save": 100,
        "rate": 0,
        "inflation": 0,
        "swr": 4
      },
      "expect": {
        "status": "Not by age 100",
        "fire": 1250000
      },
      "source": "hand calculation in content.mdx: 840 months × $100 = $84,000, far below $1,250,000"
    },
    {
      "given": {
        "age": 30,
        "spending": 12000,
        "saved": 100000,
        "save": 2000,
        "rate": 2,
        "inflation": 5,
        "swr": 4
      },
      "expect": {
        "fire": 300000,
        "years": 11.083333333333334,
        "fireAge": 41.083333333333336
      },
      "source": "hand calculation in content.mdx: a negative real return, n = ln((F × i + S) ÷ (B × i + S)) ÷ ln(1 + i) = 132.8"
    }
  ],
  "sources": [
    "W. P. Bengen, \"Determining Withdrawal Rates Using Historical Data\", Journal of Financial Planning, October 1994.",
    "P. L. Cooley, C. M. Hubbard, D. T. Walz, \"Retirement Savings: Choosing a Withdrawal Rate That Is Sustainable\", AAII Journal, February 1998.",
    "U.S. Securities and Exchange Commission, Investor.gov compound interest calculator and formula. https://www.investor.gov/financial-tools-calculators/calculators/compound-interest-calculator",
    "Real rate of return (the Fisher relation): S. A. Broverman, Mathematics of Investment and Credit, chapter 1.",
    "Social Security Administration, Benefits Planner: born in 1960 or later. https://www.ssa.gov/benefits/retirement/planner/1960.html"
  ],
  "related": [
    "coast-fire",
    "retirement-withdrawal",
    "investment"
  ],
  "changelog": []
}
