Ratedrill

Bonds, returns and business math Updated November 2026

Bond price

A bond is priced as the present value of its coupons plus the present value of its face value: P = C x (1 - (1 + y)^-n) / y + F / (1 + y)^n, with C the coupon per period, y the yield per period and n the periods.

Syntax

P = C x (1 - (1 + y)^-n) / y + F / (1 + y)^n
PartWhat it is
FFace (par) value, usually 1,000
CCoupon per period = F x coupon rate / payments per year
yYield to maturity per period
nNumber of coupon periods to maturity

Examples

F = 1,000, 5% annual coupon, 10 years, yield 6%
P = 50 x (1 - 1.06^-10) / 0.06 + 1,000 / 1.06^10

Result: P = 926.40 (discount)

Excel: =PV(6%, 10, -50, -1000)

Same bond, yield 4%
P = 50 x (1 - 1.04^-10) / 0.04 + 1,000 / 1.04^10

Result: P = 1,081.11 (premium)

6% coupon paid semiannually, 5 years, yield 8%
C = 30, y = 4%, n = 10
P = 30 x (1 - 1.04^-10) / 0.04 + 1,000 / 1.04^10

Result: P = 918.89

Excel: =PV(4%, 10, -30, -1000)

Common mistakes

  • Using the annual yield and annual coupon with semiannual periods; halve both and double n.
  • Discounting the coupons but forgetting the face value at maturity, which leaves out most of the price.
  • Mixing up coupon rate and yield: the coupon rate sets the cash paid, the yield sets the discount rate.

Practice Bond price

These drills check your answer on live data, free, no account needed.

  • Bond priceA $1,000 bond pays a 2% coupon in two semiannual payments and matures in 22 years. If the market yield to maturity is 1.5% (annual, compounded semiannually), what is the bond's price?
  • Present value of a payment streamA legal settlement pays $1,000 at the end of each year for 25 years. At a discount rate of 3.25% per year, what is the payment stream worth today?

Questions

Why do bond prices fall when interest rates rise?

The coupons are fixed, so when the market yield rises the same cash flows are discounted at a higher rate and are worth less today. Longer bonds fall more because more of their cash flows are far in the future.

How do I price a bond in Excel?

=PV(yield per period, periods, -coupon, -face) for a clean textbook price, or =PRICE(settlement, maturity, rate, yld, 100, frequency) for a quote per 100 of face on real dates.

Related

  • Yield to maturity (YTM)YTM is the discount rate that makes a bond price equal the present value of its cash flows. The approximation formula, examples, Excel RATE and YIELD, errors.
  • Current yieldCurrent yield is the bond annual coupon divided by its current price. Examples for discount and premium bonds, how it compares with YTM and mistakes to avoid.
  • Present valueHow to calculate present value with PV = FV / (1 + r)^n, what discounting means, examples with yearly and quarterly rates, the Excel PV function and mistakes.
  • Present value of an annuityHow to find the present value of equal payments with PV = PMT x (1 - (1 + r)^-n) / r. Worked examples, Excel PV and why this is the loan formula in disguise.

Previous: Profitability indexNext: Yield to maturity (YTM)