BedrockCalculator
Verified Primary-Source MathematicsVerified by Aapt Dubey, MBA (Marketing & Finance) 2 primary sourcesLast updated September 14, 2026

Bond Yield to Maturity (YTM) Calculator

Quick Answer: A 10-year, 5% coupon bond with a $1,000 face value trading at $950 has a current yield of 5.26% and an exact, semiannual-compounding yield to maturity of 5.66%, solved iteratively rather than estimated with a shortcut formula.

Assumptions

Loading
$
$
%
yrs

Preset scenarios

Yield to Maturity (YTM)
5.66%

Every period in the schedule below reconciles to the exact penny.

Current Yield (%)
5.26%
Annual Coupon ($)
$50.00
Total Lifetime Interest
$500.00
Modified Duration
7.71 yrs
Convexity
72.41

Cumulative Cash Flows Over Maturity

Total Cash FlowPrincipal RepaidCoupon Interest
10 periods, peak $1,050

Bond Cash Flow Schedule

Showing 10 rows.

YearTotal Cash FlowPrincipal RepaidCoupon Interest
1$50.00$0.00$50.00
2$50.00$0.00$50.00
3$50.00$0.00$50.00
4$50.00$0.00$50.00
5$50.00$0.00$50.00
6$50.00$0.00$50.00
7$50.00$0.00$50.00
8$50.00$0.00$50.00
9$50.00$0.00$50.00
10$1,050.00$1,000.00$50.00
Cumulative Cash Flows Over Maturity: Total Cash Flow, Principal Repaid, Coupon Interest across 10 periods for this calculator's default example, peaking at $1,050.00.
Drawn from this calculator's own default inputs, where Yield to Maturity (YTM) is 5.66%. Change the inputs above to see your own figures.
Quick Answer: A 10-year, 5% coupon bond with a $1,000 face value trading at $950 has a current yield of 5.26% and an exact, semiannual-compounding yield to maturity of 5.66%, solved iteratively rather than estimated with a shortcut formula.

Overview

A bond's coupon rate tells you what percentage of face value it pays out each year, but it does not tell you what you actually earn if you buy the bond below or above par. Current yield and yield to maturity (YTM) are the two standard ways of translating a bond's price, coupon, and time to maturity into a single comparable return figure. Current yield is the simpler of the two: just annual coupon income divided by what you paid. Yield to maturity is more complete because it also captures the capital gain or loss you realize if you hold the bond until it pays back face value at maturity, discounted at a semiannual compounding convention that matches how most U.S. bonds actually pay.

This calculator computes current yield, the exact YTM, the annual coupon payment in dollars, total coupon cash collected over the bond's life, and the bond's modified duration and convexity, using the bond's par value, current market price, annual coupon rate, and years to maturity as inputs.

How This Is Calculated

Annual coupon payment:

Annual Coupon=Par Value×Coupon Rate\text{Annual Coupon} = \text{Par Value} \times \text{Coupon Rate}

Current yield, the simplest income-only measure:

Current Yield=Annual CouponCurrent Price×100\text{Current Yield} = \frac{\text{Annual Coupon}}{\text{Current Price}} \times 100

Exact yield to maturity, solved iteratively (Newton-Raphson) rather than estimated with a closed-form shortcut. YTM is the discount rate $y$ that makes the present value of every remaining coupon and the final principal repayment, compounded semiannually, equal to today's market price:

P=∑t=12nC/2(1+y2)t+F(1+y2)2nP = \sum_{t=1}^{2n} \frac{C/2}{\left(1+\dfrac{y}{2}\right)^{t}} + \frac{F}{\left(1+\dfrac{y}{2}\right)^{2n}}

where $P$ is the current market price, $C$ is the annual coupon in dollars, $F$ is face (par) value, $n$ is years to maturity, and $y$ is the annualized yield to maturity being solved for. There is no algebraic way to isolate $y$ directly, so the calculator solves it numerically, iterating until the modeled price converges to the actual market price to within a fraction of a cent. This is the same semiannual-compounding convention a brokerage bond-pricing screen uses, so the figure this calculator shows should match what you'd see there for the same inputs.

Modified duration and convexity are also computed from the solved YTM: modified duration approximates the percentage price change for a 1% shift in yield, and convexity captures the curvature the linear duration estimate misses, more important for large yield moves or long-maturity bonds.

Bond cash flow schedule. The schedule table walks through each year from 1 to maturity, showing the annual coupon received and, in the final year, the coupon plus the return of the full face value.

Worked Example

A $1,000 par bond paying a 5.0% coupon with ten years left is quoted at $950. The buyer wants to know what they are actually earning, and why the two published yields disagree.

Step 1 -- The annual coupon. $1,000 par x 5.0% = $50 a year

Step 2 -- Current yield. $50 / $950 = 5.26%

Current yield sees the coupon and the price paid, and nothing else. It is blind to the fact that the bond redeems at $1,000.

Step 3 -- The pull to par. $1,000 face - $950 price = $50 of capital gain accruing over ten years

Step 4 -- Yield to maturity. The semiannual discount rate that reprices all coupons plus the $1,000 redemption back to $950, solved by Newton-Raphson = 5.66%

Step 5 -- The gap between the two yields. 5.66% - 5.26% = 0.40 points, which is step 3 annualised

Step 6 -- Total coupon cash over the holding period. $50 x 10 years = $500

Step 7 -- Modified duration. = 7.71 years

Step 8 -- The price move a 1-point yield rise implies. 7.71 x 1 point = roughly 7.7% price fall, before the convexity adjustment

