Loading…

FIRE Calculator (Intermediate, 12-Asset)

/* ======================================================== MWM BUCKETS — LAYOUT + UI HARMONIZATION Hides theme sidebar on calculator pages, forces full width, restyles legacy FIRE calculator elements to match new design. ======================================================== */ /* === LAYOUT: kill the right sidebar, full-width content === */ .widget-area.sidebar.is-right-sidebar, .widget-area.sidebar.is-left-sidebar, #right-sidebar, #left-sidebar { display: none !important; } .site-content, .content-area, #primary { width: 100% !important; max-width: 100% !important; float: none !important; margin: 0 auto !important; } .inside-article, .entry-content { max-width: 1100px !important; margin-left: auto !important; margin-right: auto !important; } /* Mobile gutter — comfortable padding, no offset === */ @media (max-width: 768px) { .inside-article, .entry-content { padding-left: 16px !important; padding-right: 16px !important; } } /* === BUCKET E LEGACY CALCULATOR — REAL CLASS NAMES === */ /* The output box (was the large purple “Your FIRE Projection”) */ #results { background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%) !important; border-radius: 12px !important; padding: 32px 28px !important; color: #fff !important; box-shadow: 0 4px 20px rgba(15, 23, 42, 0.15) !important; margin: 32px 0 !important; border: none !important; } #results h1, #results h2, #results h3, #results h4 { color: #f59e0b !important; margin-top: 0 !important; } #results p, #results span, #results div, #results li { color: #e2e8f0 !important; } #results strong, #results b { color: #fff !important; } .result-row { display: flex !important; justify-content: space-between !important; align-items: center !important; padding: 12px 0 !important; border-bottom: 1px solid rgba(255,255,255,0.1) !important; color: #e2e8f0 !important; } .result-row:last-child { border-bottom: none !important; } .result-row strong, .result-row b { color: #f59e0b !important; } /* Main calculator container */ #fire-calculator { max-width: 100% !important; margin: 0 0 32px !important; } /* Asset input card rows */ .fire-card-fields { background: #fff !important; border: 1px solid #e2e8f0 !important; border-radius: 10px !important; padding: 20px !important; margin: 12px 0 !important; display: grid !important; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important; gap: 16px !important; } .fire-card-header { font-weight: 700 !important; font-size: 16px !important; color: #0f172a !important; margin-bottom: 12px !important; padding-bottom: 8px !important; border-bottom: 2px solid #f59e0b !important; } .fire-card-note { font-size: 13px !important; color: #64748b !important; margin-top: 8px !important; } .fire-field { display: flex !important; flex-direction: column !important; } .fire-field label { font-size: 13px !important; color: #475569 !important; margin-bottom: 6px !important; font-weight: 500 !important; } .fire-field input, .fire-field select { padding: 10px 12px !important; border: 1px solid #e2e8f0 !important; border-radius: 6px !important; font-size: 15px !important; background: #fff !important; } .fire-field input:focus, .fire-field select:focus { outline: none !important; border-color: #f59e0b !important; box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.1) !important; } .fire-no-assets { padding: 24px !important; background: #f8fafc !important; border: 1px dashed #cbd5e1 !important; border-radius: 10px !important; text-align: center !important; color: #64748b !important; font-size: 14px !important; } /* Purple/violet override safety net for any other legacy color */ [style*=”background:#9333ea”], [style*=”background:#7c3aed”], [style*=”background:#8b5cf6″], [style*=”background:#a855f7″], [style*=”background:#6d28d9″], [style*=”background-color:#9333ea”], [style*=”background-color:#7c3aed”], [style*=”background-color:#8b5cf6″], [style*=”background-color:#a855f7″], [style*=”background-color:#6d28d9″] { background: #0f172a !important; } [style*=”color:#9333ea”], [style*=”color:#7c3aed”], [style*=”color:#8b5cf6″], [style*=”color:#a855f7″] { color: #f59e0b !important; } /* Mobile fine-tuning */ @media (max-width: 540px) { .fire-card-fields { grid-template-columns: 1fr !important; padding: 16px !important; } #results { padding: 24px 20px !important; } .result-row { flex-direction: column !important; align-items: flex-start !important; gap: 4px !important; } }

Twelve assets, twelve real returns, one FIRE number. The intermediate version adds tax-advantaged accounts (401k, IRA, HSA), inflation-linked instruments (I-Bonds), REITs, Gold, and a broad “Other Crypto” placeholder on top of the basic 5-asset balance sheet.

Simpler? Basic (5 assets) → · More? Advanced (35 assets) →

Methodology: Returns are real (inflation-adjusted), compounded monthly. The 4% safe withdrawal rate comes from the 1998 Trinity Study. Read the full methodology → · Tax-advantaged account returns are pre-tax-treatment (the tax savings show up as effective higher returns at withdrawal but aren’t modeled here). What we don’t model: volatility distribution, sequence-of-returns risk, RMD timing, healthcare inflation, Social Security.

Frequently asked questions

What’s new vs. the basic version?

