Quant Memo
Foundational

Bond Pricing and Accrued Interest

A bond's price is just the present value of the cash it promises. The wrinkle is that the price you see quoted is not the price you pay, because the seller is owed the slice of the next coupon they sat through.

A bond is a promise written as a timetable: pay me this much every six months, then hand back the face amount on this date. Once you have the timetable, pricing is not mysterious. The price is what that stream of future cash is worth today, and money in the future is worth less than money now, so each payment gets shrunk according to how long you have to wait for it.

The second half of this page is about a piece of plumbing that trips up everyone once: the number quoted on a screen is not the number that leaves your account. Think of buying a season ticket halfway through the season. The stadium pays one big rebate at year end to whoever holds the ticket, so if you buy in March you must compensate the seller for the months they already sat through. Bonds work exactly like that, and the compensation is called accrued interest.

Price = present value of the promised cash flows. What you actually pay is the quoted clean price plus accrued interest, and that total is the dirty or invoice price.

Pricing the timetable

Write FF for the face (or par) amount repaid at maturity, CC for the coupon paid each period, nn for the number of periods left, and yy for the yield per period — the single rate the market is using to discount this bond. Then

P=t=1nC(1+y)t  +  F(1+y)n.P = \sum_{t=1}^{n} \frac{C}{(1+y)^{t}} \;+\; \frac{F}{(1+y)^{n}} .

In plain English: take every coupon, divide it by "one plus the rate" raised to the number of periods you must wait, add the face amount shrunk the same way, and total it up. Nothing more sophisticated is happening.

Bond prices are quoted per 100 of face, so a price of 102.775 means you pay 102.775 for every 100 you will get back. Three cases follow immediately from the formula:

  • coupon rate above the yield → price above 100, a premium bond;
  • coupon rate equal to the yield → price exactly 100, at par;
  • coupon rate below the yield → price below 100, a discount bond.

Worked example: pricing a 3-year bond

A bond pays a 5% annual coupon on 100 of face and matures in three years. The market yield is 4%. Discount each payment:

YearCash flowDiscount factorPresent value
151 / 1.04 = 0.961544.8077
251 / 1.04² = 0.924564.6228
351 / 1.04³ = 0.889004.4450
31000.8890088.8996
102.775

The bond pays 5 a year in a world that only demands 4, so it is worth more than par — 2.775 more, which is roughly the extra 1 per year for three years, shrunk for waiting. Notice how much of the value sits in that last row: 86% of the price is the repayment of principal, not the coupons. This is why long bonds are so sensitive to rates, and it is the seed of Bond Duration and Convexity.

Clean, dirty, and accrued

Coupons arrive in lumps, but they are earned continuously. Between payment dates the bond quietly accumulates value that has nothing to do with anything changing in the market. If quoted prices included that drift, every bond chart would look like a sawtooth and you could never tell a real move from the calendar ticking over.

So the market splits the two apart:

dirty price=clean price+accrued interest.\text{dirty price} = \text{clean price} + \text{accrued interest}.

Said plainly: the clean price is the analytical, quoted price with the calendar effect stripped out; accrued interest is the seller's earned-but-unpaid slice of the coming coupon; and their sum, the dirty price, is what actually settles.

price between coupon dates dirty clean coupon paid time
The dirty price climbs as the next coupon accrues and drops by the coupon amount on payment day. Strip that sawtooth out and you get the clean price, which moves only when yields or credit move. Quotes are clean; settlement is dirty.

Accrued interest is a simple proportion of the coupon period already elapsed:

AI=C×days since last coupondays in the coupon period.\text{AI} = C \times \frac{\text{days since last coupon}}{\text{days in the coupon period}} .

Which is to say: if you are two-thirds of the way through the period, the seller keeps two-thirds of the coupon. What counts as a "day" is set by the Day Count Conventions — US Treasuries use actual/actual, most corporates use 30/360, money markets use actual/360 — and picking the wrong one is a real, if small, source of settlement breaks.

Worked example: what you actually wire

A corporate bond pays a 6% annual coupon semi-annually, so each payment is 3.00 per 100 of face. It uses 30/360, meaning every month counts as 30 days and a half-year period as 180. Settlement falls 72 days into the current period, and the bond is quoted at a clean price of 98.50.

  1. Accrued: AI=3.00×72180=1.20\text{AI} = 3.00 \times \frac{72}{180} = 1.20 per 100 of face.
  2. Dirty price: 98.50+1.20=99.7098.50 + 1.20 = 99.70 per 100.
  3. On 1,000,000 of face: principal 985,000, accrued 12,000, so the invoice is 997,000.

You pay the seller that 12,000 today and receive the full 30,000 coupon in 108 days' time, so you are made whole. Note the asymmetry that catches people: a bond quoted at 98.50 cost you 99.70, and if you sold it back immediately at an unchanged clean price you would recover exactly what you paid, accrued included. Nothing was lost — but a naive profit-and-loss that compares an invoice price to a clean quote will show a phantom loss every single time.

Never compare a dirty price to a clean one. Screen quotes, index levels and yield calculations are almost always clean; cash ledgers and settlement amounts are always dirty. Mixing them produces a fake loss on day one that quietly reverses over the coupon period, and it is the single most common bug in a first bond book.

Key terms

  • Face / par — the amount repaid at maturity, the base for the coupon.
  • Clean price — quoted price, excluding accrued interest.
  • Accrued interest — the seller's earned share of the next coupon.
  • Dirty / invoice price — clean plus accrued; what actually settles.
  • Discount factor — the multiplier that converts a future payment into today's value.

Related concepts

Practice in interviews

Further reading

  • Fabozzi, Bond Markets, Analysis and Strategies (Ch. 2)
  • Tuckman & Serrat, Fixed Income Securities (Ch. 1)
ShareTwitterLinkedIn