The Excel ODDFYIELD function returns the yield of a security with an odd (irregular) first period.


Get yield security with odd first period

Return value 

Yield as percentage


  • sd - Settlement date of the security.
  • md - Maturity date of the security.
  • id - Issue date of the security.
  • fd - First coupon date.
  • rate - Annual coupon rate of security.
  • pr - Price of security.
  • redem - Redemption value per $100 face value.
  • freq - Coupon payments per year (annual = 1, semiannual = 2; quarterly = 4).
  • basis - [optional] Day count basis (see below, default =0).

How to use 

Some bonds have an irregular first or last period, so interest payments don't fit a normal schedule. To calculate the yield of a bond with an irregular first period, you can use the ODDFYIELD function. The ODDFYIELD Function returns the yield (as a percentage) of a security with a short or long first period.


In the example shown, we want to calculate the yield of a bond with a settlement date of 1-Feb-2019. The bond matures on 15-Feb-2022, and pays a coupon rate of 5%, with the first coupon paid on 15-Feb-2019. Payments are semi-annual, the day count basis is US 30/360, and the redemption value is $100. In the example shown, the formula in F5 is:


With these inputs, the ODDFYIELD function returns a yield of 6.10%, with the percentage number format applied.

Entering dates

In Excel, dates are serial numbers. Generally, the best way to enter valid dates is to use cell references, as shown in the example. To enter valid dates directly inside a function, the DATE function is the best option. To illustrate, the formula below has all values hardcoded, with the DATE function used for each of the four required dates:



The basis argument controls how days are counted. The ODDFYIELD function allows 5 options (0-4) and defaults to zero, which specifies US 30/360 basis. This article on Wikipedia provides a detailed explanation of available conventions.

Basis Day count
0 or omitted US (NASD) 30/360
1 Actual/actual
2 Actual/360
3 Actual/365
4 European 30/360


  • In Excel, dates are serial numbers
  • All dates, plus frequency and basis, are truncated to integers.
  • If dates are invalid (i.e. not actually dates) ODDFYIELD returns #VALUE!
  • ODDFYIELD returns #NUM when:
    • (maturity > first_coupon > settlement > issue) is NOT true
    • Rate < 0 or pr <= 0
    • Basis is out-of-range
Dave Bruns Profile Picture

AuthorMicrosoft Most Valuable Professional Award

Dave Bruns

Hi - I'm Dave Bruns, and I run Exceljet with my wife, Lisa. Our goal is to help you work faster in Excel. We create short videos, and clear examples of formulas, functions, pivot tables, conditional formatting, and charts.