Free calculator
Bond Yield Calculator
Enter a bond's price, coupon and maturity to get its current yield and yield to maturity, or flip the toggle and get the price that a target yield implies. Duration comes with it, so you can see what a rate move would cost.
Yield to maturity
...
Enter the bond's terms to calculate.
- Current yield
- ...
- Price in dollars
- ...
- Total coupons to maturity
- ...
- Gain or loss at maturity
- ...
- Total cash returned
- ...
- Modified duration
- ...
- Price in dollars
- ...
- Current yield at that price
- ...
- Macaulay duration
- ...
- Modified duration
- ...
- Price if yields rise 1%
- ...
- Estimated loss on that move
- ...
Everything runs in your browser. Settlement is assumed to fall on a coupon date, so no accrued interest is added.
What a bond's yield actually measures
A bond hands you two things: a run of fixed coupon payments, and your money back at maturity. The coupon never changes once the bond is issued, so when market interest rates move, the only variable left is the price. That is the whole reason prices and yields move in opposite directions, explained at length in how bonds work.
Three numbers describe the same bond and they rarely agree. The coupon rate tells you what the issuer promised on the face value. Current yield tells you what the income is worth against the price you paid. Yield to maturity folds in the gain or loss you book when the bond repays par. Comparing bonds on coupon alone will mislead you every time. The measures are compared side by side in bond yields explained.
The formula, with the default numbers
The price of a bond is the present value of every payment it will make:
Price = sum of (coupon / (1 + y)^t) + face / (1 + y)^n
Yield to maturity is the value of y that makes this equation true at the
price you actually pay. It cannot be rearranged, so the calculator solves it by
bisection: it tries a yield, sees whether the resulting price is too high or too low,
halves the search range and repeats until the two match.
Take the defaults. A $1,000 face bond with a 5% annual coupon and 10 years left, quoted at 92.64 per 100 of face:
- Your cash outlay is 92.64% of $1,000, so
$926.40. - The coupon is
5% x $1,000 = $50a year, so current yield is$50 / $926.40 = 5.40%. - Over 10 years you collect
10 x $50 = $500in coupons. - At maturity the issuer repays $1,000, which is
$73.60more than you paid. - The discount rate that ties $926.40 to those cash flows is
6.00%, and that is the yield to maturity.
The 60 basis point gap between 5.40% and 6.00% is the pull to par. It is real money, but you only collect it by holding the bond to maturity.
Pricing from a yield, and what a rate move costs
Flip the toggle and the arithmetic runs the other way. Feed in the yield you want and the calculator discounts the cash flows at that rate to produce the price. This is how a desk quotes a bond when the market moves: the yield is agreed first and the price falls out of it.
Price mode also returns modified duration, which estimates the percentage price change for a one percentage point shift in yields. Our default bond has a modified duration of 7.57 years, so a rate rise from 6% to 7% should cost about 7.57% of the price, taking 92.64 down to roughly 85.63. Price it properly at 7% and the answer is 85.95. Duration overstated the damage slightly, which it always does on a rise, because the price and yield relationship is curved rather than straight. That curvature is convexity, and it works in your favor in both directions. The full treatment is in duration and interest rate risk.
Where this calculator stops
It prices an option-free bullet bond held to maturity. It does not handle call provisions, in which case yield to call matters more than yield to maturity, and it does not model credit risk, so a junk bond showing a 14% yield may simply be telling you the market expects a default. Ratings and spreads are covered in corporate bonds and credit spreads.
For where the whole Treasury curve sits today, use the Treasury yield curve tool. To find out what your coupon income is worth once inflation takes its cut, run the number through the inflation-adjusted return calculator. If you hold bonds through a fund rather than directly, read bond ETFs explained first, because a fund that never matures behaves differently from the bond you just priced.
Frequently asked questions
What is the difference between current yield and yield to maturity?
Current yield divides the annual coupon by the price you pay, so it only measures the income. Yield to maturity also counts the gain or loss you book when the bond repays face value, and it assumes you hold to maturity. On a bond bought below par, YTM is always higher than current yield.
Why does a bond price fall when interest rates rise?
The coupon is fixed in dollars. If new bonds are issued paying more, the only way an older bond can compete is for its price to drop until the combination of its coupon and its discount to face value matches the new yield. Price is the part that moves because the coupon cannot.
How is yield to maturity actually calculated?
There is no closed form solution. YTM is the discount rate that makes the present value of every coupon plus the face value equal the price you pay, and it has to be found by trial and error. This calculator narrows the range by bisection until the price it produces matches your input.
Does the calculator include accrued interest?
No. It assumes you buy on a coupon date, so the clean price and the settlement price are the same. If you buy between coupon dates you also pay the seller the interest earned since the last payment, which raises your cash outlay without changing the quoted yield much.
What does modified duration tell me?
It estimates the percentage price change for a one percentage point move in yields. A modified duration of 7.57 means a one point rise in rates costs roughly 7.6% of the price. The estimate is slightly pessimistic on rises and slightly conservative on falls because of convexity.
Should I use annual or semiannual coupons?
Most US Treasury notes, Treasury bonds and corporate bonds pay twice a year, so semiannual is the realistic setting for them. Many European government bonds and some agency issues pay once a year. Pick the frequency that matches the bond you are pricing, since it changes the yield.