Playbook › Playbook
Yahoo reports a gross and operating margin for banks and lenders that does not exist
Claim
For a bank, lender, card issuer or insurer, grossMargins and operatingMargins from Yahoo are
manufactured, not reported. These companies do not present a cost of revenue line, so a gross
margin is undefined. Yahoo populates the field anyway. roic.ai's get_profitability_ratios
returns null for gross_margin, oper_margin and ebitda_margin on the same ticker — which is
the correct answer, and the tell that the Yahoo number is invented.
Evidence
AXP, retrieved 2026-09-23:
| Field | Yahoo / fin.py |
roic.ai | Reported in filings |
|---|---|---|---|
| Gross margin | 0.62 | null |
not presented |
| Operating margin | 0.20 | null |
not presented |
| EV/EBITDA | - |
null |
meaningless |
| Return on assets | 0.04 | 3.79% | — |
The 62% "gross margin" is computed against total revenues net of interest expense — a figure that is already net of the largest cost in the business. It is not a margin in any sense that survives comparison.
Why it matters more than it looks
The failure is not that one number is wrong; it is that the number is plausible. A 62% gross
margin and a 20% operating margin read like a healthy software-adjacent business, so the field
passes a sanity check that a null would have failed loudly. Anything built on it — a margin
trend, a peer table against a non-financial, a "margin compression" finding — inherits the defect
silently.
This is the same shape as [[pitfall-vendor-revenue-is-net-construct-for-banks]] and belongs with it: for a financial, the vendor's revenue line, margin lines and cash-flow lines are all unusable. The pair of notes covers the whole income statement.
Rule
For any bank, lender, card issuer, BDC or insurer:
- Never cite gross margin, operating margin, EBITDA margin or EV/EBITDA. Say they do not apply rather than reporting a number, and say why.
- Use ROA and ROE instead, and lead with ROA. ROE on a levered balance sheet is an artifact of the leverage — AXP's 34% ROE runs on ~9x assets/equity, while its 3.79% ROA against a typical bank's 1.0–1.3% is the figure that actually isolates the franchise.
EVand anything derived from it are meaningless — for a lender, debt is raw material, not a claim on enterprise value.D/Eis not a leverage measure here. Use equity/assets and the regulatory capital ratio (CET1).- Cross-check against roic.ai. A
nullwhere Yahoo has a number is itself the evidence.
Related
[[pitfall-vendor-revenue-is-net-construct-for-banks]] — the revenue-line half of the same problem · [[pitfall-roicai-fcf-field-returns-ocf]] — the cash-flow half · [[principle-primary-source-beats-vendor]]
What would falsify this
Yahoo nulling the fields for financials, or a financial that genuinely presents a cost-of-revenue line. Re-check on the next bank or lender analysed rather than assuming it persists.
History
- 2026-09-23 — found in the first AXP analysis, alongside three further vendor defects on the same
ticker:
totalRevenue($70.91B) disagreeing with the sum of Yahoo's own quarterly statements ($75.95B);Tangible Book Valuereported equal to stockholders' equity in quarters where the goodwill line is absent, silently dropping the subtraction; andforwardPEpricing FY2027 ([[pitfall-vendor-forward-eps-is-the-wrong-fiscal-year]], fourth-plus firing).