Index

Why a Coin Today Beats a Coin Next Year - present value and discounting

Compound Interest The 8th Wonder
Compound Interest The 8th Wonder · Open board

The Compound Interest board draws money growing forward, the hockey stick and the Rule of 72. This lesson runs the same engine backwards, to ask what money promised later is worth today.

Education, not financial advice.

Before you start. One idea from Compound Interest, the 8th Wonder: money left to grow earns interest on its interest, so 1,000 at 5% becomes 1,050 after a year and 1,102.50 after two, not 1,100. (Fold a Paper to the Moon is the fun version of the same doubling.) From Nineteen and Six - where the water goes you need only the tank: water in, water out, and a surplus left over.

1202, Pisa: a soldier whose 300 bezants started arriving late

Around 1200, a young man from Pisa called Leonardo came home from North Africa. His father had been an official for the Pisan merchants in Bugia, a trading port in what is now Algeria, and Leonardo had grown up watching merchants who used Hindu-Arabic numerals, the digits 0 to 9, to do sums that Roman numerals made miserable. In 1202 he finished a book teaching Europe to calculate that way, the Liber Abaci, the Book of Calculation. We know him today as Fibonacci, mostly for a puzzle about rabbits.

The rabbits are not the useful part. Most of the book is merchants’ problems: converting currencies, splitting profits between partners, interest on loans. In 2004, the Yale finance historian William Goetzmann went through those problems and argued that one of them, “On a Soldier Receiving Three Hundred Bezants for his Fief”, is the first known example of a method every bank and every company still uses.

The problem goes like this. A king pays a soldier 300 bezants a year, a bezant being a gold coin, in four payments of 75, one every quarter. Then the king changes the deal: the same 300, but all at once, at the end of the year. Same total. Has the soldier lost anything? Fibonacci says yes, and works out how much, given that the soldier could have earned 2 bezants for every 100 each month on money in hand.

To see why the answer is yes, put the soldier’s coins in a tank.

Time value: why water now beats water later

Money in your tank today can go into the reservoir on the Tank board, the one that refills from its own level. That refilling is compounding: the water earns more water, and the new water earns too. So a coin in hand today is not just a coin. It is a coin plus everything it could grow into between now and later.

A coin that arrives next year misses all of that growth. It is the same coin when it arrives, but it spent the year outside the reservoir. That is the whole idea, and it has a plain name: the time value of money. Money now is worth more than the same amount later, because money now can be put to work in the meantime. Nothing about inflation or risk is needed for it to be true, though both make it stronger.

Look at the soldier through it. Under the old deal, his first 75 bezants arrived after three months and could earn for the other nine. Under the new deal, nothing arrives until the year is over, so nothing earns at all. Same 300 coins, less growth, less value. The time value of money is exactly what the king took.

flowchart LR
  A["75 arrives at month 3"] -->|"earns for 9 months"| E["end of year"]
  B["75 arrives at month 6"] -->|"earns for 6 months"| E
  C["75 arrives at month 9"] -->|"earns for 3 months"| E
  D["75 arrives at month 12"] -->|"earns for 0 months"| E
  N["new deal: 300 at month 12"] -->|"earns for 0 months"| E

Present value: compounding run backwards

How do you put a number on it? Run the reservoir in reverse. Compounding asks: if I put 1,000 in today at 5% a year, what do I have in two years? 1,000 times 1.05 times 1.05, which is 1,102.50. That forward number is what the money will grow to.

Now turn the question around. Someone promises you 1,100, paid two years from now. What is that promise worth today? Ask how much you would have to put in the reservoir today to have exactly 1,100 in two years. Divide instead of multiply: 1,100 divided by 1.05, divided by 1.05 again, which is 997.73.

That number, what money promised later is worth today, is its present value. Getting it, by dividing by the growth for every period of waiting, is called discounting. Discounting is nothing but compounding run backwards. If you can do one, you can do the other.

flowchart LR
  T["997.73 today"] -->|"x 1.05"| Y1["1,047.62 in one year"]
  Y1 -->|"x 1.05"| Y2["1,100 in two years"]
  Y2 -.->|"divide by 1.05 twice: discounting"| T

So the promise of 1,100 in two years is worth slightly less than 1,000 in your hand right now, even though 1,100 is the bigger number. Time ate 102.27 of it. (These numbers are teaching values, chosen for easy arithmetic, and carry no currency.)

The discount rate: the price of waiting

That last answer hangs on one choice: 5%. Change it and the answer changes. At 3%, the promised 1,100 is worth 1,036.86 today, more than 1,000, so the promise wins. At 7% it is worth 960.78, so the cash today wins. The two are worth the same at a rate of about 4.88%.

