ODDFPRICE Function

Excel 2007+

Summary

The ODDFPRICE function calculates the price per $100 face value of a security with an irregular first coupon period. Ideal for bonds where the initial payment doesn't align with standard coupon intervals.

Syntax

ODDFPRICE(settlement, maturity, issue, first_coupon, rate, yld, redemption, frequency, [basis])

Parameters

Parameter Type Required Description
settlement Date Yes Security's settlement date - when traded to buyer after issue
maturity Date Yes Security's maturity date - when it expires
issue Date Yes Security's issue date
first_coupon Date Yes Date of the first coupon payment
rate Number Yes Security's annual interest rate (coupon rate)
yld Number Yes Security's annual yield
redemption Number Yes Redemption value per $100 face value (typically 100)
frequency Number Yes Coupon payments per year: 1=annual, 2=semiannual, 4=quarterly
basis Number No Day count basis (0=30/360 US, 1=Actual/actual, 2=Actual/360, 3=Actual/365, 4=European 30/360)

Using the ODDFPRICE Function

ODDFPRICE is crucial for pricing bonds with non-standard first coupon periods. Use it when analyzing securities where settlement occurs between coupon dates or when the first payment has an irregular length compared to subsequent coupons.

Common ODDFPRICE Examples

Semiannual Bond with Odd First Period

=ODDFPRICE(DATE(2008,11,11),DATE(2021,3,1),DATE(2008,10,15),DATE(2009,3,1),0.0785,0.0625,100,2,1)

Calculates $113.60 price for bond settled Nov 11, 2008 with first coupon Mar 1, 2009 using actual/actual day count.

Frequently Asked Questions

An odd first coupon occurs when the time from issue/settlement to first payment differs from regular coupon intervals (short or long first period).

Use 0 (US 30/360) for most corporate bonds, 1 (Actual/actual) for US Treasuries, or match your security's prospectus.

Check that rate and yld are positive, basis is 0-4, and dates satisfy: maturity > first_coupon > settlement > issue.

Common Errors and Solutions

#VALUE!

Cause: Invalid date in settlement, maturity, issue, or first_coupon

Solution: Use DATE() function: DATE(2008,11,11)

#NUM!

Cause: rate < 0, yld < 0, basis < 0 or > 4, or invalid date sequence

Solution: Verify all numeric parameters and date logic: maturity > first_coupon > settlement > issue

#NAME?

Cause: Function name misspelled

Solution: Use exact spelling: ODDFPRICE

Notes

  • Dates must use DATE() function or valid serial numbers - never text
  • Excel stores dates as serial numbers (Jan 1, 1900 = 1)
  • Settlement is always after issue date
  • First_coupon must be after settlement
  • Available in Excel 2007 and later versions

Compatibility

Available in: Excel 2007, Excel 2010, Excel 2013, Excel 2016, Excel 2019, Excel 2021, Microsoft 365

Not available in: Excel 2003, Excel XP, Excel 2000, Excel 97

Content last reviewed: December 9, 2025
Update frequency: As needed
Excel versions tested: Excel 2007+