BondTerminal

How does semi-annual bond yield differ from annual yield?

Updated · Reviewed by Juan Otero

Leer en español →

The direct answer

Semi-annual bond-equivalent yield (BEY) and effective annual yield (EAY) describe the same bond cash flows at the same price. BEY states an annual rate with two compounding periods. EAY = (1 + BEY ÷ 2)² − 1. EAY is higher for a positive yield because the second half-year compounds the first half-year return.

How do you convert BEY to EAY?

Divide the semi-annual quote by two, add one, square the result and subtract one. To reverse it, take the square root of one plus EAY, subtract one and multiply by two. This conversion does not alter the cash flows, settlement amount or risk of the bond. It only changes the annual label on the same present-value solution.

Read each table row as two ways to report one rate. The S.A. column is the quotation basis; the E.A. column compounds the half-year rate twice. The gap widens as the yield rises because the second period includes the first period's return. That gap is a convention effect, not extra cash from the issuer.

Semi-annual to effective annual conversion
BEYEAY
5.00% S.A.5.06% E.A.
10.00% S.A.10.25% E.A.
20.00% S.A.21.00% E.A.
40.00% S.A.44.00% E.A.

What do both yields look like on GD30?

GD30D (Argentina Step Up 2030) (ISIN US040114HS26) is an amortizing Argentine USD bond. At a clean quote of 56.01 per 100 original face, its remaining payments solve to 8.34% S.A. The equivalent effective annual yield is 8.51% E.A. Neither figure assumes a different price or payment schedule.

Input or resultGD30
Clean price per 100 original face56.01
Residual per 100 original face64.00
Bond-equivalent yield8.34% S.A.
Effective annual yield8.51% E.A.

How these numbers were made

Figures as of Sep 25, 2026, settlement Sep 29, 2026 (T+2), using a local-market closing clean price of 56.01 per 100 original face. Terms are from offering documents in our catalog. Yields are first solved on the semi-annual (S.A.) basis over ACT/365 time. The spread uses that date's official US Treasury par curve at average life. How we calculate →

Educational example, not investment advice.

Why quote semi-annual yield?

A single bond-equivalent basis makes yields and spreads comparable with the US Treasury par curve across bonds that pay coupons at different frequencies. The engine uses ACT/365 time to discount each dated payment, then expresses the solved yield on the semi-annual convention. Converting it to EAY preserves the present value.

A different displayed yield can also come from day count, settlement date, clean versus dirty price, or a call assumption. Check those inputs before comparing two quotes. The yield-to-worst guide shows how a call date can change the quote.

Which amount goes into the yield calculation?

The clean quote on a screen is only part of the settlement payment. Accrued interest is added to give the dirty price. The yield is the rate that makes the present value of future payments equal that amount. Moving the settlement date can therefore move the yield even if the quoted clean price has not changed.

GD30 is quoted per 100 of original face, despite having repaid part of its principal. Treating its current residual principal as the original face would mismatch the price with the remaining coupons and amortizations. BondTerminal first solves the yield from the dated payments and the correct settlement amount. It then converts that rate to EAY without changing the payment schedule.

Frequently asked questions

What does semi-annual yield mean?
It is an annual bond-equivalent rate stated with two compounding periods. The effective annual equivalent compounds the half-year rate twice.
What is the difference between EAY and BEY?
They are two conventions for the same cash flows and price. For positive yields, EAY exceeds BEY by the effect of compounding.
Why can two platforms show different yields for one bond?
Check the compounding basis, day count, settlement date, dirty-price calculation and call assumption. Each can change a displayed yield.

Bonds to try this on

Run it on any bond