In development2026Design & build — solo

Compound Interest Calculator

A compound-interest calculator that makes investment growth tangible — set a lump sum and a monthly amount, pick a return (or load an index-fund preset), and watch the balance snowball on an interactive chart.

Next.js (App Router)TypeScriptTailwind CSSFramer MotionCustom SVG chart
Visit live site
The calculator — inputs, presets & live growth chart
// the problem

“Compound interest calculator” is one of the most-searched personal-finance terms, yet most of the tools are cluttered, ad-heavy and hard to read — and almost none let you quickly model a realistic index-fund return. There was a clear gap for the cleanest, most intuitive version that still does the maths properly.

// the approach

I put the maths in a pure, unit-tested module that compounds month-by-month and snapshots the balance each year, so the numbers are trustworthy independent of the UI. On top sits a slick single-screen tool: sliders and inputs that update instantly, one-tap index-fund presets (S&P 500, FTSE 100, MSCI World and more) at illustrative long-run rates, and an interactive SVG growth chart that splits contributions from interest with a hover tooltip. Everything runs in the browser, scenarios are shareable via the URL, and it stays readable from two options to balances in the hundreds of millions.

// highlights
  • Lump sum + monthly contributions at any rate, over up to 50 years
  • One-tap index-fund presets (S&P 500, FTSE 100, MSCI World, bonds, cash)
  • Interactive growth chart — contributions vs interest, with hover details
  • Live summary: future balance, total paid in, and interest earned
  • GBP / USD, and shareable links that reopen the exact scenario
  • Provably-consistent maths in a pure, unit-tested module
  • Fully responsive + respects reduced-motion — and not financial advice
// gallery
Responsive on mobile
Responsive on mobile
Full page — calculator, explainer & FAQ
Full page — calculator, explainer & FAQ

Like what you see? Let's build something together.