Seven additional assets: 401(k), IRA (Traditional or Roth), HSA, I-Bonds, REITs, Gold, and a broad “Other Crypto” placeholder. Together they cover the next layer of household balance sheet complexity — tax-advantaged accounts, inflation-linked instruments, and non-Bitcoin crypto exposure.

Why is “Other Crypto” a broad category and not specific coins?

Modern Wealth Model’s position is that Bitcoin is sound money. Everything else in crypto is speculation. We don’t model individual altcoins because we don’t want to imply endorsement of any specific one. If you hold ETH, Solana, or anything else, lump it into “Other Crypto” with whatever return assumption you think is honest.

How should I model my HSA?

HSAs are triple tax-advantaged (deductible going in, growth tax-free, withdrawal tax-free for medical). If your HSA is invested in index funds (most are once you cross the cash minimum), use the equities default of 7% real. If you keep it in cash, use 0.5%. The contribution limit for 2026 is $4,300 individual / $8,550 family — the form has those as the max monthly contributions ($358 / $712).

Why are I-Bonds capped at $10,000/year?

That’s the IRS limit per Social Security number per year for paper purchases via TreasuryDirect. The form caps monthly contribution at $833/month accordingly. (You can also buy $5,000 in paper I-Bonds with your federal tax refund, but that’s not modeled here.)

What’s the difference between REITs and primary residence?

REITs (Real Estate Investment Trusts) are publicly-traded shares of real estate portfolios — you can buy them in a brokerage account. They have higher correlation with equities than direct real estate ownership. Default real return: 5% real, lower than equities but higher than bonds. Your primary residence (from the basic calc) is a non-liquid personal-use asset and behaves differently.

Why 4% safe withdrawal rate?

The 4% rule comes from the 1998 Trinity Study and assumes a stock/bond portfolio. Newer research suggests 3-3.5% is more conservative for current valuations and longer retirement horizons. You can adjust the SWR field. Sequence-of-returns risk is the biggest reason to consider going lower if your Bitcoin allocation is large.

