Subject: Analysis - Future and Present Value of Money

Last-Revised: 28 Jan 1994
Contributed-By: Chris Lott (contact me)

This note explains briefly two concepts concerning the time-value-of-money, namely future and present value. Careful application of these concepts will help you evaluate investment opportunities such as real estate, life insurance, and many others.

Future Value

Future value is simply the sum to which a dollar amount invested today will grow given some appreciation rate. To compute the future value of a sum invested today, the formula for interest that is compounded monthly is the following:

    fv = principal * [ (1 + rrate/12) ^ (12 * termy) ]


  • fv = future value
  • principal = dollar value you have now
  • termy = term, in years
  • rrate = annual rate of return in decimal (i.e., use .05 for 5%)

Note that the symbol '^' is used to denote exponentiation (2 ^ 3 = 8).

For interest that is compounded annually, use the formula:

    fv = principal * [ (1 + rrate) ^ (termy) ]

Example: I invest 1,000 today at 10% for 10 years compounded monthly. The future value of this amount is 2707.04.

Note that the formula for future value is the formula from Case 1 of present value (below), but solved for the future-sum rather than the present value.

Present Value

Present value is the value in today's dollars assigned to an amount of money in the future, based on some estimate rate-of-return over the long-term. In this analysis, rate-of-return is calculated based on monthly compounding.

Two cases of present value are discussed next. Case 1 involves a single sum that stays invested over time. Case 2 involves a cash stream that is paid regularly over time (e.g., rent payments), and requires that you also calculate the effects of inflation.

Case 1a: Present value of money invested over time

This tells you what a future sum is worth today, given some rate of return over the time between now and the future. Another way to read this is that you must invest the present value today at the rate-of-return to have some future sum in some years from now (but this only considers the raw dollars, not the purchasing power).

To compute the present value of an invested sum, the formula for interest that is compounded monthly is next:

    pv = ------------------------------
         (1 + rrate/12) ^ (12 * termy)


  • future-sum = dollar value you want to have in termy years
  • termy = term, in years
  • rrate = annual rate of return that you can expect, in decimal

Example: I need to have 10,000 in 5 years. The present value of 10,000 assuming an 8% monthly compounded rate-of-return is 6712.10. I.e., 6712 will grow to 10k in 5 years at 8%.

Case 1b: Effects of inflation

This formulation can also be used to estimate the effects of inflation; i.e., compute the real purchasing power of present and future sums. Simply use an estimated rate of inflation instead of a rate of return for the rrate variable in the equation.

Example: In 30 years I will receive 1,000,000 (a megabuck). What is that amount of money worth today (what is the buying power), assuming a rate of inflation of 4.5%? The answer is 259,895.65

Case 2: Present value of a cash stream

This tells you the cost in today's dollars of money that you pay over time. Usually the payments that you make increase over the term. Basically, the money you pay in 10 years is worth less than that which you pay tomorrow, and this equation lets you compute just how much less.

In this analysis, inflation is compounded yearly. A reasonable estimate for long-term inflation is 4.5%, but inflation has historically varied tremendously by country and time period.

To compute the present value of a cash stream, the formula is:

         month=12 * termy   paymt  * (1 + irate) ^ int ((month - 1)/ 12)
    pv = SUM                ---------------------------------------------
         month=1                (1 + rrate/12) ^ (month - 1)


  • pv = present value
  • SUM (a.k.a. sigma) means to sum the terms on the right-hand side over the range of the variable 'month'; i.e., compute the expression for month=1, then for month=2, and so on then add them all up
  • month = month number
  • int() = the integral part of the number; i.e., round to the closest whole number; this is used to compute the year number from the month number
  • termy = term, in years
  • paymt = monthly payment, in dollars
  • irate = rate of inflation (increase in payment/year), in decimal
  • rrate = rate of return on money that you can expect, in decimal

Example: You pay $500/month in rent over 10 years and estimate that inflation is 4.5% over the period (your payment increases with inflation.) Present value is 49,530.57


Stefan Heizmann offers a calculator for NPV on the web.

If you like using the command line :), two small C programs for computing future and present value on a PC are also available, which may be convenient if you have a large amount of data. See the article Software - Archive of Investment-Related Programs in this FAQ for more information.

Previous article is Analysis: Computing Compound Return
Next article is Analysis: Goodwill
Category is Analysis
Index of all articles