My Bond Paid Exactly What the Prospectus Promised — and Still Cost Me $940 at Maturity
I bought corporate bonds at a premium, collected every coupon on schedule, and watched them mature at par — realizing a loss I had mentally spent years not noticing. The math of premium bonds, amortization, and why yield-to-maturity is the only number that tells the truth.
10:40 on a Wednesday night in June, and I'm sitting at my laptop with a bond confirmation from 2023 open on one side of the screen and my brokerage account on the other, counting a loss I should have seen three years earlier. The bonds matured that day. $50,000 face value went back to cash at exactly $50,000. I paid $53,100 for them. On paper, in cash, in fact: I lost $3,100 of principal and my brain is only now filing the paperwork.
The coupons, to be fair, had been beautiful. 5.85% annual rate on $50,000 face — $2,925 a year, paid twice, never late, never missed. For three years I reckoned of these bonds as the reliable ones. The steady ones. The "at least someone around here pays me on time" ones.
Then maturity day arrived and returned less than I paid, and every coupon statement I'd smiled at got retroactively reorganized in my memory.
the premium, explained the way I finally understood it
I snagged those bonds in early 2023 when rates were climbing and older bonds with fat coupons traded above face — that's what a premium is. My bonds paid 5.85% while new issues paid around 4.9%, so the market charged me for the difference. $53,100 for $50,000 of face value. A 6.2% premium, approximately.
The mistake wasn't buying at a premium. Premium bonds can be perfectly fine investments. The mistake was how I tracked them. In my head, I ran two separate ledgers: income, where coupons went, and principal, which I mentally marked at my purchase price instead of at face. So every six months my income ledger smiled and my principal ledger quietly awaited a $3,100 reconciliation I never scheduled.
The bond market doesnt run two ledgers. It runs one, and it's called yield-to-maturity. The honest number for my purchase wasn't the 5.85% coupon. It was about 4.72% — the coupon minus the premium, spread over the years remaining, because everyone in the market knew I'd get back $50,000, not $53,100. I was the only person at the table reading the wrong number.
the tax machinery working underneath
Here's the part that softened the blow, and the part I wish someone had shown me in 2023. For taxable accounts, the IRS let's — and my broker elected — amortization of bond premium. Each year, a slice of that $3,100 premium is treated as a return of capital: it reduces my taxable interest income dollar for dollar and reduces my cost basis by the same amount.
Over three years, the amortization schedule spread the premium across 2023, 2024, and 2025 — approximately $1,030 a year. That's $3,090 of coupon income I never paid tax on, because economically it was never income; it was my own premium coming home. My basis walked down from $53,100 to almost exactly $50,000 by maturity. So at the end, the "loss" at maturity was $10 — the redemption at par versus the amortized basis. The tax code had already digested the loss in slight, offset bites, every year.
the 1099 that looked wrong
Which is why the Form 1099-INT that June looked peculiar: the interest box reported mayb $1,890 of taxable interest when the actual cash coupons were $2,925. The difference was the amortized premium. I spent twenty confused minutes that night before remembering the election box I'd checked at purchase and immediately forgotten. Checked boxes have long memories.
what this did to my real return
Lemme run the honest math, cuz I owe myself at least that. Total cash in: $8,775 of coupons over three years, plus $50,000 at maturity. Total cash out: $53,100. Gain: $5,675 over three years on $53,100 — about 3.6% per year, simple. After the tax treatment — interest taxed annually at my rate, with the premium offset — my after-tax result landed close to what a 4.7% pre-tax bond with no premium would have produced. The structure worked. It was invariably gonna work. My feelings about it were the only mispriced thing in the entire transaction.
the par-bond counterfactual
Would a par bond have been better? At the same yield-to-maturity, no — approximately a wash, with the par bond giving simpler statements and the premium bond giving me the state-tax-free interest... no, wait, that's Treasuries. These were corporates; no state exemption. On corporates, par versus premium at equal YTM is mostly a paperwork preference. I have since developed a paperwork preference.
the search-for-yield lens I had backwards
The deeper lesson hit me later, scrolling bond screeners: premium bonds are the ones that look richest on the coupon line, and my eyes went there first. 5.85% on the screen while everything else showed 4s. But coupon is a marketing number — its what the issuer chose years ago, frozen in time, irrelevant to what you'll earn. Yield-to-maturity is the truth number, and it already knew about the premium. It invariably knows. its the only field on the screen that has read the maturity date.
sorting by the truth column
Now I sort bond search results by YTM and refuse to look at the coupon column first. Modest discipline. It would have saved me one Wednesday night of surprised arithmetic and one essay-length reckoning.
what I hold now
My fixed income ladder these days runs on three principles, paid for in confusion. Buy at or near par unless there's a specific reason — the amortization machinery is fine, but I'd rather not need it. Never evaluate a bond by its coupon alone; coupon is nostalgia, YTM is forecast. And keep a running expected-maturity-value line in my spreadsheet, so the number I get back at maturity is a scheduled fact, not a June-night surprise.
The $940 net cost — premium loss after the tax offsets, the exact figure my accountant computed — is real money, and I count it as tuition. Cheaper than most courses. The syllabus was one sentence: the coupon tells you what they promise; the yield-to-maturity tells you what you get. Everything else is a reconciliation waiting for an honest night.