Bond price and yield to maturity calculator
Find a bond’s price from its yield, or its yield from its price, with duration and convexity.
A clear answer. Here’s how.
Price = Σ coupon ÷ (1 + y/m)^k for k = 1 to n, plus face ÷ (1 + y/m)^n, where m is coupons per year, n = years × m and y is the nominal annual yield. When solving for the yield the tool bisects on the price, which falls steadily as the yield rises, so there is exactly one answer. Macaulay duration is the present-value-weighted average time of the payments in years, modified duration divides it by (1 + y/m), and convexity is the second-derivative measure ÷ price. All figures assume a valuation on a coupon date, so there is no accrued interest.
How this is checked
4 reference checks passed These 4 cases were run when this page was built, on 20 October 2026, and all reproduce within the stated tolerance. The same cases are part of the automated tests that run on every change to Toolmoz. Engine version 1.
See the checks and where each expected answer comes from
Case 1
- Inputs
- Solve for priceFace (par) value 1000Annual coupon rate (%) 5Years to maturity 10Coupons per year 2Yield to maturity (% a year) 6
- Expected, and what Toolmoz gave
- Price expected 925.6126, Toolmoz 925.6126256977228Macaulay duration (years) expected 7.894997, Toolmoz 7.894997340182344Modified duration expected 7.665046, Toolmoz 7.665045961342081Convexity expected 71.785398, Toolmoz 71.78539801290006
- Where the expected answer comes from
- Sum of the 20 discounted semi-annual payments of 25 and 1,000 at 3% a period, with duration and convexity summed term by term in 50-digit decimal arithmetic
- Allowed difference
- ±0.0001 absolute
Case 2
- Inputs
- Solve for yieldFace (par) value 1000Annual coupon rate (%) 5Years to maturity 10Coupons per year 2Price 925.61262569772
- Expected, and what Toolmoz gave
- Yield to maturity (annual, compounded 2× a year) expected 6, Toolmoz 6.0000000000000275
- Where the expected answer comes from
- Inverse of the case above: the price 925.61262569772 is the value at a 6% yield
- Allowed difference
- ±1e-7 absolute
Case 3
- Inputs
- Solve for priceFace (par) value 1000Annual coupon rate (%) 0Years to maturity 10Coupons per year 1Yield to maturity (% a year) 5
- Expected, and what Toolmoz gave
- Price expected 613.9133, Toolmoz 613.9132535407591Macaulay duration (years) expected 10, Toolmoz 10Priced at expected A discount to face value, Toolmoz A discount to face value
- Where the expected answer comes from
- Zero-coupon bond: 1000 ÷ 1.05^10 = 613.9133, and its Macaulay duration equals its maturity
- Allowed difference
- ±0.0001 absolute
Case 4
- Inputs
- Solve for priceFace (par) value 1000Annual coupon rate (%) 7Years to maturity 5Coupons per year 1Yield to maturity (% a year) 7
- Expected, and what Toolmoz gave
- Price expected 1000, Toolmoz 1000Priced at expected Par, Toolmoz Par
- Where the expected answer comes from
- A bond whose coupon rate equals its yield is worth its face value
- Allowed difference
- ±1e-9 absolute
What this shows: the engine reproduces independently worked values for these cases. It does not prove every possible input is right. To test an answer you were given, see how to check a number; to see what is and is not checked across Toolmoz, see the accuracy ledger.
See a worked example
Worked example
A fixed demonstration, separate from the values you enter above.
- Solve for
- Price, given the yield
- Face (par) value
- 1000
- Annual coupon rate (%)
- 5
- Years to maturity
- 10
- Coupons per year
- Semi-annual
- Yield to maturity (% a year)
- 6
Example result
- Price
- 925.61
- Price per 100 of face value
- 92.5613
- Yield to maturity (annual, compounded 2× a year)
- 6%
- Current yield (annual coupon ÷ price)
- 5.4018%
- Macaulay duration (years)
- 7.8950
- Modified duration
- 7.6650
- Convexity
- 71.785
- Total coupons paid
- 500.00
- Priced at
- A discount to face value
Values a plain fixed-coupon bond held to maturity on a coupon date: no accrued interest, call features, credit risk or tax. Yield is the nominal annual rate compounded at the coupon frequency, the bond-market convention. Duration and convexity are per year.