Step 9 -- Convexity. = 72.41, the curvature term that makes step 8 slightly pessimistic on a rise and slightly conservative on a fall

Two Sanity Checks at Other Prices

A bond bought at par. A 5-year, 6.0% coupon bond priced at $1,000 has no pull to par at all, so current yield and YTM both come out at exactly 6.00%. A par bond's YTM always equals its coupon, whatever the maturity, and that identity is the quickest way to confirm a yield engine is behaving.

A bond bought at a premium. A 15-year, 7.5% coupon bond priced at $1,100 reverses the discount case. Current yield is 6.82%, but YTM is only 6.45%, because the holder will bleed $100 of price back down to par by maturity. Current yield reports the coupon and ignores that loss entirely, which is precisely why quoting current yield on a premium bond flatters it.

The Cash Flows Adding Up to the Yield

The 5.66% in step 4 is a rate, and rates are hard to sanity-check. The cash flow schedule behind it is not.

Step 10 -- Year 1. Coupon received $50.00, principal returned $0.00, cumulative coupons $50.00

Step 11 -- Year 2. Another $50.00 coupon, cumulative coupons $100.00

Step 12 -- Year 10, the redemption year. Coupon $50.00 plus $1,000.00 of par, a total cash flow of $1,050.00

Step 13 -- Total coupons across the ten years. $50.00 x 10 = $500.00

Step 14 -- Total cash returned against the price paid. $500.00 of coupons plus $1,000.00 of par = $1,500.00 against a $950.00 purchase, a gain of $550.00

Coupons supply $500.00 of the $550.00 gain and the pull to par supplies the other $50.00, and that split is why current yield misses so much: it counts the coupons and ignores the redemption. The schedule also makes the reinvestment assumption visible. Yield to maturity assumes every one of those ten $50.00 coupons is reinvested at 5.66%, and if they sit in cash instead, the realised return falls short of the quoted yield even though the bond performed exactly as promised.

What This Does Not Account For

  • Accrued interest and dirty price. If you buy a bond between coupon dates, the settlement price includes accrued interest owed to the seller; this calculator assumes a clean, coupon-date purchase.
  • Callable, puttable, or convertible features. Yield to call, yield to put, or conversion value calculations are not modeled; this tool assumes a plain-vanilla bond held to stated maturity.
  • Credit risk and default probability. The yield figures shown are purely mechanical outputs of price, coupon, and time; they say nothing about the issuer's ability to actually make those payments.
  • Reinvestment risk. YTM implicitly assumes every coupon payment gets reinvested at that same yield until maturity, which is rarely true in practice as rates move over time.
  • Tax treatment. Municipal bond interest, original issue discount rules, and market discount accretion can all change a bond's after-tax return in ways this pre-tax yield calculation does not capture.

Common Pitfalls

  • Treating current yield as your total return. Current yield ignores the capital gain or loss embedded in buying below or above par, which is exactly what YTM is designed to capture. On a discount bond, current yield understates your real return; on a premium bond, it overstates it.
  • Confusing modified duration with maturity. A 10-year bond does not have 10 years of duration; duration is shorter than maturity for any coupon-paying bond because some value returns to the investor before the final payment.
  • Forgetting that YTM assumes reinvestment at the same rate. The YTM calculation implicitly assumes every coupon payment gets reinvested at the same yield, which is rarely true in practice as rates move over time.
  • Ignoring call risk on premium bonds. A bond priced well above par is often a candidate for early redemption by the issuer if it is callable, which would cut short the holding period this calculator assumes and change the real return.
  • Comparing bonds with different maturities purely on YTM. A higher YTM on a much longer-maturity bond also carries more interest rate risk (higher duration); yield alone does not capture that risk difference.

Frequently Asked Questions

What is the difference between current yield and yield to maturity?
Current yield only measures annual coupon income relative to the price you paid. Yield to maturity additionally accounts for the capital gain or loss you realize when the bond returns its full face value at maturity, making YTM the more complete return measure for a buy-and-hold investor.
Is this calculator's YTM the exact same figure a brokerage would show?
It should be very close. This calculator solves for the exact yield that discounts all future coupon and principal cash flows, semiannually compounded, back to today's price, the same convention used for most U.S. Treasury and corporate bonds. Small differences from a specific brokerage statement can still arise from day-count conventions, accrued interest on a between-coupon-dates purchase, or rounding.
Does a bond trading above par always mean a bad investment?
No. A premium bond simply has a coupon rate above prevailing market yields, which is why buyers are willing to pay more than face value for it. The current yield and YTM figures already account for the fact that the price will pull back toward par by maturity, capturing the full economics of the trade-off.
What do modified duration and convexity actually tell me?
Modified duration is a first-order estimate: for every 1 percentage point change in yield, the bond's price is expected to move by roughly that many percent in the opposite direction. Convexity is a second-order correction, since duration alone understates gains on falling yields and overstates losses on rising yields; the effect grows for longer-maturity bonds and larger yield swings.
Can I use this calculator for zero-coupon bonds?
Set the annual coupon rate to 0%. Current yield will show 0% since there is no coupon income, while YTM will still solve correctly, reflecting purely the discount between purchase price and the face value paid at maturity.

Sources

Also consulted: Fabozzi, F.J., "Bond Markets, Analysis, and Strategies," standard reference for yield measures and duration; Securities Industry and Financial Markets Association (SIFMA), U.S. bond market conventions.

Did this calculator answer your question?

Add This Website as Preferred Source on Google

See Bedrock Calculator first in your Search results & AI Overviews