Skip to content
Excel

DURATION function in Excel

Returns the annual duration of a security with periodic interest payments

=DURATION(settlement, maturity, coupon, yld, frequency, [basis])

DURATION syntax and parameters

Six arguments, five required.

  • settlementanyRequired

    The security's settlement date. The security settlement date is the date after the issue date when the security is traded to the buyer.

  • maturityanyRequired

    The security's maturity date. The maturity date is the date when the security expires.

  • couponnumberRequired

    The security's annual coupon rate.

  • yldnumberRequired

    The security's annual yield.

  • frequencynumberRequired

    The number of coupon payments per year. For annual payments, frequency = 1; for semiannual, frequency = 2; for quarterly, frequency = 4.

  • basisnumberOptional

    The type of day count basis to use.

DURATION examples

Formulas you'll actually reuse.

  1. Macaulay duration in years — the cash-flow-weighted time to repayment:

    =DURATION(DATE(2026, 5, 15), DATE(2031, 3, 15), 5%, 4%, 2, 0)

    Result4.3322

  2. A portfolio's duration — each bond's duration weighted by its market value in F:

    =SUMPRODUCT(DURATION(B2:B6, C2:C6, D2:D6, E2:E6, 2), F2:F6) / SUM(F2:F6)

DURATION in Google Sheets

Same name — your formula ports as-is.

Try DURATION in the playground

Edit the example — nothing to install.

Preloaded with the DURATION formula from Example 1 — change anything and watch it respond.

Loading the editor…