How to Calculate Bond Yield to Maturity (YTM)

To calculate the bond yield to maturity, you solve for the discount rate that makes the present value of every future coupon payment plus the face value returned at maturity equal to what you pay for the bond today. There are three practical ways to do it: a quick approximation formula that gets you within a fraction of a percentage point, an iterative trial-and-error method that finds the exact answer, and spreadsheet software that handles the iteration automatically. A bond bought for $900 with a $1,000 face value, a 5% coupon, and five years left to maturity has an approximate YTM of about 7.4%, not 5%, because the $100 discount at maturity gets added to your coupon income.

The Five Inputs Every Calculation Uses

Getting any of these wrong ruins the result, so this step matters more than the math.

  • Current market price (P): the amount you actually pay, expressed either in dollars or as a percentage of face value. A bond quoted at 95 costs $950 per $1,000 of face value.
  • Face or par value (F): the amount the issuer repays at maturity. Most corporate and Treasury bonds use $1,000.
  • Annual coupon rate: the stated interest rate. Multiply by face value to get the dollar amount paid each year. A 6% coupon on a $1,000 bond pays $60 annually.
  • Years to maturity (n): the time remaining until the issuer returns the face value.
  • Payment frequency: how often coupons arrive. Nearly all U.S. corporate and Treasury bonds pay semi-annually, which changes how you set up the formula.

These details sit on the bond’s prospectus, on TreasuryDirect for government securities, or inside most brokerage platforms.

Watch for Clean Price vs. Dirty Price

U.S. bond prices are typically quoted “clean,” meaning they strip out interest that has accrued since the last coupon payment. When money changes hands, you pay the “dirty” price: clean price plus accrued interest owed to the seller. YTM uses the price you actually pay, so buying between coupon dates slightly lowers your effective yield compared to the quoted price. If a bond pays a $30 semi-annual coupon and the seller held it for 120 of the 180 days in the period, you owe them $30 × (120 / 180) = $20 of accrued interest on top of the quoted price.

The Approximation Formula

When you want a fast answer, this shortcut gets you close:

Approximate YTM = [C + (F − P) / n] / [(F + P) / 2]

The numerator adds your annual coupon income to the annualized gain or loss from the price difference spread over the remaining years. The denominator averages face value and purchase price, which stands in for your average capital at risk.

Worked Example

You buy a bond for $900 with a $1,000 face value, a 5% coupon, and 5 years to maturity. The annual coupon is $1,000 × 5% = $50.

  • Numerator: $50 + ($1,000 − $900) / 5 = $50 + $20 = $70
  • Denominator: ($1,000 + $900) / 2 = $950
  • Approximate YTM: $70 / $950 = 7.37%

That 7.37% captures both the coupon income and the $100 built-in gain you realize at maturity. The true YTM, solved iteratively, comes in slightly higher, but the approximation is close enough to screen potential purchases.

The formula works best for bonds priced near par with moderate maturities. It becomes less reliable for deep-discount bonds, very long maturities, or high coupon rates, because the averaging in the denominator doesn’t fully account for compounding over long horizons. For those, move to the iterative method or a spreadsheet.

The Full Present-Value Formula

YTM is the discount rate that makes the present value of all future cash flows equal to the current market price. For a bond paying annual coupons:

P = C / (1 + YTM) + C / (1 + YTM)² + C / (1 + YTM)³ + … + C / (1 + YTM)ⁿ + F / (1 + YTM)ⁿ

Each future cash flow gets divided by a progressively larger power of (1 + YTM), reflecting the principle that money received sooner is worth more than money received later.

For semi-annual bonds, halve the coupon, halve the YTM, and double the number of periods. A 6% coupon bond with 10 years to maturity becomes 20 periods of $30 payments discounted at YTM/2 per period.

The catch: YTM appears in every denominator and can’t be isolated algebraically. You can’t rearrange the equation and solve. That’s why the practical paths forward are either the approximation above or the iteration below.

The Iterative Method

The exact YTM requires plugging in a guess, checking whether the resulting price matches the market price, and adjusting.

