Bond Duration Calculator

Enter your bond's face value, coupon rate, maturity, payment frequency, and yield to maturity to calculate Macaulay duration, modified duration, convexity, DV01, and a full period-by-period cash flow breakdown.
Luis GonzalezCreated by Luis GonzalezLast updated:

How to Use This Calculator

  1. 1

    Enter your bond details

    Input the face value ($1,000 typical), annual coupon rate, years to maturity, coupon frequency (2 for semi-annual, 1 for annual), and yield to maturity.

  2. 2

    Review your results

    The calculator displays Macaulay Duration, Modified Duration, and Convexity, plus an insights card with bond price, DV01, coupon details, and a duration-to-maturity comparison. A full cash flow schedule table appears below.

Example Calculation

An investor analyses a $1,000 bond with a 5% annual coupon paid semi-annually, 10 years to maturity, and a 4% yield to maturity.

Face Value of Bond

1000

Annual Coupon Rate

5

Years to Maturity

10

Coupon Frequency

2

Yield to Maturity (YTM)

4

Results

Macaulay Duration

8.08 yrs

Modified Duration

7.9225

Convexity

75.47

Insights card shows bond price of $1,081.

Tips

Higher Coupons Shorten Duration

Raising the coupon rate from 5% to 8% (keeping all else equal) drops Macaulay duration from 8.08 to 7.50 years -- 0.58 years shorter -- because more cash flow arrives earlier.

Halving Maturity Cuts Duration Nearly in Half

A 5-year bond with the same 5% coupon and 4% YTM has a duration of just 4.50 years and convexity of 22.92, versus 8.08 years and 75.47 for the 10-year bond.

Zero-Coupon Bonds Equal Their Maturity

Set the coupon rate to 0% and the calculator shows duration equals 10.00 years -- exactly the maturity -- because all cash flow is at the end. The bond prices at $672.97, a deep discount.

Quantify the Rate-Rise Impact

If YTM rises from 4% to 5% on the default $1,000 bond, the price drops from $1,081.76 to $1,000.00, a $81.76 decline (-7.56%). Modified duration of 7.9225 approximates this shift.

The Mathematical Framework Behind Bond Duration

The calculator uses Macaulay Duration -- the weighted average time until a bond's cash flows are received, where each cash flow is weighted by its present value relative to the bond's total price.

Coupon payment per period:

coupon payment = (face value x annual coupon rate) / frequency

For a $1,000 bond at 5% paid semi-annually: $1,000 x 0.05 / 2 = $25.

Bond price (sum of discounted cash flows):

bond price = SUM(coupon / (1 + YTM/freq)^t) + face value / (1 + YTM/freq)^(years x freq)

Macaulay Duration:

duration = SUM((t/freq) x PV(cash flow_t)) / bond price

Modified Duration adjusts for compounding:

modified duration = macaulay duration / (1 + YTM/freq)

Convexity captures the curvature of the price-yield relationship:

convexity = SUM(t x (t+1) x PV(cash flow_t) / (1 + YTM/freq)^2) / (bond price x freq^2)
💡 Need to measure convexity in more detail? Our Bond Convexity Calculator provides dollar convexity, convexity benefit, and estimated price change for rate shocks.

Worked Example: 10-Year Bond at 6% YTM

Consider a $1,000 bond with a 5% coupon, semi-annual payments, 10 years to maturity, and a 6% YTM:

Metric Value
Bond Price $925.61
Macaulay Duration 7.89 yrs
Modified Duration 7.6650
Convexity 71.79
DV01 $0.7095

The bond trades at a $74.39 discount to face value because the 5% coupon is below the 6% market yield.

Its duration of 7.89 years (vs. 8.08 at 4% YTM) is shorter because the higher discount rate reduces the present-value weight of distant cash flows.

💡 To evaluate the overall return on a bond purchase, try our ROI Calculator. For broader fixed-income portfolio analysis, see the Bond Yield Calculator.

When Duration Gives Misleading Results

Callable bonds: Standard Macaulay or Modified Duration assumes cash flows are fixed.

A callable bond may be redeemed early if rates fall, so its actual duration is shorter than calculated.

Use effective duration (which models the option) for callable bonds.

Large rate moves: Duration is a first-order approximation -- accurate for small yield changes but overestimates price drops (and underestimates price gains) for shifts above ~50 bps.

Convexity corrects this.

For the default bond, a 1% rate rise predicts a ~7.92% decline via duration alone, but the actual price drops from $1,081.76 to $1,000.00 (-7.56%), because convexity cushions the fall.

Floating-rate and very short bonds: Instruments that reset to market rates quickly have durations near zero.

Duration analysis adds little value here; credit quality and liquidity matter more.

Frequently Asked Questions

What is bond duration?

Bond duration measures how sensitive a bond's price is to interest rate changes. Macaulay duration is the weighted average time (in years) until you receive all cash flows. For example, the default $1,000 bond at 5% coupon and 4% YTM has a Macaulay duration of 8.08 years, meaning its price shifts roughly 8% for every 1% rate move.

What is the difference between Macaulay and Modified Duration?

Macaulay duration is expressed in years and represents the weighted-average time to cash flows. Modified duration adjusts it by dividing by (1 + periodic YTM): 8.08 / (1 + 0.02) = 7.9225. Modified duration directly estimates the percentage price change for a 1% yield shift.

How does convexity improve the duration estimate?

Duration assumes a linear price-yield relationship, but actual bond prices curve. Convexity (75.47 for the default bond) captures this curvature. For large rate moves, combining both gives a more accurate estimate: price change = -ModDur x rate change + 0.5 x Convexity x (rate change)^2.

What is DV01 and how do I use it?

DV01 (Dollar Value of 1 basis point) is the dollar price change for a 0.01% yield move. It equals Modified Duration x Bond Price x 0.0001. For the default bond: 7.9225 x $1,081.76 x 0.0001 = $0.8570. Portfolio managers use DV01 to hedge rate exposure dollar-for-dollar.

Why does a higher coupon rate reduce duration?

Higher coupons deliver more cash flow early, pulling the weighted average forward. With an 8% coupon (vs. 5%), duration drops from 8.08 to 7.50 years. A zero-coupon bond's duration equals its full 10-year maturity because all cash flow arrives at the end.

How does coupon frequency affect duration?

Switching from semi-annual (freq = 2) to annual (freq = 1) payments changes duration from 8.08 to 8.19 years because cash flows are spaced further apart. Bond price shifts slightly from $1,081.76 to $1,081.11, and convexity rises from 75.47 to 77.48.