How to Calculate Modified Duration

by Wilhelm Schnotz

Evaluating a bond’s performance would be relatively easy if the market never changed over the course of its maturity period. Because that’s impossible, evaluating a stock can be a difficult process. Modified duration is a measure investors use to determine a security’s ability to withstand changes in common interest rates in the market. It is also based on another duration measurement, Macauley duration, which measures the time needed for a bond investment to recoup its principal and interest payments. Modified duration measures are more accurate when interest rates change less than 1 percent, but become less reliable with larger changes.

Calculating Macauley Duration

Step 1

Set the bond’s expected yield price as variable BEY. In our example, a bond has an expected yield of $100, so BEY = 100 and matures in two years, or four coupon periods.

Step 2

Determine the coupon rate, represented by C. If the bond pays semiannually, C is equal to half the annual rate. Our example bond pays 6 percent biannually, so C = 3.

Step 3

Determine the expected yield rate per payment period by dividing the BEY rate by the number of payments. Then convert the rate to a basis of 100 percentage points as variable R. The advertised BEY rate for the investment is 8 percent, and paying semiannually, which yields 4 percent return each coupon period. This can be represented at 1.04 for the example.

Step 4

Calculate the Macauley duration, d, by plugging terms into the equation: D = 1/BEY + SUM (1 * [C/r^1) + 2 * [C/r^2] + 3 * [C/r^3] … n * [C/r^n]

In the example, D = 1/100 + ( 1 * [3/1.04^1] + 2 * [3/1.04^2] + 3 * [3/1.04^3] +4 * [3/1.04^4]) D = 1.91.

Calculating Modified Duration

Step 1

Define D as the Macauley’s duration for the bond. In this example, D = 1.91, as calculated in the previous section.

Step 2

Establish variable R as the interest rate paid each period. Continuing the example of the previous step, with a 8-percent yield paid biannually, R = 4. Express this figure in terms of percentage yield, so R = 1.04.

Step 3

Compute modified duration using the formula: MD = D/(1+R)

In the example, MD = 1.91/(1 + 1.04) Or MD = 0.94.


  • Many spreadsheets and financial software compute Macauley duration and modified duration automatically for their users. Consult your spreadsheet's documentation to determine how to activate the automatic calculation feature.