(function() { var ASSETS = [ {key:’cash’, name:’Cash / High-Yield Savings’, emoji:’💰’, defValue:20000, defMonthly:500, defRet:0.5, retMin:-2, retMax:3, monthlyMax:50000}, {key:’equities’, name:’Equities / Index Funds’, emoji:’📈’, defValue:100000, defMonthly:2000, defRet:7.0, retMin:0, retMax:15, monthlyMax:50000}, {key:’bonds’, name:’Bonds / Fixed Income’, emoji:’📄’, defValue:30000, defMonthly:200, defRet:1.5, retMin:-2, retMax:6, monthlyMax:50000}, {key:’bitcoin’, name:’₿️ Bitcoin’, emoji:”, defValue:15000, defMonthly:500, defRet:12.0, retMin:-20, retMax:40, monthlyMax:50000, highlight:true}, {key:’realestate’, name:’Real Estate (Primary Residence)’, emoji:’🏠’, defValue:150000, defMonthly:600, defRet:3.0, retMin:-5, retMax:10, monthlyMax:50000}, {key:’401k’, name:’401(k) / Workplace Retirement’, emoji:’🏢’, defValue:120000, defMonthly:1500, defRet:7.0, retMin:0, retMax:15, monthlyMax:1958}, {key:’ira’, name:’IRA (Traditional or Roth)’, emoji:’🏦’, defValue:40000, defMonthly:583, defRet:7.0, retMin:0, retMax:15, monthlyMax:583}, {key:’hsa’, name:’HSA (Health Savings Account)’, emoji:’🪺’, defValue:15000, defMonthly:358, defRet:7.0, retMin:0, retMax:15, monthlyMax:712}, {key:’ibonds’, name:’I-Bonds (Series I)’, emoji:’🛡️’, defValue:10000, defMonthly:100, defRet:0.0, retMin:-1, retMax:3, monthlyMax:833}, {key:’reits’, name:’REITs (Real Estate Trusts)’, emoji:’🏢’, defValue:25000, defMonthly:300, defRet:5.0, retMin:-5, retMax:15, monthlyMax:50000}, {key:’gold’, name:’Gold’, emoji:’🪙’, defValue:10000, defMonthly:100, defRet:1.0, retMin:-5, retMax:10, monthlyMax:50000}, {key:’othercrypto’, name:’Other Crypto (broad placeholder)’, emoji:’🔒’, defValue:5000, defMonthly:50, defRet:8.0, retMin:-30, retMax:40, monthlyMax:50000} ]; function renderForms() { var root = document.getElementById(‘fi-form-root’); if (!root) return; root.innerHTML = ‘
‘ + ASSETS.map(function(a) { var borderStyle = a.highlight ? ‘1px solid #f59e0b’ : ‘1px solid #e2e8f0’; return ‘
‘ + ‘
‘ + a.emoji + ‘ ‘ + a.name + ‘
‘ + ‘
‘ + ‘‘ + ‘‘ + ‘‘ + ‘
‘ + ‘
‘; }).join(”) + ‘
‘; } function getVal(asset, field) { var el = document.querySelector(‘[data-fi=”‘ + asset + ‘”][data-fi-field=”‘ + field + ‘”]’); return el ? parseFloat(el.value) || 0 : 0; } function fmt(n) { return ‘$’ + Math.round(n).toLocaleString(‘en-US’); } function fvAsset(value, monthly, retPct, years) { var r = retPct / 100; var fvLump = value * Math.pow(1 + r, years); var mr = r / 12; var months = years * 12; var fvMon = mr > 0 ? monthly * ((Math.pow(1 + mr, months) – 1) / mr) : monthly * months; return fvLump + fvMon; } function calc() { var elYears = document.getElementById(‘fi-years’); var elSWR = document.getElementById(‘fi-swr’); var elOutput = document.getElementById(‘fi-output’); if (!elYears || !elSWR || !elOutput) return; var years = parseInt(elYears.value, 10) || 0; var swrPct = parseFloat(elSWR.value) || 4; var total = 0; var breakdown = []; ASSETS.forEach(function(a) { var fv = fvAsset(getVal(a.key, ‘value’), getVal(a.key, ‘monthly’), getVal(a.key, ‘ret’), years); total += fv; breakdown.push({name: a.name.replace(/&#\d+;|&#\d+;&#\d+;/g, ”).trim(), fv: fv}); }); var swrAnnual = total * (swrPct / 100); var swrMonthly = swrAnnual / 12; var breakdownHtml = breakdown.map(function(b) { var pct = total > 0 ? Math.round((b.fv / total) * 100) : 0; return ‘
‘ + b.name + ‘‘ + fmt(b.fv) + ‘ · ‘ + pct + ‘%
‘; }).join(”); elOutput.innerHTML = ‘
‘ + ‘
In ‘ + years + ‘ years · today’s purchasing power
‘ + ‘
‘ + fmt(total) + ‘
‘ + ‘
‘ + breakdownHtml + ‘
‘ + ‘
‘ + ‘At ‘ + swrPct.toFixed(1) + ‘% safe withdrawal rate:
‘ + fmt(swrAnnual) + ‘ / year · ‘ + fmt(swrMonthly) + ‘ / month’ + ‘
‘ + ‘
‘; } renderForms(); [‘input’, ‘change’].forEach(function(evt) { document.querySelectorAll(‘[data-fi], #fi-years, #fi-swr’).forEach(function(el) { el.addEventListener(evt, calc); }); }); calc(); })(); { “@context”: “https://schema.org”, “@type”: “SoftwareApplication”, “name”: “FIRE Calculator (Intermediate, 12-Asset)”, “applicationCategory”: “FinanceApplication”, “operatingSystem”: “Web”, “url”: “https://modernwealthmodel.com/fire-calculator-intermediate/”, “description”: “Intermediate FIRE retirement calculator covering 12 assets including 401(k), IRA, HSA, I-Bonds, REITs, Gold, and a broad Other Crypto placeholder. Inflation-adjusted projections.”, “offers”: {“@type”: “Offer”, “price”: “0”, “priceCurrency”: “USD”}, “provider”: {“@type”: “Organization”, “name”: “Modern Wealth Model”, “url”: “https://modernwealthmodel.com”} } { “@context”: “https://schema.org”, “@type”: “FAQPage”, “mainEntity”: [ {“@type”:”Question”,”name”:”What’s new vs. the basic FIRE calculator?”,”acceptedAnswer”:{“@type”:”Answer”,”text”:”Seven additional assets: 401(k), IRA (Traditional or Roth), HSA, I-Bonds, REITs, Gold, and a broad Other Crypto placeholder. Covers tax-advantaged accounts, inflation-linked instruments, and non-Bitcoin crypto exposure.”}}, {“@type”:”Question”,”name”:”Why is Other Crypto a broad category and not specific coins?”,”acceptedAnswer”:{“@type”:”Answer”,”text”:”Modern Wealth Model’s position is that Bitcoin is sound money. Everything else in crypto is speculation. We don’t model individual altcoins because we don’t want to imply endorsement. Lump any non-Bitcoin holdings into Other Crypto with whatever return assumption you think is honest.”}}, {“@type”:”Question”,”name”:”How should I model my HSA in retirement planning?”,”acceptedAnswer”:{“@type”:”Answer”,”text”:”HSAs are triple tax-advantaged. If invested in index funds, use the equities default of 7% real. If kept in cash, use 0.5%. 2026 contribution limit: $4,300 individual / $8,550 family.”}}, {“@type”:”Question”,”name”:”Why are I-Bonds capped at $10,000 per year?”,”acceptedAnswer”:{“@type”:”Answer”,”text”:”IRS limit per SSN per year via TreasuryDirect. The form caps monthly contributions at $833/month accordingly. You can also buy $5,000 in paper I-Bonds with your federal tax refund.”}}, {“@type”:”Question”,”name”:”What’s the difference between REITs and primary residence?”,”acceptedAnswer”:{“@type”:”Answer”,”text”:”REITs are publicly-traded shares of real estate portfolios with higher correlation to equities than direct real estate. Default 5% real return. Primary residence is a non-liquid personal-use asset and behaves differently.”}} ] }