📊 Financial Planner 📈

Dollars:
Reality Check Pack
Adds 3 additional “stress test” runs on top of the main Monte Carlo (more compute, better reality check).
Stress window is fixed at first 5 years after retirement (same as your current stress logic).
More inputs
Portfolio → Auto Return & Volatility
Uses /api/portfolio_stats
CAGR (annual)
Volatility σ (annual)
Note: This sets your CAGR inputs. Your Monte Carlo uses μ = CAGR + ½·σ² internally (your existing architecture).

This tool doesn’t predict markets. It stress-tests whether your plan survives different futures — it tells you how much risk you can afford, not which ticker will win.

📉 Asset vs. Retirement Expense
📉 Monte Carlo Simulation: Retirement Asset Range
Benchmark (fixed): S&P 500 SPY • 20y • CAGR 10.8% • σ 19.4%
✅ Probability of plan success (no depletion through age 90): 100.0%
Strong
Success = assets never hit $0 before age 90.
Band guide: <65% = caution, 66–88% = okay, 89%+ = strong
If Caution: adjust one lever — retire later • spend less • save more • reduce volatility.
Executive dashboard
How safe is this plan?
Baseline success: 100.0% Strong
How fragile is it under stress?
Enable Reality Check Pack to see stress fragility.
What should I change first?
Run Sensitivity to show the top lever.
⚠️ Depletion Risk Summary (Based on 300 Monte Carlo Simulations)
  • 0.0% chance of running out of money by age 75
  • 0.0% chance of running out of money by age 85
  • 0.0% chance of running out of money by age 90

Monte Carlo results include volatility drag and sequence risk. Return Std Dev (σ) controls how “bumpy” yearly market returns are around your average return. Note: this version uses a single σ across pre- and post-retirement.

Assumes current savings, asset, CPP, expenses, and retirement age remain fixed. Market returns and inflation are randomly varied in each simulation.

⚡ Live What-If
Restore sliders from the current inputs above.
More controls
🧭 Strategy Coach (beta)
Lever (choose one)
🎯 Goals (beta) — extra expenses or inflows

Enabled Name Type When Amount Infl.

Note: goals are merged client-side into asset liquidations (post-tax) before the live update call.


🔄 Compare Saved Scenarios
Scenario snapshot (saved in DB)
Select Scenario A / B above; this shows the key plan inputs saved on each scenario.
Scenario Plan snapshot Assumptions
Waiting for selection…

🔄 Compare
Monte Carlo Simulation

Sensitivity – Dollar Impact (Core Inputs)
Retirement Age – Dollar Impact (Own Scale)
Tax-Aware Retirement Plan
These inputs mirror the top form; they’re tucked away to keep the page clean while reviewing Tax-Aware Visuals.

Applied each retirement year (unless RRIF minimum is explicitly enabled).
Tax Inputs (Tax-lite)
Common inputs (example): OAS Monthly ≈ $800 starting at 65; Clawback threshold ≈ $90,000/yr; Clawback rate 15%; RRIF start age 71. Check Index OAS to grow OAS with inflation. Adjust to your year/province.

Example only: ~$57,375 → ~14.5%; ~$114,750 → ~20.5%; income above that typically ~26-32% depending on province/territory. See simple bracket table (CRA) .
Note: With brackets ON the flat Income Tax Rate (%) is ignored. Use Taxable Drag (%) to include ongoing tax on taxable investment income. RRIF-min taxes still show under “Tax paid from Taxable (overlay)”.

Optional friction on Taxable growth only. Enter manually, or use the helper below and tick Auto-apply to fill this for you. If you want to overwrite the helper, simply uncheck Auto-apply and type your own value here.
Taxable Drag Helper
Stream Allocation (% of taxable) Yield (% on that slice) Effective Tax Rate (%) Contribution to Absolute Drag (%)
Eligible dividends 0.000
Interest (incl. foreign withholding) 0.000
Realized capital gains
Use effective rate (after inclusion), e.g. 50%×30% = 15%.
0.000
Absolute Drag (Σ contributions) 0.000%
Implied Taxable Drag d = Absolute Drag ÷ Return Rate 0.00%
Allocation is the share of your Taxable balance in that stream (total ≤ 100%). Yield is the annual % paid/realized on that slice (e.g., 5% dividend yield; for realized capital gains, enter the % of that slice you expect to realize as gains this year — for example, if you hold $300k of growth stocks and realize $15k of gains in the year, the Yield for that row is 15k ÷ 300k = 5%, even if you sold more than $15k worth of shares). For each row we compute Allocation × Yield × Effective Rate to get that row’s contribution to Absolute Drag (% of the taxable balance). Summing rows gives total Absolute Drag. We then divide Absolute Drag by your Return Rate to get the model’s Taxable Drag (%), which is applied to Taxable growth only.
Example (common inputs): 60% equities @ 2% yield taxed 10% → 0.12%; 40% bonds @ 4% yield taxed 30% → 0.48%. Absolute Drag = 0.60%. With an 8% return, Taxable Drag = 0.60 ÷ 8 = 7.5%.

Allocate your current assets across these three accounts. The total here should match your current portfolio balance.
Total allocated: $0
Pre-retirement contribution split: Each pre-retirement year we deposit savings in this order TFSA → RRSP → Taxable. Amounts below are annual targets; Taxable is auto-computed as Monthly Savings × 12 − TFSA − RRSP.
Tip: If TFSA + RRSP exceeds Monthly Savings × 12, we’ll use TFSA first, then RRSP, and set Taxable to $0 for that year.
Savings grow each pre-retirement year by your Annual Saving Increase Rate (%) and are then split in this order TFSA → RRSP → Taxable.
TFSA cap grows automatically from $7,000 in 2025 by ≈2.1%/yr for 2026+. We apply that cap before RRSP and Taxable in the yearly split.
Tax-Aware Visuals
Parity mode — charts never block the table

Part A — Six-withdrawal ledger: Year-by-year retirement flows by source using your chosen withdrawal order (e.g., Taxable → TFSA → RRSP), with OAS and RRIF-minimum overlays, tax on taxable and RRSP, and ending balances by account. Use the CSV to view all rows.

Age Baseline Assets (100% Taxable) From Taxable From TFSA From RRSP (Gross) RRIF Min % CPP / Support OAS (Gross) OAS Clawback OAS (Net) Tax on Taxable (overlay) Tax on RRSP (overlay) Taxable Drag End Taxable End TFSA End RRSP End Total

Optimize withdrawals (beta)
Next-$1 Analyzer (first retirement year)
RRSP marginal on next $1: —
Taxable marginal on next $1: —
OAS headroom / status: —
Optimizer result (summary)