✦ Free Calculator

Will your retirement plan leave anything behind?

Most legacy-planning content stops at "spend less, save more." This calculator doesn't — it runs a real 1,000-scenario simulation against the numbers a reader enters, and shows what their plan actually leaves for heirs across the range of futures the market might hand them. Drop it into your own article in one script tag, and it looks like it was built for your site, not bolted onto it.

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

Full explanation: Legacy & Estate Planning →

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.

heirloomplanning.com/insights/will-there-be-anything-left
Estate & Legacy Planning · 7 min read

Will There Be Anything Left? What "Leaving an Inheritance" Actually Requires

HP
Heirloom Planning Group
Estate & legacy planning for retirees

Nearly every client who wants to leave something behind asks the same follow-up once they see real numbers: "Am I actually going to make it, or am I just hoping?" A savings balance today doesn't answer that. What matters is what's left after thirty-plus years of spending, inflation, and whatever the market does in between.

Die with zero vs. leave $X behind

These are two different plans, not two versions of the same one. A "die with zero" plan spends down aggressively and treats a $0 ending balance as success — money left over was money not enjoyed. A "leave $X behind" plan reserves capacity on purpose: it caps spending below what the portfolio could otherwise support, so a specific number survives for heirs or a cause. Neither is wrong, but they require opposite instincts at the spending dial, and a plan that never named which one it's running is usually drifting toward whichever happens by accident.

Why a static withdrawal rate misses the target

A flat "4% of the starting balance" rule wasn't built to hit a legacy number — it was built to avoid running out. Applied blindly, it tends to either undershoot a bequest goal in a weak market decade, or leave heirs far more than intended in a strong one, because it never looks at the actual target and adjusts. Hitting a specific legacy figure requires simulating the full range of outcomes, not assuming the average one shows up.

A legacy number without a range around it isn't a plan — it's one lucky (or unlucky) market path away from being wrong.

Sequence-of-returns risk to a bequest

The order returns arrive in matters as much as the average return itself. A downturn in the first few retirement years forces withdrawals from a shrunken portfolio, and that damage compounds for decades — even if the market fully recovers later. Two retirees with identical average returns over thirty years can end with wildly different legacies purely because of when the bad years landed. This is the piece a single "expected return" number can't show you, and the piece a simulation is built to.

Try it with your own numbers

Adjust the sliders to the right — current age, savings, spending, retirement age — and watch the projected legacy respond in real time, across today's dollars and nominal dollars, with a full range of outcomes rather than one guess. No signup, and nothing entered leaves the browser.

Try it

That's the exact <retirement-calc-legacy> 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-legacy {
  --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/legacy.js"></script>

<retirement-calc-legacy></retirement-calc-legacy>

Or pre-seed values relevant to your audience:

<retirement-calc-legacy
  plan-type="household"
  current-age="48"
  current-savings="1200000"
  contrib-annual="35000"
  retirement-age="62"
  monthly-goal="7500"
  ss-amount="2700"
  return-pct="7.0">
</retirement-calc-legacy>

Attributes

AttributeDefaultRange
current-age5030 – 70
current-savings10000000 – 5,000,000
contrib-annual250000 – 50,000 (incl. employer match)
retirement-age6550 – 75 (planned retirement age)
monthly-goal50001,000 – 20,000 (today's-$ monthly retirement spending)
ss-amount25000 – 5,000 (monthly at FRA)
return-pct7.04.0 – 10.0 (nominal annual %, engine handles inflation)
plan-typesinglesingle or household
refsrc(none)partner attribution tag

Theming

Override CSS custom properties on the host:

retirement-calc-legacy {
  --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-legacy')
  .addEventListener('rc-calculated', (e) => {
    console.log('Today\'s $ median legacy:', e.detail.todayMedian);
    console.log('Nominal median legacy:', e.detail.nominalMedian);
  });

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