Skip to content

Bond Yield Calculator

Enter a bond's settlement and maturity dates, coupon rate and frequency, then give either a yield to get its price or a price to get its yield to maturity. You also get accrued interest, current yield, Macaulay and modified duration, a what-if table for yield changes and every cash flow. The maths follows Excel's PRICE, YIELD and DURATION. Free, no sign-up.

The bond

Prices are quoted per 100 of par and are clean (without accrued interest), as Excel's PRICE and YIELD return them. The day-count basis sets how accrued days and the coupon period are counted, as in Excel.

Results

94.6344

Clean price per 100

6.5%

Yield to maturity

6.076%

Current yield

7.4165

Macaulay duration (years)

7.183

Modified duration

96.0719

Dirty (invoice) price per 100

Current yield is the annual coupon divided by the clean price. Dirty price is clean price plus accrued interest.

For a face amount of $1,000.00

ItemAmount
Clean price$946.34
Accrued interest$14.38
Invoice amount (clean + accrued)$960.72
Coupon each payment date$28.75

The working

20 coupons remain. The coupon period runs Nov 15, 2007 to May 15, 2008: A = 90 days accrued, E = 180 days in the period, DSC = 90 days to the next coupon.

Accrued interest = coupon × A ÷ E = 2.875 × 90 ÷ 180 = 1.4375 per 100

Clean price = present value of all cash flows − accrued interest = 96.0719 − 1.4375 = 94.6344

If the yield changes

Change (percentage points)New yieldNew clean pricePrice changeEstimate from modified duration
−24.5%109.7715.99%14.37%
−15.5%101.8587.63%7.18%
+17.5%88.035-6.97%-7.18%
+28.5%82.001-13.35%-14.37%

Cash flows per 100 of par

CouponDateCash flowYears from settlementPresent valueYears × present value
1May 15, 20082.8750.252.82940.7073
2Nov 15, 20082.8750.752.74032.0552
3May 15, 20092.8751.252.65413.3176
4Nov 15, 20092.8751.752.57054.4984
5May 15, 20102.8752.252.48965.6016
6Nov 15, 20102.8752.752.41136.6309
7May 15, 20112.8753.252.33547.5899
8Nov 15, 20112.8753.752.26188.4819
9May 15, 20122.8754.252.19069.3102
10Nov 15, 20122.8754.752.121710.078
11May 15, 20132.8755.252.054910.7883
12Nov 15, 20132.8755.751.990211.4438
13May 15, 20142.8756.251.927612.0474
14Nov 15, 20142.8756.751.866912.6016
15May 15, 20152.8757.251.808113.109
16Nov 15, 20152.8757.751.751213.572
17May 15, 20162.8758.251.696113.9928
18Nov 15, 20162.8758.751.642714.3737
19May 15, 20172.8759.251.59114.7168
20Nov 15, 2017102.8759.7555.1383537.5988

How to Use the Bond Yield Calculator

  1. 1. Choose what to work out. Price from a yield you assume, or yield to maturity from a price you observe.
  2. 2. Enter the dates. Settlement is the day the purchase settles; maturity is the day the bond is redeemed. Accrued interest and the first coupon period are measured from settlement.
  3. 3. Enter the terms. The annual coupon rate, the coupon frequency (annual, semiannual or quarterly) and the redemption value per 100 of par, normally 100. Add the face amount you hold to see money amounts.
  4. 4. Pick the day-count basis. 30/360 (US), actual/actual, actual/360, actual/365 or European 30/360, numbered 0–4 as in Excel. Corporate bonds usually use 30/360; US Treasuries use actual/actual.
  5. 5. Read the results. Clean and dirty price, yield to maturity, current yield, Macaulay and modified duration, a table of what happens to the price if yields move, and the full cash-flow table.

How a Bond Is Priced

A bond is a stream of cash flows: a coupon each period and the redemption value at maturity. Its price is the present value of that stream, discounted at the yield to maturity (YTM) divided by the coupon frequency f. With N coupons left, a coupon of c = 100 × rate ÷ f, and the fraction of the current coupon period still to run, DSC ÷ E, the dirty price is the sum of c ÷ (1 + y/f)k−1+DSC/E for k = 1 to N, plus redemption ÷ (1 + y/f)N−1+DSC/E. Subtracting the accrued interest, c × A ÷ E, gives the clean price. When only one coupon remains, Excel switches to simple interest over the last period, and so does this calculator.

  • Clean price is the quoted price, without accrued interest. Excel's PRICE returns this.
  • Accrued interest is the part of the next coupon the seller has earned since the last coupon date: c × A ÷ E, with A the days accrued and E the days in the coupon period.
  • Dirty (invoice) price is clean price plus accrued interest: what the buyer actually pays per 100 of par.
  • Yield to maturity is the single annual rate that discounts all the cash flows to the dirty price. It is a nominal rate compounded f times a year, which is why it is quoted "bond-equivalent". The calculator finds it by bisection, so it is exact where Excel's YIELD iterates to about seven decimals.
  • Current yield is the annual coupon divided by the clean price. It ignores any gain or loss at maturity.

