Quick, clean, and to the point

Excel COUPPCD Function

Excel COUPPCD function
The Excel COUPPCD function returns the previous coupon date before the settlement date for a coupon bond.
Get previous coupon date before settlement date
Return value 
Previous coupon date
=COUPPCD (settlement, maturity, frequency, [basis])
  • settlement - Settlement date of the security.
  • maturity - Maturity date of the security.
  • frequency - Number of coupon payments per year (annual = 1, semi-annual = 2, quarterly = 4).
  • basis - [optional] Day count basis (see below, default =0).
Usage notes 

Historically, bonds were printed with an elaborate design on paper that included detachable coupons. The coupons were presented to the bond issuer by the bondholder to collect periodic interest payments. 

The Excel COUPPCD function returns the previous coupon date before the settlement date. The settlement date is the date the investor takes possession of a security. The maturity date is the date when the investment ends and the principle plus accrued interest is returned to the investor.  The frequency is the number of interest payments per year. Basis specifies the method used to count days (see below). In the example shown, the formula in F6 is:


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, you can use the DATE function. Below is the formula in F6 reworked with hardcoded values and the DATE function:


With these inputs, COUPPCD returns the same result, 1-Jul-2019.


The basis argument controls how days are counted. The COUPPCD 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 arguments are truncated to integers, so for example, time is ignored.
  • If settlement or maturity dates are not valid, COUPPCD returns #VALUE!
  • If basis is out-of-range , COUPPCD returns #NUM!
  • If maturity date is not later than settlement date, COUPPCD returns #NUM!

Download 100+ Important Excel Functions

Get over 100 Excel Functions you should know in one handy PDF.