✦ RMD Calculator

When will the IRS force you to withdraw?

Required Minimum Distributions aren't optional, and under SECURE 2.0 the start age depends on the year you were born — 73 for most people today, 75 if you were born 1960 or later. This calculator projects your exact first-RMD age and the dollar amount the IRS will require, using your real pre-tax balance and growth assumptions, not a generic table lookup.

Sibling of <retirement-calc-spend> — same engine, different question.

Full explanation: Required Minimum Distributions →

See it in context

Here's exactly what that looks like — a live instance embedded inside a sample article, using someone else's fonts and colors, not ours.

rmdplaybook.com/blog/first-rmd-age-and-amount
Tax-Bracket Planning · 7 min read

Your First RMD: When It Hits, How Big It Is, and Why It's Bigger Than You Think

RP
The RMD Playbook
Required minimum distribution & tax-bracket planning

Every client with a 401(k) or traditional IRA eventually asks the same question, usually a few years too late to fully act on it: "When do I actually have to start taking money out, and how much?" The honest answer requires knowing your birth year, your account math, and how the two combine — not a rule of thumb.

73 or 75 — it depends on your birth year

SECURE 2.0 raised the RMD start age in two steps. If you were born between 1951 and 1959, your first RMD is due the year you turn 73. Born 1960 or later, it's 75. This isn't a suggestion the IRS makes — miss an RMD and the penalty is steep, so knowing your exact start age matters more than most people realize until it's close.

Why the first RMD is often bigger than expected

RMDs are calculated as a percentage of your prior year-end balance, using an IRS life-expectancy divisor that shrinks every year. That means the withdrawal amount grows on two fronts at once: the percentage forced out increases with age, and it's applied to a balance that — if markets cooperated — has kept compounding for years without a mandatory decrease. A account that felt comfortably sized at 65 can produce a first RMD that pushes taxable income meaningfully higher than a retiree was planning for.

An RMD isn't extra income you get to choose to spend — it's income the IRS decides for you, whether you need the cash that year or not.

The tax-bracket and IRMAA collision

Because an RMD is ordinary taxable income, it stacks on top of Social Security, pensions, and any other income already coming in. For some retirees that's enough to tip them into a higher marginal bracket. It can also raise Modified Adjusted Gross Income enough to trigger IRMAA — the Medicare Part B and D surcharge that's based on income from two years prior. A withdrawal you didn't choose to take can end up costing more than the tax on it alone.

A worked example

Someone born in 1962 turns 73 in 2035 — their first RMD year under SECURE 2.0. If their traditional 401(k) closed the prior year-end at $750,000, the IRS Uniform Lifetime Table divisor at age 73 is 26.5, so the required withdrawal is $750,000 ÷ 26.5 ≈ $28,300 — taxed as ordinary income whether or not they need the cash that year.

What proactive conversions can do about it

The years between retirement and RMD age are often the lowest-income years of a person's life — which makes them the cheapest window to convert traditional balances to Roth. Every dollar converted and taxed now at a lower bracket is a dollar that never generates a forced, possibly higher-bracket RMD later. It's not free — conversions are taxable the year they happen — but for the right balance and bracket situation, it can meaningfully shrink the eventual RMD problem instead of just watching it arrive. The full app's Bridge Optimizer searches year-shaped Roth conversion ladders specifically timed to your bridge years — the strategy above, tested against your real numbers rather than a generic rule of thumb.

Try it with your own numbers

Enter your current age, pre-tax balance, and how much you're still contributing, and the calculator projects your first RMD age and amount using the actual SECURE 2.0 schedule. No signup, and nothing entered leaves the browser.

Try it

That's the exact <retirement-calc-rmd> widget, unmodified — same script tag, same math as the full app. See the full picture → · Jump to the embed code ↓

For developers

Everything below is for embedding this calculator on your own site — integration code, theming, and events.

Live demos

Default (single, defaults)

Themed (orange accent, household, pre-seeded)

Preview your theme

Pick colors that match your site, then copy the CSS snippet at the bottom.

Theme colors

Big number, slider thumb, CTA button
#4f8ec9
Outer surface of the calc
#ffffff
Result area + toggle background
#f7f9fc
Title, slider values, result subline
#1a1f2e
retirement-calc-rmd {
  --rc-accent: #4f8ec9;
  --rc-bg: #ffffff;
  --rc-surf: #f7f9fc;
  --rc-text: #1a1f2e;
}

Integration code

Drop this into your HTML:

<script src="https://app.retirementscenario.com/embed/v1/rmd.js"></script>

<retirement-calc-rmd></retirement-calc-rmd>

Or pre-seed values relevant to your audience:

<retirement-calc-rmd
  plan-type="household"
  current-age="62"
  current-balance="1400000"
  contrib-annual="20000"
  retirement-age="65"
  return-pct="6.5">
</retirement-calc-rmd>

Attributes

AttributeDefaultRange
current-age6040 – 85
current-balance8000000 – 5,000,000 (pre-tax: 401k + traditional IRA combined)
contrib-annual150000 – 50,000 (assumed until retirement-age, then stops)
retirement-age65currentAge – 80 (when contributions stop)
return-pct7.04.0 – 10.0 (nominal annual %)
plan-typesinglesingle or household
refsrc(none)partner attribution tag

Theming

Override CSS custom properties on the host:

retirement-calc-rmd {
  --rc-accent: #ff6b35;    /* primary color */
  --rc-bg: #ffffff;        /* card background */
  --rc-surf: #f7f9fc;      /* sub-surface (result area) */
  --rc-text: #1a1f2e;
  --rc-muted: #6a7280;
  --rc-border: rgba(20,30,50,0.10);
  --rc-radius: 12px;
}

Events

The element emits two custom events you can listen to:

document.querySelector('retirement-calc-rmd')
  .addEventListener('rc-calculated', (e) => {
    console.log('First RMD at age:', e.detail.firstRMDAge);
    console.log('First RMD amount:', e.detail.firstRMD);
  });

document.querySelector('retirement-calc-rmd')
  .addEventListener('rc-cta-clicked', (e) => {
    console.log('User clicked CTA to:', e.detail.url);
  });