SoluTech Retirement Planner
Try DemoSign In
RELEASE NOTES

What's New

A running log of features, improvements, and fixes to the Solutech Retirement Planner. Latest version: v0.21.2

  1. v0.21.2LATEST
    • IMPROVEDAnalytics consent now uses Google Consent Mode v2 — defaults deny before gtag.js loads, so no data is sent until the user accepts
  2. v0.21.1
    • FIXEDCustomer Portal button now correctly appears for Pro users in production (was incorrectly gated to staging-only)
  3. v0.21.0
    • NEWLaunch Solutech Pro — upgrade to unlock PDF export and future Pro features via Stripe billing
  4. v0.20.1
    • IMPROVEDClarify Net Worth Tracker categories as non-registered investments versus registered retirement accounts, with Canadian and US examples
    • FIXEDAdd explicit anti-overlap guidance so the same investment balance is not entered in both categories and double-counted
  5. v0.20.0
    • NEWAdd the Net Worth Tracker for recording dated asset and liability snapshots, including investment balances, net worth totals, notes, and snapshot history
    • NEWAdd authenticated Firestore persistence and security rules for creating, editing, listing, and deleting personal net worth snapshots
    • IMPROVEDAdd Net Worth to the shared application navigation and keep the navbar mounted across direct loads, client-side navigation, browser history, and authentication loading states
    • FIXEDPrevent snapshot deletion from remaining stuck in a loading state when the Firestore transport does not resolve promptly
  6. v0.19.2
    • FIXEDReplace the legacy shortfall/on-track banner with the four-band post-simulation plan summary and exact success-rate thresholds
    • FIXEDShare links now copy to the clipboard with two-second feedback, expose a manual-copy fallback, and include share/link UTM attribution
    • FIXEDRun country selection before onboarding for first-time visitors and restore the welcome-back prompt for normal returning-user sessions
  7. v0.19.1
    • NEWCreate /guides index page listing all 5 guide articles with card grid, read times, category badges (Canada/USA/Both), and client-side filter buttons (issue #176)
    • NEWAdd breadcrumb navigation to /guides index and all guide articles for improved UX and SEO
    • NEWAdd inline CTAs mid-article and end-of-article CTAs ("See how this affects YOUR retirement → Run free projection") to guide articles (cpp-calculator-canada, retirement-planning-canada, social-security-401k-usa) with deep-linked dashboard URLs
    • NEWAdd JSON-LD Article structured data to all guide article layouts (ArticleSchemaOrg) and ItemList schema to /guides index page
    • NEWAdd /guides to sitemap.xml with priority 0.8
    • IMPROVEDFire guide_to_planner_click GA4 events on CTA button clicks with source guide slug and location (inline-cta or end-cta)
  8. v0.19.0
    • NEWCountry selector as Step 0 of onboarding (issue #159) — new users see a large two-button "I live in Canada / USA" selector before the main onboarding, persists to localStorage so returning users skip straight to the planner
    • NEWWelcome-back experience for returning users (issue #142) — detect saved inputs in localStorage, show "Continue where you left off" modal with previous plan snapshot (age, retirement age, portfolio, country), optional "Start Fresh" to reset
    • NEWAdd CountrySelectorModal and WelcomeBackModal components with comprehensive test coverage for both new user and returning user flows
    • IMPROVEDExtend Zustand store to track lastSavedDate for session restoration, enabling 30-day window detection for welcome-back prompt
  9. v0.18.6
    • IMPROVEDPost-simulation experience: update success rate band thresholds and result headlines to match issue #175 spec (very_strong >90%, strong 75–90%, fragile 50–74%, at_risk <50%)
    • IMPROVEDRefine contextual next-step suggestions dynamically based on success rate band and country (CA vs US), with emoji icons in headlines
    • NEWAdd comprehensive tests for all four success rate bands covering headlines, colors, actions, and analytics events
  10. v0.18.5
    • FIXEDEmail signup forms now clearly state that personalized plans and financial data are not emailed — updates landing, changelog, post-plan, and checklist entry points
    • FIXEDChecklist modal consent copy no longer falsely implies the checklist will be delivered by email
    • FIXEDPrivacy policy expanded with email vendor (Resend) and data storage details (Firebase Firestore), data retention policy, legal entity information, and CASL compliance statement
    • IMPROVEDUnified recurring marketing email consent checkbox wording across all signup points
    • IMPROVEDRemove raw email and scenario-name PII from GA4 event payloads with comprehensive sanitization tests
    • IMPROVEDMount UTM capture at root layout before application events and append stored UTMs to generated share links without changing retirement-input decoding
    • IMPROVEDEnsure production UI presents Free-only plan with no purchase/sales CTA, staging shows monthly Solutech Pro Beta at CA$19 with test-mode copy and PDF-only entitlement
    • IMPROVEDConfirm authenticated and unauthenticated staging Free users see identical PDF upgrade prompt
    • NEWAdd focused tests for analytics payloads, share attribution, pricing/upgrade behavior, and post-simulation gating
  11. v0.18.4
    • IMPROVEDAdd explicit email-marketing consent, hashed expiring confirmation tokens, resend rotation, unsubscribe suppression, and auditable consent metadata
    • IMPROVEDRequire consent before loading GA4 or Microsoft Clarity, exclude sensitive routes from session recording, and remove query strings and sensitive fields from analytics
    • FIXEDDisable staging email capture with accurate test-site copy and remove claims that personalized plans are emailed
  12. v0.18.3
    • FIXEDUpdate Canadian federal tax, BPA, age amount, OAS recovery, CPP, and registered-account assumptions to official 2026 values
    • FIXEDRemove duplicate CPP/OAS claiming-age adjustments and obsolete proposed capital-gains inclusion treatment
    • IMPROVEDLabel Canadian portfolio projections as pre-tax and withhold unsupported after-tax RRSP comparisons when account allocation and cost basis are unknown
  13. v0.18.2
    • FIXEDFix UpgradePrompt checkout — pass authenticated user UID to Stripe checkout session
  14. v0.18.1
    • NEWAdd Microsoft Clarity session recording (project ID configured)
  15. v0.18.0
    • NEWStripe billing integration — createCheckoutSession, stripeWebhook, and createCustomerPortalSession Cloud Functions for subscription management
    • NEWFeature gates — usePlan hook and UpgradePrompt component gate premium features behind paid plan tier
    • NEWPDF export — PDFExportButton component and lib/pdf-export.ts let users download their retirement plan as a formatted PDF
    • NEWPost-simulation panel — PostSimulationPanel surfaces key insights and next-step CTAs after running a simulation
    • NEWUTM tracking — lib/utm.ts and UtmCapture provider capture and persist UTM parameters for attribution
    • NEWSitemap and robots.txt — app/sitemap.ts and app/robots.ts improve SEO crawlability
    • NEWSEO guide: OAS Clawback Canada — deep-dive article on the OAS recovery tax and how to minimise it
    • NEWSEO guide: RRSP vs TFSA Canada — comprehensive comparison guide for choosing between registered accounts
  16. v0.17.0
    • NEWEmail capture with lead magnet — CASL-compliant double opt-in modal (Canada only, guests, after 3 inputs) offering the Canada Retirement Readiness Checklist via Firebase Cloud Functions + Resend
    • NEWCanada Retirement Readiness Checklist page (/checklist) — 26 interactive items across 6 areas with progress score, printable/PDF-saveable, persists to localStorage
    • NEWEmail confirmation page (/confirm-email) — handles token-based CASL double opt-in flow after clicking confirmation email link
    • NEWFirebase Cloud Functions (Gen 2) — emailSignup and confirmEmail callables for server-side email delivery via Resend with RESEND_API_KEY in Firebase Secret Manager
  17. v0.16.0
    • NEWTrust bar on landing page hero — three privacy/value pills (100% Private, Free Forever, No Login Required) replacing the single-line note below the CTA
    • NEWAffiliate panel (Recommended Resources) — collapsible section in the dashboard and all three guide pages, showing country-appropriate partners (Wealthica, Questwealth, Wealthsimple for CA; Empower, Fidelity for US) plus recommended books for all users
    • IMPROVEDAnalytics — GA4 event tracking expanded with typed helpers: trackSimulationRun (fires once per session on first slider interaction), trackEmailSignup, trackGuideRead, trackAffiliateClick, trackUpgradePromptSeen
  18. v0.15.0
    • NEWPricing page at /pricing — monthly/annual billing toggle, three-tier comparison (Free / Pro / Advisor), Monte Carlo preview strip, FAQ section (Wealthica data safety, RRSP meltdown, provinces covered), and responsive mobile layout
    • IMPROVEDLanding page header now includes a Pricing nav link
  19. v0.14.2
    • IMPROVEDMy Scenarios modal now sorts saved scenarios by most-recently-modified first, with last-modified dates displayed below each scenario name for clarity
  20. v0.14.1
    • FIXEDFinancial accuracy corrections across the three new RRSP/pension articles: spousal RRSP contribution age ("71 or younger"), the 2026 OAS clawback threshold (~$95,323), RRSP withdrawal pension-splitting rules, the updated $60,000 Home Buyers' Plan limit, and the age-90 RRIF minimum factor (~11.92%)
  21. v0.14.0
    • NEWNew article: "How RRSP Withdrawals Are Taxed in Retirement" — withholding tax rates, RRIF minimums, and the drawdown order that minimizes lifetime tax
    • NEWNew article: "Pension Income Splitting in Canada: A Couple's Tax Strategy" — what qualifies, the age-65 rule, OAS clawback impact, and a worked example
    • NEWNew article: "Spousal RRSP Strategy: How Couples Cut Retirement Tax" — the deduction mechanics, the three-year attribution rule, and when it still beats pension splitting
  22. v0.13.0
    • NEWWeekly Articles section on the landing page — shows the 3 most recent blog posts with category, read time, and direct links
    • NEWNew article: "TFSA Contribution Room 2026: How Much Can You Contribute?" — covers the $7,000 limit, checking room, over-contribution penalties, and retirement strategy
    • NEWNew article: "When Should I Take OAS?" — break-even analysis, 7.2%/year deferral, clawback rules, and four CPP + OAS coordination strategies
    • NEWNew article: "CPP Disability and Retirement: What Happens When You Turn 65" — CPPD-to-CPP conversion, RDSP, TFSA, and GIS planning for Canadians with a disability
  23. v0.12.0
    • NEWThree new long-form blog articles: "How Much Do You Need to Retire at 55 in Canada?", "Social Security vs CPP: Which Pays More?", and "RRSP vs 401(k): The Cross-Border Worker's Guide"
    • NEWShared CalculatorCTA component with persona-specific pre-filled calculator URLs on every article
    • IMPROVEDAll 5 existing blog posts now have pre-filled calculator CTAs linking into the planner with relevant age and country defaults
    • IMPROVEDAll 3 guide pages updated with pre-filled calculator CTAs and guide-specific GA4 attribution
  24. v0.11.0
    • NEWPost-plan email capture banner — appears after you personalise 3+ inputs (#141)
    • NEWSEO metadata added to /dashboard, /reports, and /scenarios pages (#139)
    • NEW/reports and /scenarios added to sitemap (#139)
    • IMPROVEDLanding page hero copy now leads with "free retirement calculator for Canada and the USA" for better search relevance (#140)
    • IMPROVEDDashboard chart components now load lazily — reduces initial JS bundle (#140)
  25. v0.10.1
    • NEWSaved scenarios can now be overwritten — "Update existing" mode in the Save dialog replaces a chosen scenario in-place (closes #138)
    • FIXEDDashboard navbar link is now clickable from Reports and Scenarios pages
  26. v0.10.0
    • NEWReports page: shareable multi-section plan summary with key numbers, portfolio projection, income breakdown, and print/PDF (closes #132)
    • NEWReports link in navbar now active
  27. v0.9.9
    • NEWDashboard tab bar now groups 9 charts into Accumulation / Retirement / Risk categories (closes #131)
  28. v0.9.8
    • NEWScenarios page at /scenarios with side-by-side comparison guide — Scenarios nav link is now active (#133)
    • NEWDark/light mode toggle added to landing page header (#134)
    • IMPROVEDTestimonials expanded from 2 to 4, covering Canadian and US users across different life stages (#135)
  29. v0.9.7
    • IMPROVEDLanding page FAQ converted to collapsible accordion — reduces scroll depth while keeping all content accessible (#128)
  30. v0.9.6
    • NEWCustom 404 page with brand header, footer, and navigation back to the planner (#136)
  31. v0.9.5
    • IMPROVEDLanding page feature grid expanded from 3 to 6 cards — now surfaces Sequence of Returns Risk, RRSP/401(k) vs Taxable, and Net Worth Projection with better descriptions (#127)
  32. v0.9.4
    • IMPROVEDCanonical domain updated to solutechsoftware.com across all OG metadata, sitemap, robots.txt, and PDF QR code
    • NEWSearch Console verification added for solutechsoftware.com (second verification tag)
  33. v0.9.3
    • NEWGoogle Search Console verification and sitemap.xml updated with all blog, guide, and core routes
    • NEWGA4 events: plan_run (fires once per session at 3+ touched inputs), share_link_copied, login_click (navbar + landing)
  34. v0.9.2
    • NEWBlog section at /blog — 5 SEO-targeted articles on CPP, OAS clawback, RRSP vs TFSA, Monte Carlo simulation, and how much to retire in Canada
    • NEWPer-article JSON-LD Article schema, OG/Twitter meta, and static pre-rendering via generateStaticParams
  35. v0.9.1
    • FIXEDScenarios nav item no longer routes to the changelog — it is now disabled (coming soon) consistent with the Reports nav item
  36. v0.9.0
    • NEWAdded Guides & Resources section to the landing page linking to CPP Calculator, Retirement Planning in Canada, and Social Security & 401(k) guides — improves discoverability and internal SEO linking
  37. v0.8.7
    • NEWAdded deploy-orchestrator, deploy-firebase, and deploy-github-pages sub-agents plus /deploy and /deploy-status slash commands for automated, log-free deployments
  38. v0.8.6
    • FIXEDProperty Value was not restored when loading a saved scenario or opening a shared link — the field was missing from the share link decoder
  39. v0.8.5
    • NEWNet Worth chart now includes home equity — enter your property value and expected appreciation rate to see your full net worth, not just your investment portfolio
  40. v0.8.4
    • IMPROVEDInternal: added component-level tests for HelpModal, Navbar, and OnboardingModal covering the recent dark-mode and disclaimer fixes
  41. v0.8.3
    • IMPROVEDNavbar "Reports" link is now correctly marked as coming soon (disabled, with a tooltip) rather than redirecting to Release Notes — Reports will be a PDF export of your retirement plan
  42. v0.8.2
    • FIXEDHelp modal background was transparent in dark mode — text was illegible against the dark dashboard behind it. Now renders with a solid opaque background.
  43. v0.8.1
    • IMPROVEDLegal disclaimer expanded across all pages — footers now include the full statement: results are illustrative, past performance does not guarantee future results, and a prompt to consult a qualified financial advisor
    • IMPROVEDDisclaimer also appears in the onboarding modal before you interact with any projections, and adjacent to the Monte Carlo success rate output
    • NEWEmail signup for feature announcements now persisted to the server — you will receive notifications when new features ship
  44. v0.8.0
    • NEWWelcome card for new users who dismiss onboarding — offers a one-click path back to the 3-question setup instead of a blank dashboard
    • NEWReusable "How we calculate this" panel below the charts — lists simplifications (tax brackets, capital gains, SWR, inflation) in plain English
    • NEWClick the "?" next to any chart for plain-English explanations of Monte Carlo, success rate, and more.
    • NEWScroll indicator on the chart tab bar at tablet widths — a fading chevron shows when more tabs are hidden to the right
    • IMPROVEDSlider drags no longer run the full Monte Carlo + projection on every tick — a short 120 ms debounce keeps the thumb buttery-smooth while the chart still settles instantly on release
    • IMPROVEDMonte Carlo chart now shows a "Recomputing 1,000 simulations…" spinner while the model is re-running after an input change
    • IMPROVEDOn-track / shortfall banner now full-width with a coloured bar, larger icon, and two-line explanation — far easier to spot than the old badge
    • IMPROVEDControl panel inputs now collapse into tappable sections on mobile, removing the long scroll before you can reach the chart
    • IMPROVEDShare button auto-copies the URL to your clipboard and confirms with a "Copied!" flash — with a graceful fallback if clipboard permission is blocked
    • IMPROVEDText inputs, selects, and number fields now share a single style across the contact form, onboarding, and control panel — consistent borders, focus ring, and dark mode treatment
    • IMPROVEDOnboarding inputs are now easier to read on dark screens.
    • IMPROVEDNavbar "Scenarios" and "Reports" placeholder links now route to the release notes page so you can see what's shipped and what's coming next
    • IMPROVEDChart terminology tooltips are wired to screen readers via aria-describedby and close on Escape or outside click
  45. v0.7.9
    • FIXEDSelect dropdowns in dark mode (Live Until, chart tabs, contact form) now render with a dark popup in Chrome — options are fully readable
    • FIXEDCPP early-claiming calculation was incorrectly increasing the benefit instead of reducing it — now correctly applies up to −36% for age 60 claiming
    • FIXEDContact form Turnstile security check no longer conflicts with Web3Forms — form submissions now go through correctly
    • FIXEDRange slider thumb now shows a visible focus ring on keyboard navigation (was invisible before)
    • IMPROVEDDark mode stat card label contrast lifted from 2.5:1 to 6.4:1 — meets WCAG AA accessibility standard
    • IMPROVEDAll icon-only buttons (Help, theme toggle, sign out, scenario actions) now have accessible labels for screen readers
    • NEWPress ? anywhere on the dashboard to open the Help panel
    • NEWHelp panel now includes a Keyboard Shortcuts reference table
    • NEWJest unit test suite added — 139 tests at 100% coverage across all calculation modules
  46. v0.7.8
    • NEWGuide page: CPP Calculator for Canada — explains CPP claiming ages 60–70 with comparison table and FAQ (/guides/cpp-calculator-canada)
    • NEWGuide page: Retirement Planning Canada — covers CPP, OAS, RRSP, TFSA, and withdrawal sequencing (/guides/retirement-planning-canada)
    • NEWGuide page: Social Security & 401(k) USA — covers claiming strategy, 401k vs Roth IRA, and RMDs (/guides/social-security-401k-usa)
    • IMPROVEDSitemap updated with all guide pages and lastmod dates
  47. v0.7.7
    • FIXEDUS portfolio projection now deducts estimated federal and state income tax on traditional 401k/IRA withdrawals — previously showed a more optimistic balance than reality
    • FIXEDMonte Carlo success rate for US users now accounts for withdrawal taxes, giving a more accurate probability of not outliving your savings
    • FIXEDSequence-of-returns scenarios for US users now include tax on withdrawals for consistent results across all projection views
  48. v0.7.6
    • IMPROVEDLanding page headings upgraded to semantic H2/H3 elements for better search engine visibility
    • NEWFAQ section added to landing page — common questions about CPP, OAS, Social Security, 401(k), and Roth IRA
    • IMPROVEDContact Us link in footer now routes to the internal /contact page instead of an external URL
    • IMPROVEDSitemap updated to include /changelog and /contact with lastmod dates
    • NEWPage-specific titles and meta descriptions added to /changelog and /contact for better search indexing
  49. v0.7.5
    • FIXEDWithdrawal rate chart no longer overstates rates when inflation is enabled (was dividing nominal withdrawals by real portfolio values)
    • FIXEDRetirement Runway chart now correctly accounts for Social Security income for US users
    • FIXEDRetirement Runway now uses claiming-age-adjusted CPP/OAS amounts (not the base input amounts)
    • FIXEDContributions & Returns chart now clearly labelled as an illustrative estimate, not real transaction history
    • FIXEDNet Worth chart now shows negative net worth when mortgage exceeds portfolio (previously floored at zero)
    • FIXEDSequence of returns crash now applied before withdrawals for more accurate impact modelling
    • IMPROVEDPortfolio chart now shows "values in today's dollars" note when inflation adjustment is enabled
    • IMPROVEDMonte Carlo stat labels now show the age at which terminal values are measured (e.g. "Median at Age 85")
    • IMPROVEDMonte Carlo chart notes nominal dollar basis when inflation is enabled (different basis from projection chart)
    • IMPROVEDWithdrawal rate reference line now uses your chosen safe withdrawal rate instead of a hardcoded 4%
    • NEWIncome sources chart (US) now shows Roth withdrawals as a separate tax-free bar
    • IMPROVEDRMD bar in income sources chart relabelled as "RMD Surplus (forced withdrawal)" to avoid confusion with income
    • IMPROVEDRRSP/401k chart clarifies that growth lines show pre-tax accumulated values; after-tax figures are in the stats panel
  50. v0.7.4
    • FIXEDCanadian federal tax brackets corrected to 2025 CRA rates (was using wrong breakpoints)
    • FIXEDAge amount tax credit now applied for Canadian retirees aged 65+
    • FIXEDCPP and OAS claiming ages now correctly clamped to valid ranges (CPP: 60–70, OAS: 65–70)
    • FIXEDSpousal Social Security now correctly applies no delayed credits and the proper early-reduction schedule
    • FIXEDUS state tax now applied to income after standard deduction (was applied to gross income)
    • FIXEDMonte Carlo simulation upgraded to lognormal return model — eliminates volatility drag overstatement
    • FIXEDUS withdrawal order corrected: traditional 401k/IRA drawn first, Roth preserved last
    • FIXEDExtra income now inflation-adjusted in sequence-of-returns scenarios
  51. v0.7.3
    • NEWLanding page now shows testimonials and a "How It Works" walkthrough
    • IMPROVEDHero CTA copy updated to be outcome-focused ("See Your Retirement Plan")
    • IMPROVEDBottom CTA differentiated: "Run Your Full Retirement Projection"
    • NEWRelease Notes page at /changelog with full version history
  52. v0.7.0
    • NEWAdded USA mode: Social Security income, 401(k) and IRA support
    • NEWCountry toggle (🍁 Canada / 🦅 USA) on the dashboard — switches all inputs, charts, and tax rules instantly
    • IMPROVEDMonte Carlo simulation increased to 1,000 scenarios for more reliable success rates
    • IMPROVEDCharts now update instantly as sliders are adjusted (live projections)
    • FIXEDCPP estimate was slightly overstated for users born before 1958
    • FIXEDMobile layout overlap on the income sources panel
  53. v0.6.0
    • NEWOAS deferral calculator — compare collecting at ages 65 through 70 side by side
    • NEW"Notify me" email signup for feature announcements
    • IMPROVEDWithdrawal rate slider now supports 2%–6% range (previously 3%–5%)
    • FIXEDDemo mode reset button did not clear spouse fields correctly
  54. v0.5.0
    • NEWSpouse / partner income support — model household retirement income together
    • NEWRRSP and TFSA balance fields with projected growth
    • IMPROVEDSuccess probability now shown as both a percentage and a colour gauge
    • FIXEDPage crash on Safari when opening the Monte Carlo chart
  55. v0.4.0
    • NEWMonte Carlo simulation — initial release with 500 randomised market scenarios
    • NEWCPP/OAS auto-estimate based on age and contribution history
    • IMPROVEDProjection chart redesigned with clearer axis labels and a sharper layout
    • REMOVEDLegacy "Simple Mode" removed — all features consolidated into the main dashboard
  56. v0.3.0
    • NEWPortfolio growth chart with adjustable rate of return
    • IMPROVEDDashboard layout reorganised into collapsible sections for easier navigation
    • FIXEDInflation slider was not affecting nominal projections correctly
  57. v0.2.0
    • NEWInflation adjustment toggle — enable to see projections in real (inflation-adjusted) dollars
    • NEWRetirement age slider expanded to support ages 50–75
    • FIXEDVarious calculation edge cases for early retirement scenarios
  58. v0.1.0INITIAL RELEASE
    • NEWBasic retirement projection calculator
    • NEWAnnual savings and current portfolio input
    • NEWSimple projection chart to target retirement age

Get notified when we release updates

Recurring release and retirement-planning updates. We do not email your personal plan or financial data. Confirm by email; unsubscribe anytime.