Two outcomes, two returns
A covered call is shares you own plus a call you sold against them. At expiry only two things happen, and they pay differently:
static return = premium ÷ your cost (call expires worthless)
if-called return = (strike − your cost + premium) ÷ cost (shares are taken)
Own 100 shares at $48, sell a $55 call for $1.40 with 45 days to run: static is 2.92%, if-called is 15.42%.
Those are not two views of the same number — they are the returns from two mutually exclusive futures. Presenting whichever is larger as "the yield" is the standard way this strategy is oversold, which is why both sit on the page and neither is blended into a headline.
Annualising, honestly
A 2.92% static return over 45 days annualises to roughly 26%. That figure is real arithmetic and a poor forecast, for two reasons worth stating.
It assumes you can repeat the trade twelve times a year at the same premium. Premiums are highest when volatility is high, which is exactly when holding the shares is least comfortable — the good months are not evenly distributed.
And it assumes the shares are still there. Every time the call finishes in the money, the position is closed and has to be re-established, often at a higher price than you sold at.
What you actually gave up
The premium is not free income. It is payment for a specific thing: the upside above the strike.
If the shares run to $70, your $55 call caps the outcome at $55 plus the premium. The $15 of extra move belongs to whoever bought the call. On any single trade that is an acceptable exchange; repeated on a holding that trends upward, it is how a long-term position gets systematically truncated at the worst moments.
The downside, meanwhile, is unchanged. Owning the shares is the whole risk, and the premium cushions a fall of exactly its own size — $1.40 here, against a share worth $50.
The mistake the calculator flags
Selling a call below your cost basis guarantees a loss on the shares if assigned. It happens naturally: a position falls, and the strikes with worthwhile premium are all below where you bought.
The premium then has to cover the entire gap between your cost and the strike before the trade makes money, and it almost never does. The calculator raises this rather than returning a cheerful if-called return that is actually negative on the position as a whole.