Yield to Maturity Calculator

Calculate annual yield to maturity from a bond's clean price, coupon, settlement date, maturity date, and day count method.

Advanced options
Calculating bond yield...
Yield to maturity (annual)This annual rate makes the scheduled future payments match the dirty price today.
Dirty price used for yieldDirty price is the clean price plus accrued interest.
Accrued interest added to clean priceThis is coupon interest earned from the previous coupon date to settlement.
Clean price compared with redemption value
Current yield from clean priceCurrent yield ignores the gain or loss between the clean price and final redemption value.
Coupon payment each period
Future payments counted
First payment date used
Coupon-date cash flow scheduleThe final payment includes the redemption value.
Payment dateCash flowValue today
Did we solve your problem today?


How to use our Yield to Maturity Calculator

  1. Enter the Clean bond price, Face value paid at maturity, and Annual coupon rate from the bond quote or assignment.
  2. Choose Coupon payments each year, then enter the Settlement date and Maturity date used for the purchase and final payment.
  3. Open Advanced options only if you need to change Day count method or enter a Redemption value at maturity that is different from face value.
  4. Click Calculate and read Yield to maturity (annual) first, then check Dirty price used for yield and Accrued interest added to clean price.
  5. Sanity-check the output: Future payments counted should match the number of remaining coupon dates, and the final row in Coupon-date cash flow schedule should include the last coupon plus redemption value.
Example inputs for Yield to Maturity Calculator
Example inputs for Yield to Maturity Calculator

Definitions

Yield to maturity: The annual rate that makes the scheduled future bond payments equal the dirty price paid today. Bond yields and prices usually move in opposite directions [1].

Clean bond price: The quoted bond price before accrued interest is added.

Dirty price: The clean price plus accrued interest. This is the price used in the yield equation.

Accrued interest: Coupon interest earned since the last coupon date but not yet paid.

Coupon payment: The interest cash payment made on each coupon date.

Face value: The principal amount normally paid back at maturity.

Redemption value: The principal amount assumed to be paid on the final date. It can differ from face value for some examples.

Day count method: The rule used to turn dates into fractions of a coupon period, such as actual calendar days or 30/360 US.

Current yield: Annual coupon dollars divided by clean price. It does not include the gain or loss from moving toward redemption value.


Bond Price and YieldApproximate annual YTM for a 5-year, 6% coupon, $1,000 face-value bond bought on a coupon date. Lower bond prices generally imply higher yields when coupon and maturity stay the same.Bond Price and YieldApproximate annual YTM for a 5-year, 6% coupon, $1,000 face-value bond bought on a coupon date9507.2 %10006 %10504.8 %Bond price ($)
Bond Price and Yield
Lower bond prices generally imply higher yields when coupon and maturity stay the same.

Common mistakes and quick fixes

Mistake: Entering the invoice price in Clean bond price instead of the quoted clean price.
Fix: Use Clean bond price before accrued interest; the calculator adds Accrued interest added to clean price to get Dirty price used for yield.

Mistake: Typing a yield estimate into Annual coupon rate.
Fix: Enter the bond's stated Annual coupon rate; Yield to maturity (annual) is the answer the calculator solves for.

Mistake: Choosing the wrong Coupon payments each year, such as once per year for a semiannual bond.
Fix: Match Coupon payments each year to the bond's actual coupon schedule because it changes Coupon payment each period and Future payments counted.

Mistake: Using the trade date instead of the Settlement date.
Fix: Enter the Settlement date when the bond purchase settles, since accrued interest and First payment date used depend on that date.

Mistake: Leaving Redemption value at maturity blank when the bond pays back something other than face value.
Fix: Enter Redemption value at maturity if it differs from Face value paid at maturity; blank means the calculator uses face value.

Mistake: Setting Coupon payments each year to Zero-coupon bond while keeping a positive Annual coupon rate.
Fix: For a zero-coupon bond, use 0 for Annual coupon rate so the Coupon-date cash flow schedule has only the redemption payment.


Limitations & Key Assumptions / Boundary Conditions

  • The calculator assumes a regular coupon schedule built backward from the Maturity date using the selected Coupon payments each year.
  • Yield to maturity assumes all scheduled cash flows are paid on time and held to maturity; it does not include default risk, taxes, call features, reinvestment rates, broker fees, or bid-ask spread.
  • Clean bond price, Face value paid at maturity, and Redemption value at maturity are treated as dollar amounts for the same bond position, usually one bond with a $1,000 face value.
  • Day count method affects accrued interest and the first partial coupon period. Actual days and 30/360 US can give slightly different dirty prices and yields.
  • A negative Yield to maturity (annual) is possible when the Dirty price used for yield is high compared with the scheduled payments.
  • Very long schedules are limited by the calculator's payment-count cap, so unusually frequent payments over very long horizons may be rejected.

Methodology

How the bond cash flows are built

The calculator starts with the Settlement date and Maturity date. For coupon bonds, it steps backward from the maturity date by the coupon interval, then keeps future coupon dates after settlement through maturity. If settlement is exactly on a coupon date, accrued interest is set to 0 and that date is treated as the previous coupon date, not a future payment date.

coupon_interval_months = 12 / coupon_frequency

coupon_payment = face_value * (annual_coupon_rate / 100) / coupon_frequency

For a zero-coupon bond, coupon payment is 0 and only the redemption value is discounted.

Clean price, accrued interest, and dirty price

Bond quotes often use clean price, but yield to maturity is solved from dirty price. The calculator adds accrued interest based on the selected day count method.

accrued_interest = coupon_payment * day_count(previous_coupon_date, settlement_date) / day_count(previous_coupon_date, next_coupon_date)

dirty_price = clean_price + accrued_interest

With Actual days, the day count is the number of calendar days in each part of the coupon period. With 30/360 US, each full year has 360 days and each full month has 30 days, with standard end-of-month adjustments.

days_30_360 = 360 * (year2 - year1) + 30 * (month2 - month1) + (day2_adjusted - day1_adjusted)

Yield and current yield

Current yield is simpler than yield to maturity. It compares annual coupon dollars with the clean price, but it ignores any gain or loss from the price moving to redemption value [1].

current_yield_percent = 100 * (face_value * annual_coupon_rate / 100) / clean_price

For coupon bonds, the calculator solves the present-value equation numerically. Each future cash flow is discounted by its number of coupon periods from settlement. The final cash flow includes the last coupon plus the redemption value.

dirty_price = add(cash_flow_i / (1 + ytm_annual / (100 * coupon_frequency)) ^ periods_i)

periods_i = first_period_fraction + i - 1

first_period_fraction = day_count(settlement_date, next_coupon_date) / day_count(previous_coupon_date, next_coupon_date)

For a zero-coupon bond, the calculator can use the direct annual compound return formula instead of the coupon-bond solver.

ytm_annual_percent = 100 * ((redemption_value / dirty_price) ^ (1 / years_to_maturity) - 1)

Mini-example

Suppose the clean price is $980, face value is $1,000, the annual coupon rate is 6%, coupons are paid twice per year, settlement is 2026-04-01, maturity is 2028-01-01, and the day count method is Actual days. The coupon payment is $30. The prior coupon date is 2026-01-01 and the next coupon date is 2026-07-01, so accrued interest is about $14.92. Dirty price is $994.92, and solving the future coupon and redemption cash flows gives a yield to maturity of about 7.23% annually.


Sources