← Back to the chart

How the forecast works

You enter balances on dates, the site works out your saving pace and extends it forward to your goal. Every formula is spelled out below, with one worked example running through the whole page.

The input

Each entry is a pair: a date and the balance you had on that day. Inside the calculation the date becomes a number x, the count of days since your first entry, and the balance is y. The target amount is A.

The worked example on this page uses seven entries and a target of 3 000 000:

DateBalancex, days
1 March 2026400 0000
1 April 2026560 00031
3 May 2026690 00063
1 June 2026900 00092
1 July 20261 010 000122
2 August 20261 200 000154
1 September 20261 350 000184

Step 1. Your saving pace

The pace k is how much is added per day. It can be estimated three ways, and the “Forecast method” list switches between them.

Trend through every point (regression)

The default. A straight line is drawn through all the points so that the sum of squared distances from the points to the line is as small as possible. This is the method of least squares:

k = Σ(xi)(yiȳ) / Σ(xi)2

where and ȳ are the mean day and the mean balance. A single spike or dip barely moves the result, because the line accounts for every point at once. In the example k ≈ 5 191 per day, roughly 158 000 a month.

Average pace: first → last

The simplest estimate: the difference between the last and first balance divided by the number of days between them.

k = (ylastyfirst) / (xlastxfirst)

The entries in between are ignored. In the example: (1 350 000 − 400 000) ÷ 184 ≈ 5 163 per day, about 157 000 a month. Handy when you have few entries, but sensitive to what exactly the two outermost points were.

Pace over the last 6 months

The same regression, but only over entries from the last 182.6 days before your latest one. If your income went up, or your spending did, this reflects the new pace sooner, because older entries no longer drag the line back. It needs at least two entries inside that half-year.

Step 2. The forecast line

Whichever method you pick, the forecast line always starts from your latest actual point (x0, y0), not from wherever the regression line would like to pass. That way the forecast continues your real balance rather than a theoretical one.

y(x) = y0 + k · (xx0)

On the chart this is the amber dashed line. Below the chart the same line is printed as y = k·x + b, where b = y0k·x0.

Step 3. The goal date

The goal is met where the line crosses the horizontal y = A:

xgoal = x0 + (Ay0) / k

In the example: (3 000 000 − 1 350 000) ÷ 5 191 ≈ 318 days after 1 September 2026, so around 15 July 2027. If k ≤ 0 your savings are not growing and no date is produced.

Step 4. Deposit interest

If the money sits in a deposit or a savings account, interest is added to your contributions, and that interest then earns interest of its own. That is compounding. The site models it period by period: monthly, quarterly, yearly or daily, depending on how often your bank pays out.

Let the rate be r % per year and the number of payouts per year m. The rate for one period is:

i = r / 100 / m

The contribution for a period comes from the same pace k as the straight line, so the two curves stay comparable:

c = k · 365.25 / m

Then the balance is recalculated period after period:

Bn+1 = Bn · (1 + i) + c,   B0 = y0

The blue dashed curve on the chart is the sequence Bn. The crossing point inside a period is found linearly: if Bn < ABn+1, the fraction of the period is (ABn) ÷ (Bn+1Bn).

Example with a 16 % rate compounded monthly: i = 16 ÷ 100 ÷ 12 ≈ 1.33 % a month. In the first month the balance of 1 350 000 earns 18 000, plus a contribution of 158 000. The goal of 3 000 000 is reached around 29 May 2027, 47 days earlier than without interest.

The model assumes the rate does not change, interest is never withdrawn and contributions arrive evenly. Real deposits may restrict top-ups, and savings accounts often have a floating rate. Tax on interest income is not taken into account.

Effective rate

Because of compounding the actual yearly return is higher than the quoted rate. The effective rate shows what the deposit brings over a year once interest earns interest:

reff = ((1 + i)m − 1) · 100 %

At 16 % compounded monthly the effective rate is 17.23 %.

“Of that, interest”

The tile under the chart shows how much of the distance to the goal is covered by interest rather than by your own contributions: the current balance and all contributions up to the goal date are subtracted from the goal.

interest = Ay0k · (xgoalx0)

Step 5. Inflation

You set the target amount A in today's money. If you enter inflation of π % a year, the goal starts growing with prices, and the chart looks for a crossing with a rising line rather than a flat one:

A(t) = A · (1 + π/100)t / 365.25

where t is days after your last entry. For the straight line the equation y0 + k·t = A(t) is solved numerically: a monthly sweep first, then bisection. For the deposit, the “balance ≥ goal” test is made against the rising goal at every period.

In the example, with 8 % inflation the goal is worth 3 196 305 by 28 June 2027, so the date with a deposit moves from 29 May to 28 June 2027, and without a deposit from 15 July to 30 August. The tile “Goal with inflation on that date” shows what you actually have to save in nominal terms.

If inflation outruns your saving pace, the goal runs away faster than you approach it and no date is produced. That is an honest signal to revisit the amount or the deadline.

Step 6. The reverse calculation

The “Reach it by” field sets a date T, and the site works out the monthly contribution needed to hold A(tT) by then, where tT is the days from your last entry to T.

Without a deposit it is linear:

monthly = (A(tT) − y0) / tT · 30.4375

With a deposit, the balance after n = tT ÷ (365.25 / m) periods with a constant contribution c per period is:

B = y0 · (1 + i)n + c · ((1 + i)n − 1) / i

The balance depends linearly on c, so the required contribution follows directly, with no searching:

c = (A(tT) − y0 · (1 + i)n) / (((1 + i)n − 1) / i)

and is converted to a monthly figure by multiplying by 30.4375 ÷ (365.25 / m). In the example, to make it by 1 June 2027 with a 16 % deposit and 8 % inflation you need 175 180 a month, which is 17 171 more than your current pace. That gap is the real output of the reverse calculation: it shows how far the plan is from reality.

The number of periods n here can be fractional, so the answer may differ from the step-by-step simulation by up to one compounding period. For planning a contribution that difference does not matter.

What the chart shows

The line above the chart gives the headline: the date and how long it takes, plus the required monthly contribution when you set a target date. The big percentage shows how much of the goal you have reached as of your latest entry. The “Download CSV” button under the table saves your entries in a file that opens in Excel or Google Sheets.

Limits of the method

How to get a more honest forecast

  1. Record your balance on the same day each month, for example right after payday.
  2. Enter the full balance across all your savings accounts, not just the amount you added this month.
  3. If your pace has clearly changed, switch to “Pace over the last 6 months”.
  4. Enter the deposit rate that actually applies right now, and check it again whenever the deposit rolls over.
Chart