How to use the bond price calculator
Pick what you know. If you have a required yield, the calculator returns a price. If you have a market quote, it returns the yield. Quotes are entered per 100 of face value, so 92.64 means 92.64% of face.
- Choose price from yield or yield from clean price.
- Enter the total face value, annual coupon rate, coupon frequency and number of coupon payments left.
- Enter the yield to maturity or the clean quote per 100.
- If you're between coupon dates, enter days since the last coupon and days in the coupon period. On a coupon date, leave it at 0.
- Optional: add one call date and call price, purchase costs, a tax rate, inflation and a basis-point step for the sensitivity table.
- Press Calculate and check the clean price, accrued interest and dirty price first.
Bond price example: 5% coupon at a 6% yield
Take $1,000 of face value with a 5% coupon paid twice a year and 20 payments left, so 10 years. Each coupon is $25. The market wants 6%, which is 3% per half-year.
Discount the 20 coupons and the final $1,000 at 3% per period and you get $925.61. The bond sells at a discount because its 5% coupon is below the 6% the market wants. The $74.39 discount makes up the difference over the remaining 10 years.
| Item | Result |
|---|---|
| Coupon per payment | $25.00 |
| Present value of 20 coupons | $371.94 |
| Present value of the $1,000 repayment | $553.68 |
| Bond price | $925.61 (92.5613 per 100) |
| Current yield | 5.4% |
| Modified duration | 7.665 |
The bond price formula
A bond is a list of future payments. Its price is what those payments are worth today at the yield the market demands. Each coupon is divided by (1 + periodic yield) raised to the number of periods until it's paid, and the face value gets the same treatment at maturity.
Between coupon dates the calculator uses fractional periods, so the next payment is less than a full period away. That's why it works from the dirty price first and subtracts accrued interest to get the clean price.
Coupon per payment = face value x coupon rate / payments per yearPrice = sum of coupon / (1 + y/m)^k for k = 1 to n, plus face value / (1 + y/m)^nCurrent yield = annual coupon / clean priceClean price = dirty price - accrued interest
Bond yield and yield to maturity
Switch to yield mode to work backwards from a price. Enter the same bond with a clean quote of 92.64 and the calculator solves a yield to maturity of about 5.99%. That's the single rate that makes all remaining payments equal what you pay.
Three yields get mixed up a lot. The coupon rate is fixed against face value. Current yield divides the coupon by today's price. Yield to maturity also counts the gain or loss when the bond pays back face value, plus the timing of every payment. FINRA notes that YTM assumes every payment arrives and that coupons are reinvested at the same rate, so your actual return can differ.
| Measure | Calculation | Result |
|---|---|---|
| Coupon rate | $50 / $1,000 | 5% |
| Current yield | $50 / $925.61 | 5.4% |
| Yield to maturity | Rate that discounts all payments to $925.61 | 6% |
Why bond prices fall when yields rise
A bond's payments are fixed. When the market wants a higher yield, the only way to deliver it is a lower price. Same bond, four yields:
Duration estimates how much the price moves. A modified duration of 7.665 means roughly a 7.7% price change for a 1-point move in yield. The exact price after a 1-point rise is $857.88, while the duration shortcut says $854.66. The gap is convexity, and the calculator shows both.
| Market yield | Price | Trades at |
|---|---|---|
| 4% | $1,081.76 | Premium |
| 5% | $1,000.00 | Par |
| 6% | $925.61 | Discount |
| 7% | $857.88 | Discount |
Clean price, dirty price and accrued interest
Bond quotes are usually clean, meaning they leave out interest that has built up since the last coupon. The buyer pays the seller that accrued interest on top, and the total is the dirty price.
Go 91 days into a 182-day coupon period on the same bond at 6%. Accrued interest is half of one $25 coupon, $12.50. The clean price is $926.89 and the dirty price you'd actually pay is $939.39. Enter the day counts from the trade details, since day-count rules vary by bond type.
Accrued interest = coupon per payment x days since last coupon / days in period
Callable bonds: yield to call and yield to worst
If the issuer can repay early, check the yield to call. Price the 5% bond at a 4% yield ($1,081.76), then add a call at par after 10 payments. The yield to call is about 3.22%, and since that's lower than the 4% yield to maturity, it's also the yield to worst.
Premium bonds are the ones to watch, because an early call at par cuts your income short. The calculator models one call date. Real bonds can have several, so check the full call schedule.
What this bond value calculator doesn't cover
It values fixed payments you enter. It doesn't pull live quotes, look up a CUSIP or build an irregular payment schedule. Floating-rate bonds, inflation-linked principal, default risk, sinking funds, puts and multiple call dates are outside it.
The tax and inflation lines are simple planning figures. Before you buy, check the offering documents, your trade confirmation for the real settlement amount, and the bond's credit and call terms.
Sources
These investor resources explain bond pricing, yields and interest-rate risk.