Home › Finance Formulas › Bond Duration Formula (Macaulay, Modified)
Bond Duration Calculator (Macaulay and Modified)
Duration summarises a bond’s interest-rate risk in one number. Macaulay duration is the weighted average time until the bond’s cash flows are received, where each time is weighted by the share of the bond’s price that cash flow represents. Modified duration, Macaulay duration divided by (1 + yield per period), estimates the percentage change in price for a one percentage point change in yield.
Formula
Where
- t
- coupon period number (1, 2, …, n)
- PV(CFt)
- present value of the cash flow at period t, discounted at the yield
- Price
- sum of all PV(CFt)
- k
- coupons per year (converts periods to years)
- YTM
- annual yield to maturity
Calculator
Result and step-by-step solution
Modified duration 4.3414: a 1 percentage-point rise in yield cuts the price by about 4.34% (≈ 41.56).
- Discount each cash flow and weight it by its period
t Years Cash flow PV t × PV 1 0.5 25.00 24.27 24.27 2 1 25.00 23.56 47.13 3 1.5 25.00 22.88 68.64 4 2 25.00 22.21 88.85 5 2.5 25.00 21.57 107.83 6 3 25.00 20.94 125.62 7 3.5 25.00 20.33 142.29 8 4 25.00 19.74 157.88 9 4.5 25.00 19.16 172.44 10 5 1,025.00 762.70 7,626.96 - SumsPrice = Σ PV = 957.35; Σ t × PV = 8,561.91
- Macaulay duration8,561.91957.35 = 8.9434 periods ÷ 2 = 4.4717 years
- Modified duration4.47171 + 0.03 = 4.3414
How to use the formula
The calculator builds the full table: the time of each coupon, the cash flow, its present value at the yield and that present value multiplied by the period number. Summing the last column and dividing by the price gives Macaulay duration in periods, which is then converted to years. Longer maturities, lower coupons and lower yields all mean higher duration and more price risk.
For a 5-year bond with a 1,000 face value, a 5% semi-annual coupon and a 6% yield, the price is 957.35, Macaulay duration is 4.47 years and modified duration 4.34. If yields rise by 1 percentage point, the price should fall by about 4.34%, roughly 41.56. A zero-coupon bond’s Macaulay duration equals its maturity. Price the bond itself with the bond price formula.
Frequently asked questions
- What is the formula for Macaulay duration?
- DMac = Σ t × PV(CFt) ÷ Price, in periods; divide by the number of coupons per year to express it in years.
- What is modified duration?
- Macaulay duration ÷ (1 + YTM ÷ k). It approximates the percentage price change for a 1 percentage point change in yield.
- Why does duration matter?
- It measures interest-rate risk: the higher the duration, the more the bond’s price falls when yields rise.
- Does this match Excel’s DURATION and MDURATION?
- Yes on coupon dates; the Excel functions also handle settlement between coupon dates.
Last reviewed: September 26, 2026. Calculations run in your browser and were checked against numpy-financial, SciPy and published spreadsheet examples.
