# How to Calculate Bond Yield: A Complete Guide for Students & Investors

Current yield, YTM, YTC, yield to worst, and holding period yield — the full bond yield formula toolkit, plus clean vs dirty price, an Excel walkthrough, and 5 practice problems with verified answers.

---

- **Canonical URL:** https://dothecalculation.com/blog/finance/how-to-calculate-bond-yield
- **Category:** Finance
- **Author:** Do The Calculation Team
- **Published:** 2026-08-03
- **Last updated:** 2026-08-03
- **Reading time:** 17 min read
- **Publisher:** Do The Calculation (https://dothecalculation.com)
- **Methodology:** https://dothecalculation.com/methodology

---

## How to Calculate Bond Yield: A Complete Guide for Students & Investors

Why does one broker show a 5% yield on a bond while another shows 4.8% for the exact same security? It is not a math error — it is a different definition of "yield." Bond yield is not one number. It is a family of five related measures, and each one answers a different question about your return.

In this guide you will find:

- What bond yield is and why five different versions of it exist
- How to calculate current yield, YTM, YTC, yield to worst, and holding period yield — with corrected, independently verified worked examples
- Clean price vs dirty price — the settlement-day trap that catches new bond buyers
- How to calculate bond yield in Excel with the YIELD() function
- 5 practice problems with answers
- 8 common bond yield mistakes and how to avoid them

Tool: [Try the Bond Yield Calculator](https://dothecalculation.com/calculators/bond-yield-calculator) — Enter face value, coupon rate, price, and maturity to get YTM (solved with Newton-Raphson, not the rough approximation formula), current yield, and Macaulay/Modified duration instantly.

## What Is Bond Yield?

Bond yield is the return an investor earns from holding a bond, expressed as a percentage. When you buy a bond, you are lending money to a government or corporation. The yield is your return on that loan — but "your return" can be measured five different ways depending on the question you are actually asking.

**The Five Bond Yield Measures — Which Question Does Each One Answer?**
| Yield Type | Question It Answers |
| --- | --- |
| Current Yield | How much income do I get this year, relative to what I paid? |
| Yield to Maturity (YTM) | What's my annualized return if I hold to maturity? |
| Yield to Call (YTC) | What's my annualized return if the issuer calls the bond early? |
| Yield to Worst (YTW) | What's the worst-case annualized return across every scenario? |
| Holding Period Yield (HPY) | What's my return if I sell before maturity? |

_[Figure: Which Bond Yield Should You Calculate? — A quick decision path — most bond questions map to exactly one of these five formulas.]_

## Bond Yield Basics — Key Terms

**Key Terms You Need Before Calculating Anything**
| Term | Definition | Example |
| --- | --- | --- |
| Face Value (Par Value) | Amount paid back at maturity | $1,000 |
| Coupon Rate | Annual interest rate printed on the bond | 5% |
| Coupon Payment | Annual interest payment in dollars | $50 ($1,000 × 5%) |
| Market Price | What the bond currently trades for | $950 |
| Maturity | When the bond expires and pays back face value | 10 years |
| Yield | Your actual annualized return, given what you paid | 5.26%–6.38% depending on price and method |

Quick example: a bond has a $1,000 face value, a 5% coupon rate, and trades at $950. The annual coupon payment is $1,000 × 5% = $50. Current yield is $50 ÷ $950 = **5.26%**.

## Type 1: Current Yield

Current yield is the simplest bond yield calculation. It measures annual coupon income relative to the current market price — nothing more.

**Current Yield Formula**

```
Current Yield = Annual Coupon Payment ÷ Market Price
```

**Step-by-Step: $1,000 Face, 5% Coupon, $950 Market Price**
| Step | Action | Calculation |
| --- | --- | --- |
| 1 | Calculate annual coupon payment | Annual Coupon = Face Value × Coupon Rate = $1,000 × 5% = $50 |
| 2 | Apply the current yield formula | Current Yield = $50 ÷ $950 = 0.0526 |
| 3 | Convert to a percentage | 0.0526 × 100 = 5.26% |

_[Figure: Current Yield vs Price — Same $50 Coupon, Three Prices — The coupon payment never changes. Only the price you pay for it does — and that alone moves the yield.]_

> **The One Thing Current Yield Ignores** — Current yield only measures income — it completely ignores whether you will gain or lose money on the price when the bond matures or is sold. That is exactly what Yield to Maturity fixes.

### Example: A Bond Trading Above Par

A bond pays $60 annually and trades at $1,100. Current Yield = $60 ÷ $1,100 = **5.45%**. The coupon rate is 6% ($60 ÷ $1,000 face value), but the current yield is lower — 5.45% — because you are paying a $100 premium over face value for the same fixed $60 payment.

## Type 2: Yield to Maturity (YTM)

Yield to Maturity is the total annualized return you would earn if you held the bond to maturity and reinvested every coupon payment at that same rate. It is the single most-quoted bond yield figure because it folds coupon income and any capital gain or loss into one number.

**YTM — Exact Formula**

```
Price = Σ [Coupon ÷ (1 + YTM)^t] + [Face Value ÷ (1 + YTM)^n]
```
- t = each coupon period, from 1 to n
- n = total number of periods to maturity
- YTM is the discount rate that makes both sides equal — it must be solved by iteration, not algebra

> **Important** — There is no closed-form algebraic solution for YTM. It requires iteration — a financial calculator, spreadsheet function, or Newton-Raphson solver like the one behind our Bond Yield Calculator.

**Step-by-Step: $1,000 Face, 5% Coupon, 10 Years to Maturity, $950 Price**
| Step | Action | Detail |
| --- | --- | --- |
| 1 | Identify the inputs | Face Value = $1,000, Coupon = $50/yr, n = 10 years, Price = $950 |
| 2 | Set up the equation | $950 = $50/(1+YTM)¹ + $50/(1+YTM)² + … + $50/(1+YTM)¹⁰ + $1,000/(1+YTM)¹⁰ |
| 3 | Solve by iteration | A solver converges on the discount rate that balances both sides |
| Answer | — | YTM = 5.67% |

**Key Assumptions Behind YTM**
| Assumption | What It Means |
| --- | --- |
| Hold to maturity | You keep the bond for its full remaining term |
| Reinvest every coupon | Each coupon is reassumed to be reinvested at the same YTM rate |
| No default | The issuer pays every coupon and the full face value on time |

> **YTM Is a Scenario, Not a Guarantee** — If you sell early, reinvest coupons at a different rate, or the issuer defaults, your actual realized return will differ from the quoted YTM.

### Example: Premium Bond YTM

A bond with a 6% coupon rate, 10 years to maturity, trades at $1,100. Solving the YTM equation gives **YTM = 4.72%** — lower than the 6% coupon rate, because you are paying a $100 premium for the same fixed payments.

### Example: Discount Bond YTM

A bond with a 4% coupon rate, 10 years to maturity, trades at $900. Solving the YTM equation gives **YTM = 5.31%** — higher than the 4% coupon rate, because you are buying at a $100 discount to face value.

_[Figure: The Inverse Relationship: Bond Price vs Yield to Maturity — Same bond throughout — $1,000 face value, 5% coupon, 10 years to maturity — priced at five different market prices.]_

## Type 3: Yield to Call (YTC)

Yield to Call applies only to callable bonds — bonds the issuer can redeem before their stated maturity date. YTC prices the bond using coupon payments up to the call date and the call price (instead of face value) as the final cash flow.

**Step-by-Step: $1,000 Face, 6% Coupon, Callable in 5 Years at $1,050, Trading at $1,100**
| Step | Action | Detail |
| --- | --- | --- |
| 1 | Identify the inputs | Coupon = $60/yr, Call Date = year 5, Call Price = $1,050, Current Price = $1,100 |
| 2 | Set up the equation | $1,100 = $60/(1+YTC)¹ + … + $60/(1+YTC)⁵ + $1,050/(1+YTC)⁵ |
| 3 | Solve by iteration | Same solver method as YTM, but with the call date and call price |
| Answer | — | YTC = 4.63% |

Yield to Worst (YTW) is simply the lower of YTM and YTC — the most conservative, plan-around number for a callable bond.

**YTM vs YTC — Two Fully Worked Comparisons**
| Bond Scenario | YTM | YTC | Yield to Worst |
| --- | --- | --- | --- |
| Premium: 6% coupon, 10-yr bond at $1,100, callable in 5 yrs at $1,050 | 4.72% | 4.63% | 4.63% (YTC is lower) |
| Discount: 4% coupon, 10-yr bond at $900, callable in 5 yrs at $1,020 | 5.31% | 6.77% | 5.31% (YTM is lower) |

> **Key Insight** — A premium bond is more likely to actually get called, so its YTC tends to be the binding (lower) number. A discount bond is unlikely to be called — its issuer has no incentive to redeem early at a low price — so YTM stays the relevant, lower figure.

## Type 4: Holding Period Yield (HPY)

Holding Period Yield measures your actual return if you sell a bond before maturity, combining coupon income already collected with any gain or loss on the sale price.

**Holding Period Yield Formula**

```
HPY = (Coupon Income + Sale Price − Purchase Price) ÷ Purchase Price
```

**Step-by-Step: Bought at $950, Collected $50 Coupon, Sold at $980**
| Step | Action | Calculation |
| --- | --- | --- |
| 1 | Identify the inputs | Purchase Price = $950, Coupon Income = $50, Sale Price = $980 |
| 2 | Apply the formula | HPY = ($50 + $980 − $950) ÷ $950 = $80 ÷ $950 = 0.0842 |
| 3 | Convert to a percentage | 0.0842 × 100 = 8.42% |

_[Figure: Where the $80 Total Gain Actually Came From — Same holding-period example — $50 coupon collected, $30 capital gain from selling above the purchase price.]_

To annualize a holding period yield for a term shorter than a year, compound it up: if the 8.42% return above was earned over 6 months, Annualized HPY = (1 + 0.0842)^(12/6) − 1 = **17.55%**.

## Clean Price vs Dirty Price — The Hidden Settlement Trap

Why does a bond yield look right on a broker screen and then not match the actual settlement statement? The answer almost always sits in the price convention being used.

**Clean Price vs Dirty Price**
| Price Type | Definition | Includes Accrued Interest? |
| --- | --- | --- |
| Clean Price | The quoted price you see on a broker screen | No |
| Dirty Price | The actual settlement price you pay | Yes |

**Dirty Price and Accrued Interest**

```
Dirty Price = Clean Price + Accrued Interest
```
- Accrued Interest = (Annual Coupon Payment ÷ 365) × Days Since Last Coupon

**Step-by-Step: $50 Annual Coupon, Last Coupon 90 Days Ago, Clean Price $950**
| Step | Action | Calculation |
| --- | --- | --- |
| 1 | Calculate the daily coupon | $50 ÷ 365 = $0.137/day |
| 2 | Calculate accrued interest | $0.137 × 90 days = $12.33 |
| 3 | Calculate the dirty price | $950 + $12.33 = $962.33 |

_[Figure: Clean Price Screen Quote vs What You Actually Pay — The gap between the two grows the closer you buy to the next coupon date.]_

## How to Calculate Bond Yield in Excel

Excel's built-in YIELD() function solves the same iterative equation as YTM, but instantly — genuinely useful for spreadsheet-based portfolio tracking, and it is the same math our [Bond Yield Calculator](/calculators/bond-yield-calculator) runs behind the scenes.

**Excel YIELD Function**

```
=YIELD(settlement, maturity, rate, pr, redemption, frequency, [basis])
```
- settlement — the trade/settlement date
- maturity — the bond's maturity date
- rate — the annual coupon rate
- pr — the current price per $100 of face value
- redemption — the redemption value per $100 of face value (100 for face value)
- frequency — coupon payments per year (1 = annual, 2 = semi-annual, 4 = quarterly)
- basis — day-count convention (optional)

**Worked Excel Example**

```
=YIELD(TODAY(), DATE(2036,8,15), 0.05, 95, 100, 1, 1)
```
- A 5% annual-coupon bond, trading at 95 (i.e. $950 per $1,000 face), maturing in 10 years — returns YTM ≈ 5.67%, matching the manual calculation above.

For simpler fixed-period annuity-style problems, Excel's RATE() function works too: `=RATE(nper, pmt, pv, fv, [type])`.

**Same Bond, Solved on a Financial Calculator**
| Step | Key | Value |
| --- | --- | --- |
| 1 | N (periods) | 10 |
| 2 | PV (negative of price) | -950 |
| 3 | PMT (coupon) | 50 |
| 4 | FV (face value) | 1000 |
| 5 | Solve for I/Y | 5.67% |

## Real-World Bond Yield Examples

**Example 1: 10-Year US Treasury Bond**
| Field | Value |
| --- | --- |
| Face Value | $1,000 |
| Coupon | 4.5% ($45/yr) |
| Price | $980 |
| Current Yield | $45 ÷ $980 = 4.59% |
| YTM (10 years) | 4.76% |

**Example 2: 10-Year Corporate Bond, Trading at a Premium**
| Field | Value |
| --- | --- |
| Face Value | $1,000 |
| Coupon | 6.0% ($60/yr) |
| Price | $1,050 (premium) |
| Current Yield | $60 ÷ $1,050 = 5.71% |
| YTM (10 years) | 5.34% |

**Example 3: Callable Corporate Bond**
| Field | Value |
| --- | --- |
| Face Value | $1,000 |
| Coupon | 5.5% ($55/yr) |
| Price | $1,080 |
| Original Maturity | 10 years |
| Callable In | 5 years at $1,040 |
| YTM | 4.49% |
| YTC | 4.41% |
| Yield to Worst | 4.41% (the lower of the two) |

## Practice Questions (With Verified Answers)

**Bond Yield Practice Problems**
| # | Problem | Answer |
| --- | --- | --- |
| 1 | A bond has a $1,000 face value, a 4% coupon rate, and trades at $950. What is the current yield? | $40 ÷ $950 = 4.21% |
| 2 | A bond pays $60 annually, matures in 8 years, has a $1,000 face value, and trades at $980. Estimate the YTM using the approximation formula: [C + (F−P)÷n] ÷ [(F+P)÷2]. | ($60 + $2.50) ÷ $990 ≈ 6.31% |
| 3 | A callable bond has a 6% coupon, matures in 10 years, is callable in 4 years at $1,030, and trades at $1,100. What is the YTC? | ≈ 3.95% |
| 4 | You buy a bond for $1,000, collect $50 in coupons, and sell it for $1,050. What is your holding period yield? | ($50 + $1,050 − $1,000) ÷ $1,000 = 10% |
| 5 | A bond has a clean price of $940 and $15 of accrued interest. What is the dirty price? | $940 + $15 = $955 |

## Common Bond Yield Calculation Mistakes

_[Figure: Bond Yield Calculation Mistakes vs Corrections — These specific slip-ups show up constantly in coursework and in real settlement statements.]_

## Final Summary — The Five Formulas at a Glance

**Every Bond Yield Formula in One Table**
| Yield Type | Formula |
| --- | --- |
| Current Yield | Annual Coupon ÷ Market Price |
| Yield to Maturity | Discount rate solving Price = Σ Coupon/(1+YTM)^t + Face/(1+YTM)^n |
| Yield to Call | Same as YTM, but using the call date and call price |
| Yield to Worst | The lower of YTM and YTC |
| Holding Period Yield | (Coupon Income + Sale Price − Purchase Price) ÷ Purchase Price |
| Dirty Price | Clean Price + Accrued Interest |

**Quick Reference — Same Bond ($1,000 Face, 5% Coupon, 10-Year Maturity) at Three Prices**
| Bond Price | Current Yield | YTM |
| --- | --- | --- |
| At Par ($1,000) | 5.00% | 5.00% |
| Premium ($1,050) | 4.76% | 4.37% |
| Discount ($950) | 5.26% | 5.67% |

## Related Bond & Fixed-Income Resources

- [Bond Yield Calculator](/calculators/bond-yield-calculator) — YTM, current yield, and Macaulay/Modified duration, solved instantly.
- [Bond Yield Calculator: A Complete Guide to YTM & Absolute Returns](/blog/finance/bond-yield-ytm-complete-guide) — a deeper dive into YTM math, absolute returns, and the price-yield relationship.
- [Bond Duration & Interest Rate Risk Explained](/blog/finance/bond-duration-interest-rate-risk-guide) — what Macaulay and Modified duration actually measure, and why they matter more than YTM when rates move.
- [Treasury vs Corporate vs Municipal Bonds](/blog/finance/treasury-vs-corporate-vs-municipal-bonds) — how yield, credit risk, and taxes differ across the three main bond types.
- [Bond Funds vs Individual Bonds](/blog/finance/bond-funds-vs-individual-bonds) — which structure actually fits your holding period and risk tolerance.
- [Compound Interest Calculator](/calculators/compound-interest-calculator) — see how reinvested coupons compound over the holding period.
- [CAGR Calculator](/calculators/cagr-calculator) — measure annualized growth between any starting and ending value.
- [ROI Calculator](/calculators/roi-calculator) — calculate return on investment for any holding period, bond or otherwise.

**What is bond yield?**

Bond yield is the return an investor earns from holding a bond. It is not one number — it is measured several ways: current yield, yield to maturity, yield to call, yield to worst, and holding period yield.

**What is the difference between current yield and YTM?**

Current yield only measures annual coupon income relative to price. YTM measures your total annualized return if held to maturity, including any capital gain or loss between your purchase price and face value.

**How do you calculate bond yield?**

It depends which yield you need. Current Yield = Annual Coupon ÷ Market Price. YTM requires solving Price = Σ Coupon/(1+YTM)^t + Face/(1+YTM)^n by iteration — a calculator or spreadsheet function handles this instantly.

**What is the YTM formula?**

YTM is the discount rate that makes the present value of every future coupon and the final face-value payment equal to the bond's current price. There is no algebraic shortcut — it must be solved by iteration.

**What is yield to call and when do I need it?**

Yield to call is the return you would earn if a callable bond is redeemed by the issuer on its earliest call date, using the call price instead of face value. Calculate it any time a bond is callable — especially when it trades at a premium, since premium bonds are more likely to actually get called.

**What is yield to worst?**

Yield to worst is the lower of yield to maturity and yield to call (and any other applicable scenario). It is the most conservative number to plan around for a callable bond.

**What is holding period yield?**

Holding period yield measures your actual return if you sell a bond before maturity — coupon income collected plus any gain or loss on the sale price, divided by your purchase price.

**What is the difference between clean price and dirty price?**

Clean price is the quoted price you see on a broker screen, excluding accrued interest. Dirty price is the actual settlement price you pay, which adds accrued interest since the last coupon date.

**How do I calculate accrued interest on a bond?**

Accrued Interest = (Annual Coupon Payment ÷ 365) × Days Since the Last Coupon Payment. Add it to the clean price to get the dirty (settlement) price.

**How do I calculate bond yield in Excel?**

Use the YIELD() function: =YIELD(settlement, maturity, rate, pr, redemption, frequency). It returns the same result as solving the YTM equation by iteration, but instantly.

**Why do bond prices and yields move in opposite directions?**

The coupon payment is fixed once a bond is issued. When the price rises, that same fixed payment represents a smaller percentage return, so yield falls — and vice versa when price falls.

**Is this bond yield guide free to use?**

Yes — completely free, with no registration required, alongside the Bond Yield Calculator linked throughout this guide.

---

_Source: [Do The Calculation](https://dothecalculation.com/blog/finance/how-to-calculate-bond-yield). Quote freely with attribution and a link to this page._
