Code tool

Lump-Sum Growth Projection

Enter a one-time principal, an annual return assumption, and years to estimate compound growth. The separate fee mode adds a contribution after each year’s growth and charges the fee on the opening with-fees balance. All amounts and rates are your scenario inputs, not recommendations. Compare investing the total today with equal payments at each month end over the entire term. Both routes use one constant effective annual return. Idle cash earns nothing; fees, taxes, inflation, market sequences and behaviour are excluded. Negative returns can favour monthly payments; neither route is promised to be superior.

In-browser processingNo account requiredPrivacy details ↗

Inputs stay in your browser; nothing is uploaded.

This is a deterministic estimate using your assumed annual return. It excludes taxes, fees, deposits, withdrawals, and volatility; it is not a prediction or financial advice.

One-time mode preserves principal 0–1e12, return −100%–100%, and integer years 0–100. Its two summary amounts use two decimal display; reports keep actual JavaScript values. Fee mode uses floating-point values without fixed money rounding, so tiny difference residuals can occur. All yearly rows are exported.

Phasing uses P ≥ 0 with no fixed amount ceiling, whole Y = 1–100 and r = −100%–100%. All summary, chart, table and export values retain JavaScript floating-point precision. Overflow, underflow and swallowed positive values are rejected.

CSV text beginning with =, +, - or @ (including preceding whitespace) is prefixed with an apostrophe and quoted; original input remains in TXT.

A QUICK WALKTHROUGH

How to use this tool

  1. Enter the one-time principal, annual return, and years.
  2. Calculate the compound-growth projection locally.
  3. Review future value and estimated gain, then consider the stated limits.
  4. Choose the separate fee mode to compare annual end-year contributions with and without fees.
  5. Choose monthly phasing to compare equal totals and inspect every annual row.

One-time principal model

The calculation is P × (1 + r)^n, where P is the principal, r is the annual return as a decimal, and n is years. It assumes one compounding step per year and no cash flows after the initial principal.

Limits and uncertainty

Values are bounded for stable browser output. The result is an arithmetic projection, not a forecast: actual returns can vary, and taxes, fees, inflation, liquidity, and investment risk are excluded.

Annual fee drag

The separate fee mode adds a contribution after each year’s growth and charges the fee on the opening with-fees balance. All amounts and rates are your scenario inputs, not recommendations. Without fees: V = V × (1 + r/100) + C; with fees: W = W × (1 + r/100 − f/100) + C; annual fee = opening W × f/100.

Inputs and projection report

One-time mode preserves principal 0–1e12, return −100%–100%, and integer years 0–100. Its two summary amounts use two decimal display; reports keep actual JavaScript values. Fee mode uses floating-point values without fixed money rounding, so tiny difference residuals can occur. All yearly rows are exported. Illustrative only: P=1000, C=100, two years, gross 10%, fee 2% gives 1420 without fees and 1374.4 with fees; drag 45.6, fees 43.6 and lost growth 2, before floating-point differences.

Same-total monthly phasing

Compare investing the total today with equal payments at each month end over the entire term. Both routes use one constant effective annual return. Idle cash earns nothing; fees, taxes, inflation, market sequences and behaviour are excluded. Negative returns can favour monthly payments; neither route is promised to be superior. n = 12Y; c = P/n; i = expm1(log1p(r/100)/12); lump = P(1+r/100)^Y; monthly = c × expm1(n log1p(i))/i. At r=0, monthly=c×n; at r=−100%, lump=0 and monthly=c after each full year. Difference=lump−monthly. Phasing uses P ≥ 0 with no fixed amount ceiling, whole Y = 1–100 and r = −100%–100%. All summary, chart, table and export values retain JavaScript floating-point precision. Overflow, underflow and swallowed positive values are rejected.

GOOD TO KNOW

Common questions

Does this include recurring contributions?

One-time mode has no recurring contribution. The separate fee mode accepts a contribution once at each year end. Choose monthly phasing to divide the same total across all months, paid at month end. Zero return ends with the same total. At −100% only the last monthly payment remains. The signed difference may be negative. This constant-rate scenario does not estimate market timing risk.

Is the result investment advice?

No. It is a mathematical estimate based on the return assumption you enter, not a prediction or advice.

How are monthly payments compared?

Choose monthly phasing to divide the same total across all months, paid at month end. Zero return ends with the same total. At −100% only the last monthly payment remains. The signed difference may be negative. This constant-rate scenario does not estimate market timing risk.