The rate you divide by is called the discount rate, and it is the price of waiting. It is whatever your money could reliably earn instead, over the same time, with the same kind of risk. If your best alternative is a savings account paying 3%, waiting is cheap and promises look good. If you are paying 20% on a debt, waiting is expensive: money today could pay down that debt, and a promise of money later is worth far less to you.

flowchart TD
  P["1,100 promised in two years"] -->|"discount at 3%"| A["1,036.86 today: beats 1,000 cash"]
  P -->|"discount at 4.88%"| B["1,000.00 today: a tie"]
  P -->|"discount at 7%"| C["960.78 today: loses to 1,000 cash"]

This is why two sensible people can look at the same offer and disagree. They are not disagreeing about arithmetic. They have different discount rates, because they have different alternatives. The discount rate is not a fact about the offer. It is a fact about you.

Back to the soldier: 259 against 237

Now Fibonacci’s soldier, with his own numbers. Two bezants per hundred each month is six per hundred a quarter, which Fibonacci writes as “53 for 50”: every 50 coins become 53 after one quarter. That is the discount rate, 6% a quarter.

Discount the old deal. The first 75 is one quarter away, the second two quarters, and so on. Divide each by 1.06 once, twice, three times, four times and add them up: the four quarterly payments are worth 259.88 bezants today. Goetzmann reports Fibonacci’s figure as 259 and change. Now the new deal: one payment of 300, four quarters away, divided by 1.06 four times, is worth 237.63 today.

The king’s change cost the soldier about 22 bezants of value, without touching a single coin of the total. It is the first written example anyone has found of what Goetzmann calls “ranking different cash flow streams based upon their present value”: two contracts, same total, different timing, and a number that says which is better.

Every comparison of a loan, a pension, a salary offer or an investment in the rest of this track is that move. Bring each stream of money back to today with one discount rate, then compare like with like.

There is one catch. Present value says water today is worth more than water later, so it rewards putting it to work. But some water you cannot put to work at all, because you may need it tomorrow. That is the next lesson.

You now know

  • Money now is worth more than the same money later, because money now can earn in the meantime: the time value of money.
  • The present value of money promised later is what you would have to put away today to have that amount then.
  • Discounting finds it by dividing by the growth for each period of waiting; it is compounding run backwards.
  • The discount rate is the price of waiting, set by what your money could earn instead, so it differs from person to person and changes which offer wins.
  • Fibonacci’s soldier lost about 22 bezants of value, 259.88 against 237.63, when the same 300 was paid at year end instead of quarterly: timing alone.

Stop here if you want. What follows is the same idea in numbers: the soldier’s sum, two offers compared at three rates, and the rate where they tie.

Second read: present value in numbers

The formula

The present value of an amount C arriving t periods from now, at a discount rate r per period:

PV = C / (1 + r)^t

In English: divide the promised amount by one-plus-the-rate, once for every period you have to wait.

For a stream of payments, discount each one by its own wait and add them up. The number 1 / (1 + r)^t is the discount factor: the fraction of each coin that survives the wait. At 5% a year:

waitdiscount factor
1 year0.952
5 years0.784
10 years0.614
20 years0.377
30 years0.231

A promise thirty years out keeps less than a quarter of its face value at 5%. This is why long promises are so sensitive to the rate: a small change in r is raised to the thirtieth power.

The soldier and the two-year promise, run

Run in python3 on 2026-10-17:

g = 53/50
quarterly = sum(75 / g**k for k in range(1, 5))
yearend = 300 / g**4
print(f"four quarterly payments of 75, worth today: {quarterly:.2f}")
print(f"one payment of 300 at year end, worth today: {yearend:.2f}")
print(f"year-end payment that would be as good as the quarters: {75*sum(g**k for k in range(4)):.2f}")
for r in (0.03, 0.05, 0.07):
    print(f"rate {r:.0%}: 1,100 in two years is worth {1100/(1+r)**2:.2f} today; 1,000 today grows to {1000*(1+r)**2:.2f}")
print(f"break-even rate: {(1100/1000)**0.5-1:.4%}")
four quarterly payments of 75, worth today: 259.88
one payment of 300 at year end, worth today: 237.63
year-end payment that would be as good as the quarters: 328.10
rate 3%: 1,100 in two years is worth 1036.86 today; 1,000 today grows to 1060.90
rate 5%: 1,100 in two years is worth 997.73 today; 1,000 today grows to 1102.50
rate 7%: 1,100 in two years is worth 960.78 today; 1,000 today grows to 1144.90
break-even rate: 4.8809%