Duration: How Sensitive the Price Is

Macaulay duration is the present-value-weighted average time to the bond's cash flows, in years: Σ t × PV ÷ Σ PV. Modified duration, Macaulay duration ÷ (1 + y/f), estimates the percentage price change for a small change in yield: ΔP ÷ P ≈ −modified duration × Δy. The table in the calculator compares that estimate with the exact repricing; the gap is convexity, which grows with the size of the yield move. A zero-coupon bond's Macaulay duration equals its time to maturity, and a higher coupon shortens duration.

Worked Example

This is the example in Microsoft's documentation for Excel's PRICE function: settlement 15 February 2008, maturity 15 November 2017, a 5.75% semiannual coupon, a 6.5% yield, redemption 100, 30/360 basis. Settlement is exactly halfway through a coupon period (A = 90, E = 180, DSC = 90) with 20 coupons remaining, so accrued interest is 2.875 × 90 ÷ 180 = 1.4375. The clean price is 94.6344 and the dirty price is 96.0719. Current yield is 5.75 ÷ 94.6344 = 6.076%, above the coupon rate because the bond trades below par. Macaulay duration is 7.4165 years and modified duration 7.1830.

If the yield rises one percentage point to 7.5%, the clean price falls to 88.035, down 6.97%; modified duration predicted −7.18%. If it falls to 5.5%, the price rises to 101.858, up 7.63% against a predicted 7.18%. The price rises more than it falls — that asymmetry is convexity. Entering a price of 90 instead gives a yield to maturity of 7.1928%.

The same bond under each day-count basis (yield 6.5%)
BasisAccrued days ADays in period EAccrued interestClean price
0 — 30/360 US901801.437594.6344
1 — actual/actual921821.453394.6354
2 — actual/360921801.469494.6024
3 — actual/36592182.51.449394.6436
4 — 30/360 European901801.437594.6344

Matching Excel

The calculator reproduces the examples in Microsoft's documentation for PRICE (94.63436162), YIELD (6.5% for a price of 95.04287), DURATION (10.9191453 for a 30-year 8% bond at a 9% yield, actual/actual) and MDURATION (5.73567). It does not model callable or floating-rate bonds, odd first or last coupons, taxes or credit risk. It is a learning aid, not investment advice.

Frequently Asked Questions

What is yield to maturity?
The annual rate of return you would earn if you bought the bond at its current price, held it to maturity and received every coupon and the redemption on schedule. Mathematically it is the discount rate that makes the present value of those cash flows equal the price you pay (including accrued interest).
Why does a bond's price fall when yields rise?
Because the fixed coupons and redemption are worth less when discounted at a higher rate. A bond paying 5.75% is less attractive when new bonds yield 7.5%, so its price must fall until its yield matches. The longer the bond and the lower its coupon, the bigger the fall.
What is the difference between clean and dirty price?
The clean price excludes accrued interest and is what is quoted in the market; the dirty price includes it and is what the buyer pays on settlement. Between coupon dates the dirty price rises smoothly as interest accrues, while the clean price does not jump when a coupon is paid.
What is the difference between yield to maturity and current yield?
Current yield is only the annual coupon divided by the price. Yield to maturity also counts the gain if you buy below par (or the loss if above par) as the price pulls to redemption, and the time value of every cash flow. For a bond bought at par the two are equal.
What does duration tell you?
Macaulay duration is the weighted-average time, in years, until you receive the bond's cash flows. Modified duration converts it into price sensitivity: a modified duration of 7.18 means roughly a 7.18% price change for each one-percentage-point change in yield, in the opposite direction.
Which day-count basis should I use?
Use the convention in the bond's terms. US corporate and municipal bonds usually use 30/360, US Treasury notes and bonds use actual/actual, and many money-market instruments use actual/360. The differences are small, as the table shows, but they matter for accrued interest and for matching a quote exactly.

Related Tools

More in Economics, Business & Finance

See all Economics, Business & Finance