Start with the approximation result as your first guess. Plug that rate into the full present-value formula and calculate what the bond’s price would be at that discount rate. If the calculated price comes out higher than the actual market price, your guess is too low: a lower discount rate inflates present values. Raise the rate and try again. If the calculated price is too low, your rate is too high, so lower it.

Keep narrowing the gap. Once you have two rates that bracket the market price, one producing a price slightly above and one slightly below, use linear interpolation to zero in on the answer. Financial calculators and Excel do exactly this behind the scenes; they just run through the iterations faster.

Each pass of this calculation also demonstrates the inverse relationship between rates and prices: raising the discount rate drops the computed price, and lowering it lifts the price.

Using Excel or Google Sheets

The YIELD function automates the entire iterative process:

YIELD(settlement, maturity, rate, pr, redemption, frequency, [basis])

  • Settlement: the date you buy the bond.
  • Maturity: the date the bond expires.
  • Rate: the annual coupon rate as a decimal (0.05 for 5%).
  • Pr: the price per $100 of face value (90 for a bond trading at $900 per $1,000 par).
  • Redemption: the redemption value per $100 of face value, usually 100.
  • Frequency: coupon payments per year. Enter 1 for annual, 2 for semi-annual, 4 for quarterly.
  • Basis (optional): the day-count convention. Enter 0 for the standard U.S. 30/360 convention, or 1 for actual/actual, which is common for Treasuries.

For the earlier example (settlement 12/31/2025, maturity 12/31/2030, 5% coupon, price 90, redemption 100, semi-annual), the YIELD function returns the annualized YTM directly.

Zero-Coupon Bonds: The One Case You Can Solve Directly

Zero-coupon bonds don’t pay periodic interest. You buy them at a discount and receive the face value at maturity. Because there’s only one future cash flow, the formula collapses to a single equation you can solve without iteration:

YTM = (F / P)^(1/n) − 1

If you pay $750 for a zero-coupon bond with a $1,000 face value maturing in 5 years:

YTM = ($1,000 / $750)^(1/5) − 1 = (1.3333)^(0.2) − 1 = 5.92%

That 5.92% is the exact YTM, not an approximation.

YTM vs. Current Yield

Current yield measures something narrower than YTM. It’s just the annual coupon divided by the current price:

Current Yield = Annual Coupon / Market Price

For the $900 bond with a $50 coupon, current yield is $50 / $900 = 5.56%. That number ignores the $100 gain you’ll pocket at maturity and the time value of money. YTM, at roughly 7.37%, captures both the income and the capital gain, which is why it’s the standard for comparing bonds. The gap between the two widens as the price moves further from par. At exactly $1,000, the two numbers match because there’s no gain or loss at maturity.

Callable Bonds: Why YTM Might Not Describe Your Real Return

Many corporate bonds include a call provision that lets the issuer redeem the bond early, usually at a slight premium to face value. If your bond gets called, you don’t hold it to maturity, and your actual return differs from the YTM you calculated.

Yield to call (YTC) uses the same present-value framework, but replaces the maturity date with the call date and the face value with the call price. The structure is identical and requires the same iterative solving.

Yield to worst (YTW) is the lowest yield among all possible call dates and the maturity date. If a bond has three call dates and a maturity date, you calculate four yields and take the smallest. Issuers tend to call when rates drop so they can refinance cheaper, which means the call scenario that hurts you most is usually the one that happens. For callable bonds, yield to worst is the more conservative measure.

What the YTM Number Does and Doesn’t Promise

A common claim is that YTM “assumes you reinvest every coupon at the same rate.” The formula itself is just a discount rate calculation. There’s no compounding or reinvestment happening inside the equation.

Reinvestment enters the picture when you look at your realized return. To actually earn the YTM over the bond’s life, you’d need to reinvest each coupon at the YTM rate. Reinvest at a higher rate and your total return beats the YTM; reinvest at a lower rate and you fall short. This gap is called reinvestment risk, and it’s larger for high-coupon, long-maturity bonds because more of the total return depends on what happens to coupons after you receive them.

Zero-coupon bonds sidestep this entirely. With no coupons to reinvest, the YTM is exactly the return you earn if you hold to maturity.