The third line is the fair version of the king’s change: to leave the soldier as well off, the year-end payment would have to be 328.10, not 300. Notice also the two ways of asking the same question agree: at 5%, the promise is worth 997.73 today, and 1,000 today grows to 1,102.50, more than the 1,100 promised. Either way, the cash wins at 5%.

Two offers, three rates

Offer A pays 10,000 today. Offer B pays 3,000 at the end of each of the next four years, 12,000 in total. Teaching values; the shape of the answer is what matters.

def pv(flows, r):
    # flows[t] arrives at the end of year t (t = 0 is today)
    return sum(cf / (1 + r)**t for t, cf in enumerate(flows))

a = [10000]
b = [0, 3000, 3000, 3000, 3000]
for r in (0.02, 0.05, 0.08):
    print(f"at {r:.0%}: offer A {pv(a, r):9.2f}   offer B {pv(b, r):9.2f}")
lo, hi = 0.0, 1.0
for _ in range(60):
    mid = (lo + hi) / 2
    lo, hi = (mid, hi) if pv(b, mid) > 10000 else (lo, mid)
print(f"the two are equal at {lo:.4%}")
at 2%: offer A  10000.00   offer B  11423.19
at 5%: offer A  10000.00   offer B  10637.85
at 8%: offer A  10000.00   offer B   9936.38
the two are equal at 7.7138%

The 2,000 extra in offer B is worth having only if your discount rate is under about 7.7%. The search at the end, halving the interval sixty times until the two values meet, finds the rate at which a stream is worth exactly its price. That rate has a name, the internal rate of return, and it is how “this pays 7.7% a year” claims are worked out.

Try it

Take two real-looking offers, for example a lump sum against a series of payments, and write them as two lists in the pv function above. Find the rate at which they tie. Then ask yourself what your own money could reliably earn instead: if that is below the tie rate, the stream is worth more to you, and if above, the lump sum is.

The lab on the Compound Interest board, the-fee-that-compounds, runs compounding forwards with a fee taken out. Every number it shows can be brought back to today by dividing by (1 + r)^t.

Go deeper

  • William N. Goetzmann, “Fibonacci and the Financial Revolution”, NBER Working Paper 10352, March 2004. The soldier problem is in the section “Present Value Analysis”.
  • Laurence Sigler’s English translation, Fibonacci’s Liber Abaci (Springer, 2002), is the edition Goetzmann quotes.
Hint for the next question

“53 for 50” means every 50 coins become 53 in one quarter.

Retrieval practice

7 questions. Answer each one before you open it.

Why is money now worth more than the same amount later, even with no inflation and no risk?

Because money now can be put to work and earn in the meantime. Money that arrives later misses that growth. This is the time value of money.

What is present value, and how is it related to compounding?

Present value is what money promised later is worth today: how much you would have to put away now to have that amount then. It is found by discounting, dividing by (1 + r) once per period of waiting, which is compounding run backwards.

What is 1,100 promised in two years worth today at 5% a year, and does it beat 1,000 cash?

1,100 / 1.05² = 997.73. It is just under 1,000, so at 5% the cash today wins.

What is a discount rate, and why can two people disagree about the same offer without either being wrong?

It is the price of waiting: what your money could earn instead over the same time with similar risk. Two people with different alternatives (one with savings at 3%, one paying 20% on a debt) have different discount rates, so the same promise is worth different amounts to them.

Fibonacci’s soldier: 75 bezants each quarter, or 300 at the end of the year, at 6% a quarter. What is each worth today?

The four quarterly payments are worth 75/1.06 + 75/1.06² + 75/1.06³ + 75/1.06⁴ = 259.88. The year-end 300 is worth 300/1.06⁴ = 237.63. The change cost the soldier about 22 bezants of value with the total unchanged.

Offer A is 10,000 today; offer B is 3,000 a year for four years. At what discount rate are they equal, and which wins below it?

They are equal at about 7.7%. Below that rate offer B is worth more (11,423 at 2%, 10,638 at 5%); above it, offer A wins (B is 9,936 at 8%).

Why are promises far in the future so sensitive to the discount rate?

The discount factor is 1 / (1 + r)^t, and the rate is raised to the power of the number of years. A small change in r gets multiplied many times over: at 5%, a promise 30 years out keeps only 0.231 of its face value.

Compound interest: the ten years you cannot buy back

Lab

A fund charges 1% a year. How much of your final balance does it take over thirty years?

Drag The yearly fee and How long you hold it, and watch the percentage under The fee took.

Open The fee that compounds →

Review Finance →

Saved in this browser, and to your account when you sign in.