DURATION Function in Excel: How Sensitive a Bond Is to Rates

DURATION Function in Excel: How Sensitive a Bond Is to Rates featured illustration

📎 This article includes 1 downloadable practice file ↓

⏱ 2 min readUpdated 28 September 2026

FinancialLevel: ExpertAvailable in: Excel 2007+

In this article
  1. Syntax
  2. Examples
  3. Example 1
  4. DURATION in practice
  5. Where you will use it
  6. Worked example
  7. Mistakes people make
  8. Related functions
  9. Continue learning

DURATION returns Macaulay duration in years. Roughly, a bond with duration 7 loses about 7% in price if rates rise 1% — which is why long-duration debt funds swing more.

Advertisement

Syntax

=DURATION(settlement, maturity, coupon, yld, frequency, [basis])
Argument What it means
frequency 1, 2 or 4.

Examples

Example 1

=DURATION(DATE(2020,6,1), DATE(2030,6,1), 7%, 7.5%, 2)

Roughly 7 years for a 10-year 7% bond.

DURATION in practice

Where you will use it

  • Interest-rate sensitivity of a bond
  • Compare bond risk
  • Portfolio duration

Worked example

CouponYieldMaturityFormulaResult
0.080.07531-Mar-2031=ROUND(DURATION(DATE(2026,10,4),C2,A2,B2,2,0),2)3.86
0.070.0731-Mar-2036=ROUND(DURATION(DATE(2026,10,4),C3,A3,B3,2,0),2)7.08
0.090.08531-Mar-2028=ROUND(DURATION(DATE(2026,10,4),C4,A4,B4,2,0),2)1.43

Results calculated in Excel.

Mistakes people make

MistakeWhat to do instead
Modified durationUse MDURATION for price sensitivity
Settlement dateMust be before maturity

PRICE · YIELD

📚 Part of the free Excel course: Beginner → Expert · Try it in the Formula Lab or ask the AI Helper.

⚡ Interactive Practice Lab & Formula Tester:

Test formulas dynamically in our web formula laboratory or download the companion Excel workbook.

📎 Practice files for this article

  • 📗
    Practice workbook: Financial: EMI, SIP, NPV, IRR, depreciation23 tasks on realistic sales data — type your formula, the Check column turns green when it is right. Answers sheet included.
    ⬇ XLSX · 35 KB

Free to use for learning. Files with macros (.bas) are plain text — import them with Alt+F11 → File → Import File, and always test on a copy.

✨ Ask AI about this article

Stuck on a step? Ask a question and the AI answers using this article.

Free · AI can be wrong