{
  "slug": "medicare-part-b-premium-calculator",
  "title": "Medicare Part B Premium Calculator",
  "heading": "Medicare Part B & D Premium Calculator",
  "category": "financial",
  "url": "https://www.revenuelab.fyi/toolbox/medicare-part-b-premium-calculator",
  "summary": "Standard premium, IRMAA surcharge from your two-year-lookback income, and late-enrolment penalty.",
  "description": "Medicare Part B costs most people the standard monthly premium, but three things change that number and each surprises new enrolees. First, income-related monthly adjustment amounts (IRMAA) add a surcharge to both Part B and Part D when modified adjusted gross income from two years earlier exceeds a bracket threshold — and the brackets are cliffs, so a single dollar of extra income can cost hundreds over a year. Second, enrolling late without creditable coverage adds a permanent 10% penalty for every full year you could have enrolled but did not. Third, the hold-harmless provision limits premium increases for many people already receiving Social Security. This calculator applies all three to your figures and shows the annual cost, the surcharge you are paying because of the income lookback, and how far you are from the next bracket — useful when deciding whether to convert a retirement account or realise a gain this year.",
  "formula": "Monthly = (Standard Part B + IRMAA Part B) × (1 + Late Penalty %) + Part D IRMAA. Annual = Monthly × 12.",
  "dateModified": "2026-09-06",
  "run_url": "https://www.revenuelab.fyi/api/public/calc?tool=medicare-part-b-premium-calculator",
  "inputs": [
    {
      "id": "standard",
      "label": "Standard Part B premium",
      "kind": "number",
      "hint": null,
      "default": 185,
      "unit": "$/month",
      "min": 0,
      "max": 600
    },
    {
      "id": "magi",
      "label": "MAGI from two years ago",
      "kind": "number",
      "hint": null,
      "default": 95000,
      "unit": "$",
      "min": 0,
      "max": 2000000
    },
    {
      "id": "filing",
      "label": "Filing status",
      "kind": "select",
      "hint": null,
      "default": "single",
      "options": [
        {
          "value": "single",
          "label": "Single"
        },
        {
          "value": "joint",
          "label": "Married filing jointly"
        }
      ]
    },
    {
      "id": "lateYears",
      "label": "Full years enrolled late",
      "kind": "number",
      "hint": null,
      "default": 0,
      "unit": "years",
      "min": 0,
      "max": 20
    },
    {
      "id": "partDBase",
      "label": "Part D plan premium",
      "kind": "number",
      "hint": null,
      "default": 40,
      "unit": "$/month",
      "min": 0,
      "max": 300
    },
    {
      "id": "people",
      "label": "People on Medicare in household",
      "kind": "number",
      "hint": null,
      "default": 1,
      "unit": "people",
      "min": 1,
      "max": 2
    }
  ],
  "outputs": [
    {
      "id": "monthly",
      "label": "Total monthly premium",
      "format": "currency",
      "hint": null,
      "primary": true
    },
    {
      "id": "annual",
      "label": "Annual cost",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "partB",
      "label": "Part B per person",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "partD",
      "label": "Part D per person",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "irmaaAnnual",
      "label": "IRMAA surcharge per year",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "roomToNext",
      "label": "Income room before next bracket",
      "format": "currency",
      "hint": null,
      "primary": false
    }
  ],
  "worked_example": {
    "inputs": [
      "Standard Part B premium: 185 $/month",
      "MAGI from two years ago: 95000 $",
      "Filing status: Single",
      "Full years enrolled late: 0 years",
      "Part D plan premium: 40 $/month",
      "People on Medicare in household: 1 people"
    ],
    "outputs": [
      "Total monthly premium: $225.00",
      "Annual cost: $2,700",
      "Part B per person: $185.00",
      "Part D per person: $40.00",
      "IRMAA surcharge per year: $0",
      "Income room before next bracket: $11,000"
    ]
  },
  "how_to": {
    "title": "How to use this",
    "steps": [
      "Enter standard part b premium ($/month).",
      "Enter magi from two years ago ($).",
      "Enter filing status.",
      "Enter full years enrolled late (years).",
      "Enter part d plan premium ($/month).",
      "Enter people on medicare in household (people).",
      "Read your total monthly premium 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": {
        "standard": 111,
        "magi": 57000,
        "filing": "single",
        "lateYears": 0,
        "partDBase": 24,
        "people": 1
      }
    },
    {
      "name": "Typical",
      "description": "Defaults — the most common real-world setup.",
      "values": {
        "standard": 185,
        "magi": 95000,
        "filing": "single",
        "lateYears": 0,
        "partDBase": 40,
        "people": 1
      }
    },
    {
      "name": "Ambitious",
      "description": "Higher-end numbers — what if things really pop?",
      "values": {
        "standard": 296,
        "magi": 152000,
        "filing": "single",
        "lateYears": 0,
        "partDBase": 64,
        "people": 2
      }
    }
  ],
  "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": "Why does income from two years ago matter?",
      "a": "SSA sets IRMAA using the most recent tax return it has, which is normally two years old. That makes the year you retire, sell property, or convert to a Roth the year that sets your premium two years later."
    },
    {
      "q": "Can I appeal an IRMAA determination?",
      "a": "Yes, using Form SSA-44 after a life-changing event such as retirement, marriage, divorce, or loss of income-producing property. A one-off capital gain is not a qualifying event, which catches many people."
    },
    {
      "q": "Is the late enrolment penalty permanent?",
      "a": "For Part B, yes — 10% for each full 12-month period you could have enrolled but did not, added for as long as you have Part B. Coverage from active employment generally protects you from it."
    },
    {
      "q": "Are the bracket amounts fixed?",
      "a": "No, they are indexed and change annually. Update the premium input each year and check the current thresholds; the amounts here are configurable so the tool stays accurate."
    }
  ],
  "related": [
    "https://www.revenuelab.fyi/toolbox/cobra-vs-marketplace-cost-calculator",
    "https://www.revenuelab.fyi/toolbox/annuity-income-payout-calculator"
  ],
  "license": "CC-BY-4.0",
  "citation": "RevenueLab — Medicare Part B Premium Calculator (https://www.revenuelab.fyi/toolbox/medicare-part-b-premium-calculator)"
}