Utinzo

Bond Calculator

Calculate a bond's annual coupon payment, current yield, yield to maturity (YTM), and Macaulay duration from its face value, coupon rate, market price, and maturity.

Did this tool work for you?

How to use this calculator

YTM: P = Σ [C/(1+y)^t] + F/(1+y)^n | Current Yield = C/P

P = market price, C = annual coupon, F = face value, n = years to maturity, y = YTM (solved iteratively). Current yield = coupon/price.

  1. 1

    Enter the bond's face (par) value — typically $1,000 for corporate bonds.

  2. 2

    Enter the coupon rate (the annual interest rate printed on the bond).

  3. 3

    Enter the current market price — below face value = discount bond; above = premium bond.

  4. 4

    Enter years remaining until the bond matures to get YTM, current yield, and duration.

Frequently asked questions

How is yield to maturity found?

This tool solves P = Σ C ÷ (1 + y)^t + F ÷ (1 + y)^n for y, where P is the price you enter, C the annual coupon (face value × coupon rate), F the face value and n the whole years left. It does so by bisection between −99% and 1,000%, so the yield it reports reprices the bond to your price, up to rounding in the display.

Are coupons annual or semi-annual?

Annual. The tool assumes one coupon at the end of each year and one face-value payment at maturity, and the yield is an annually compounded rate. A bond that pays twice a year quotes its yield on a different basis, so the figure here will not match a semi-annual quote exactly.

Why must years be a whole number?

The cash-flow schedule has one payment per year, so a fractional remaining life would leave the last coupon and the final payment at different dates, and the tool does not model accrued interest or stub periods. Fractional years, a price of 0 or a face value of 0 all show n/a.

What is the difference between current yield and YTM?

Current yield is annual coupon ÷ price and ignores the gain or loss when the bond reaches face value. The default bond (6% coupon, price 950, 10 years) has a current yield of 6.32% and a YTM of 6.70%; the extra 0.38 points reflects the pull to par. For a premium bond the order reverses, as in the 5% coupon bond at 1,100 (4.55% against 3.37%).

How are Macaulay and modified duration calculated?

Macaulay duration is Σ t × PV(cash flow) ÷ Σ PV(cash flow) at the solved yield, in years, and modified duration is Macaulay ÷ (1 + YTM). A zero-coupon bond has a Macaulay duration equal to its maturity, which is 10.00 years for the 10-year 0% case; its modified duration is 9.50.

What does it show when the price equals face value?

It labels the bond Par, and the YTM equals the coupon rate: an 8% bond at 1,000 over 5 years returns exactly 8.00% on both yield measures. Price above face is labelled Premium and below face Discount.

What is not modelled?

Call or put features, default risk, accrued interest, clean versus dirty prices, taxes, fees and the reinvestment of coupons at any rate other than the YTM (which the YTM itself assumes). Total Coupons Received is the undiscounted sum of coupons. The output is an illustration from your inputs, not a recommendation about any bond.

About bond calculator

Bond price, yield and duration with annual coupons

From price to yield

A bond is a schedule of known payments: an annual coupon, then the face value at maturity. If you know what it costs today, the yield to maturity is the single annual rate that discounts those payments back to exactly that price. The calculator finds it by narrowing a bracket until the discounted payments match the price, then uses that yield for the duration figures.

Worked example: a 6% bond bought at 950

With a 1,000 face value, a 6% coupon (60 a year), a price of 950 and 10 years left, the YTM is 6.70% and the current yield 6.32%. Macaulay duration is 7.74 years and modified duration 7.25, meaning a one-percentage-point change in yield moves the price by roughly 7.25%. The bond is labelled Discount, and coupons over the life total $600.00.

Premium, par, zero-coupon and long-dated cases

The table varies the coupon, price and length. The premium bond yields less than its coupon suggests, the par bond has identical coupon rate and yield, the zero-coupon bond has no current yield at all, and the 25-year discount bond has a duration well above the 10-year cases.

Yield, duration and bond type for five coupon, price and maturity combinations
Coupon, price, yearsYTMCurrent yieldMacaulay / modifiedType
6%, 950, 106.70%6.32%7.74 / 7.25Discount
5%, 1,100, 73.37%4.55%6.13 / 5.93Premium
0%, 600, 105.24%0.00%10.00 / 9.50Discount
8%, 1,000, 58.00%8.00%4.31 / 3.99Par
4.5%, 820, 255.89%5.49%14.45 / 13.65Discount

Reading duration

Duration condenses a bond’s timing into one number. Because the largest payment arrives at maturity, a longer bond has a longer duration, and a zero-coupon bond’s duration is its full maturity since nothing arrives earlier. Modified duration is the more practical figure: it estimates the percentage price change for a small change in yield, and it becomes less reliable as the change grows. In the table, the 25-year bond’s modified duration of 13.65 against 5.93 for the seven-year premium bond means the same one-point move in yield would shift its price by more than twice as much, on the figures used.

Boundaries of the model

The inputs assume annual coupons, whole years and a single constant yield. They exclude default risk, call features, accrued interest and tax, so the output is a pricing illustration from the figures you type and not a forecast or advice about buying or selling any bond.

Bond Calculator – Utinzo

Learn more from an authoritative source:

Investopedia
Related tools

Results are estimates for informational purposes only and do not constitute professional financial, medical, legal, or technical advice. Read full disclaimer →