The Math Behind Compound Interest — And Why It Matters More Than You Think
Compound interest is one of those concepts that's easy to describe but hard to intuitively grasp. Let's build a calculator and explore what the numbers actually show.
The Formula
A = P(1 + r/n)^(nt) Where:
-
A= final amount -
P= principal -
r= annual interest rate (decimal) -
n= compounding periods per year -
t= years
function compound(principal, annualRate, years, periodsPerYear = 12) { const r = annualRate / 100; const n = periodsPerYear; return principal * Math.pow(1 + r / n, n * years); } Adding Monthly Contributions
Most real-world scenarios involve regular contributions. The formula becomes:
A = P(1 + r/n)^(nt) + PMT × ((1 + r/n)^(nt) - 1) / (r/n) function compoundWithContributions(principal, annualRate, years, monthlyContribution, periodsPerYear = 12) { const r = annualRate / 100; const n = periodsPerYear; const nt = n * years; const rn = r / n; const principalGrowth = principal * Math.pow(1 + rn, nt); const contributionGrowth = monthlyContribution * (Math.pow(1 + rn, nt) - 1) / rn; return principalGrowth + contributionGrowth; } Generating a Year-by-Year Table
function generateYearlyBreakdown(principal, annualRate, years, monthlyContribution) { const rows = []; let balance = principal; const monthlyRate = annualRate / 100 / 12; let totalContributions = principal; for (let year = 1; year <= years; year++) { for (let month = 0; month < 12; month++) { balance = balance * (1 + monthlyRate) + monthlyContribution; totalContributions += monthlyContribution; } rows.push({ year, balance: Math.round(balance), totalContributions: Math.round(totalContributions), totalInterest: Math.round(balance - totalContributions), }); } return rows; } The Rule of 72
A quick mental math trick: divide 72 by the annual interest rate to estimate how many years until your money doubles.
function yearsToDouble(annualRate) { return 72 / annualRate; } // 8% rate → ~9 years to double Compounding Frequency Matters Less Than You Think
Daily vs. monthly compounding has a surprisingly small effect:
| Frequency | $10,000 at 10% for 10 years |
|---|---|
| Annual | $25,937 |
| Monthly | $27,070 |
| Daily | $27,179 |
The difference between monthly and daily is only $109 over 10 years.
Explore compound interest at toolzip.app/tools/compound-calculator.