Quick Navigation
DISC Function
Summary
The Excel DISC function calculates the annual discount rate for a security that pays interest at maturity, based on its settlement date, maturity date, price, and redemption value. It's essential for analyzing discount securities like Treasury bills.
Syntax
DISC(settlement, maturity, pr, redemption, [basis])
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| settlement | Date |
Yes | Security's settlement date - when the security is traded to the buyer |
| maturity | Date |
Yes | Security's maturity date - when the security expires |
| pr | Number |
Yes | Price per $100 face value of the security |
| redemption | Number |
Yes | Redemption value per $100 face value paid at maturity |
| basis | Number |
No | Day count basis (0=30/360 US, 1=Actual/actual, 2=Actual/360, 3=Actual/365, 4=30/360 European) |
Using the DISC Function
DISC is used by financial analysts to determine the effective discount rate of securities purchased at a discount and redeemed at face value at maturity. It's commonly applied to Treasury bills, commercial paper, and other short-term discount instruments.
Common DISC Examples
Basic Treasury Bill Discount Rate
=DISC(DATE(2018,7,1), DATE(2048,1,1), 97.975, 100, 1)
Calculates discount rate for a Treasury bill bought at $97.975 per $100 face value using actual/actual day count. Result: 0.001038 (0.1038%)
Commercial Paper Analysis
=DISC(A2, B2, C2, 100, 0)
Calculates discount rate for commercial paper using US 30/360 convention where A2=settlement date, B2=maturity date, C2=price per $100
Short-term Discount Note
=DISC(DATE(2023,1,15), DATE(2023,6,15), 98.5, 100)
90-day discount note discount rate using default basis (US 30/360)
Frequently Asked Questions
Common Errors and Solutions
#VALUE! Error
Cause: Settlement or maturity dates are invalid or entered as text
Solution: Use DATE() function or ensure cells are formatted as dates
#NUM! Error - Negative Values
Cause: Price (pr) or redemption ≤ 0
Solution: Ensure both price and redemption values are positive
#NUM! Error - Invalid Basis
Cause: Basis argument < 0 or > 4
Solution: Use basis values 0, 1, 2, 3, or 4 only
#NUM! Error - Date Order
Cause: Settlement date ≥ maturity date
Solution: Ensure settlement date is before maturity date
Notes
- Always use DATE() function for settlement and maturity dates
- Price (pr) represents clean price per $100 face value
- Redemption typically equals 100 for par redemption
- Default basis=0 uses US (NASD) 30/360 convention
- Excel truncates dates and basis to integers
Compatibility
Available in: Excel 2007, Excel 2010, Excel 2013, Excel 2016, Excel 2019, Excel 2021, Microsoft 365
Not available in: Excel 2003 and earlier
Content last reviewed: December 9, 2025
Update frequency: As needed
Excel versions tested: Excel 2007+