‹ Yield & Duration Lesson 6 of 16
Contents Lesson 6 of 16

3 min read · practitioner

How long, on average, do you wait for a bond's money?

Macaulay duration is the present-value-weighted average time until you receive a bond's cash flows. Its unit is years, and it is exactly the balance point of the last lesson's plank. Here is how to compute it, step by step.

The recipe

  1. List every remaining cash flow and the year it arrives.
  2. Discount each one at the bond's YTM to get its present value.
  3. Divide each present value by the bond's price — that's the flow's weight. The weights sum to 1.
  4. Duration = Σ (weight × year).

The worked example we'll reuse all course

A €1,000 face, 5% annual coupon, 5-year bond, yielding 5% — so it trades at par, €1,000.

  • Year 1: €50 → PV €47.62 → weight 4.76% → contributes 0.048 years
  • Year 2: €50 → PV €45.35 → weight 4.54% → contributes 0.091 years
  • Year 3: €50 → PV €43.19 → weight 4.32% → contributes 0.130 years
  • Year 4: €50 → PV €41.14 → weight 4.11% → contributes 0.165 years
  • Year 5: €1,050 → PV €822.70 → weight 82.27% → contributes 4.114 years

The present values sum to €1,000 (they must — that's the definition of YTM), and the contributions sum to:

Macaulay duration = 4.55 years

Read what the table is telling you

The final payment carries 82% of the weight, because it contains the principal. That single fact explains why the answer sits so close to 5 years rather than in the middle. It also explains the coupon rule from the last lesson: fatten the coupons and you shift weight out of that last bar and toward the early ones, pulling the balance point in.

Interpretation to keep: for interest-rate purposes, this five-year bond behaves like a single payment 4.55 years away. Duration collapses a messy stream into one honest number.

Two properties that are always true

  • For any bond with coupons, duration is strictly less than maturity — some money arrives before the end.
  • For a bond with no coupons, duration equals maturity. (That deserves its own lesson, and gets one.)

A convention note

With semiannual coupons, run the identical procedure in half-year periods, discounting at half the annual yield, then divide the answer by 2 to express it in years. Ten periods of a 3%-per-period discount is the same arithmetic in a different unit.

Where this is going

Macaulay duration is a time. What you actually want is a price sensitivity — a percentage move per percentage change in yield. One small adjustment turns one into the other, and that is the next lesson.

Try it now

  1. Build the table by hand for a 3-year, 4% annual coupon bond yielding 4%. Discount €40, €40 and €1,040, weight them, and sum. You should land close to 2.89 years.
  2. Now redo it assuming an 8% coupon at the same 4% yield. The duration should come out shorter — confirm the coupon rule with your own arithmetic rather than taking it on trust.
  3. Now a real portfolio. The chart is five years of the iShares Core US Aggregate Bond ETF (AGG), and every move on it is a yield change seen through duration. The table gives the fund's own figures: its duration and the average maturity of its bonds. The fund states modified duration, the next lesson's measure, which sits a little below Macaulay. Set the duration beside the average maturity and say out loud what the gap means: "the average dollar in this portfolio arrives in about N years, well before its bonds mature."
Interactive line chart: AGG.US (5Y)
Live API response: fib3 agg duration