6

I have a target amount T USD (in today's value, before inflation) that I would like to accumulate over N years. Every month I invest X USD with an expected return of Y%. Expected inflation is Z% per year. How can I calculate whether I am investing enough? If that time is not enough, how long do I need to invest the money? How much should I invest monthly to meet the required deadline?

4
  • 1
    Is T the number of dollars at the end of the period, in which case the inflation figure is irrelevant, or is it a target in today’s dollars, in which case your targeted final balance is T(1+Z)^N?
    – Lawrence
    Dec 3, 2019 at 12:02
  • @Lawrence I don't know where it went (I could have sworn it was in the comments), but T was in today's dollars. I tried to edit that into the question and that got rejected for some reason...
    – Mars
    Dec 5, 2019 at 6:15
  • Found it. OP had originally mentioned that yes, the final balance is T(1+Z)^N. Some overzealous mod must have deleted the original answer, or I'm going crazy ;)
    – Mars
    Dec 5, 2019 at 6:22
  • T in today's dollars
    – Valeriy
    Dec 5, 2019 at 7:24

1 Answer 1

21

If you save x every month, the future value (FV) is

annuity

where

n is the number of months
r is the monthly rate of return

So if Y% return is 10% nominal interest compounded monthly

r = 0.10/12

For example, over 3 months, saving $100 per month

n  = 3
x  = 100
FV = (x (1 + r) ((1 + r)^n - 1))/r = 305.03

Checking the balance at the end of each month long-hand

b1 = 100 (1 + 0.1/12)        = 100.83
b2 = (b1 + 100) (1 + 0.1/12) = 202.51
b3 = (b2 + 100) (1 + 0.1/12) = 305.03

The formula checks out.

So after 10 years, saving $100 per month

n  = 120
x  = 100
FV = (x (1 + r) ((1 + r)^n - 1))/r = 20655.20

Discounting for inflation at, say, 2% per annum

FV/(1 + 0.02)^10 = 16944.46

Your future saving of $20,655 would have the purchasing power of $16,944 today.

To work it backwards, if you want $100,000 in today's value in 10 years

FV = 100000 (1 + 0.02)^10 = 121899.44

r  = 0.10/12
n  = 120

x  = (FV r)/((1 + r) ((1 + r)^n - 1)) = 590.16

You would need to save $590.16 each month.

Compensating for inflation

Inflation can be compensated for by increasing the monthly payments at the same rate as inflation. This makes the payments equal in 'value' terms.

Inflation is usually quoted as an effective annual rate, so with 2% (as before) the monthly rate is obtained like so

i = (1 + 0.02)^(1/12) - 1 = 0.00165158

and the 3 month long-hand calculation becomes

b1 = 100 (1 + 0.1/12)                  = 100.83
b2 = (b1 + 100 (1 + i)) (1 + 0.1/12)   = 202.67
b3 = (b2 + 100 (1 + i)^2) (1 + 0.1/12) = 305.53

This can be expressed as a formula

with inflation

initial payment

Once again, to save $100,000 in today's value over ten years

FV = 100000 (1 + 0.02)^10  = 121899.44
n  = 120
i  = (1 + 0.02)^(1/12) - 1 = 0.00165158
r  = 0.10/12

x  = (FV (i - r))/((1 + r) ((1 + i)^n - (1 + r)^n)) = 542.84

The first payment is $542.84, and the payments increase like so

month 1    x (1 + i)^0   = 542.84
month 2    x (1 + i)^1   = 543.74
month 3    x (1 + i)^2   = 544.63
...
month 120  x (1 + i)^119 = 660.63
4
  • 5
    Note that these formulas assume deterministic returns. If returns are uncertain, you can use simulation to estimate your probability of having enough by a date in the future. Dec 3, 2019 at 16:20
  • 2
    How does this change if you consider inflation in the amount saved?
    – Mars
    Dec 4, 2019 at 2:32
  • 2
    I have added a calculation to raise the payment amounts in line with inflation. Dec 4, 2019 at 10:45
  • 1
    Awesome! Now I just have to figure out what each term actually means. Should probably go back to high school... :p
    – Mars
    Dec 4, 2019 at 11:20

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .