Yield to Maturity Solver Calculator
Solve numerically for a bond’s yield to maturity from its market price using bisection — the single rate that equates price to discounted cash flows.
How it works
Solve for y in: Price = C·[1 − (1 + y)^−n]/y + F·(1 + y)^−n · YTM = y × freq (found by bisection)
Yield to maturity is the single discount rate that makes the present value of a bond’s coupons and face value equal its market price. There is no algebraic solution, so this tool searches for it numerically with bisection — repeatedly halving an interval known to contain the answer until the price matches to a fraction of a cent. When the price is below par the yield exceeds the coupon; when it is above par the yield is lower.
Worked example
A $1,000 bond with a 5% semiannual coupon ($25 per period, 20 periods) trading at $950: bisection finds a periodic yield of about 2.815%, so the annual YTM is roughly 5.63% — above the 5% coupon because the bond sells at a discount.
Sources: Yield to maturity — Wikipedia
Frequently asked questions
Why can’t YTM be solved with a formula?
The pricing equation is a high-degree polynomial in the yield, which has no closed-form solution for a general number of periods. Numerical methods such as bisection or Newton–Raphson find the root reliably instead.
How accurate is the bisection result?
The search continues until the computed price matches the entered price to within a fraction of a cent, so the reported yield is accurate to several decimal places for normal inputs.
What does YTM assume?
It assumes you hold the bond to maturity and reinvest every coupon at the same yield. If reinvestment rates differ, the realized return will not exactly equal the quoted YTM.
Related calculators
Educational financial-math tool, not investment or financial advice.