Playbook › Playbook
Yahoo's dividend feed applies a spin-off factor as a "stock split", silently deflating every pre-spin dividend
Claim
get_stock_actions for IBM returns a row at 2021-11-04 reading "Stock Splits": 1.046.
IBM did not split its stock in 2021. That is the Kyndryl spin-off, recorded as a 1.046
adjustment factor — and every dividend in the feed before that date has been divided by
1.046.
| Yahoo feed (quarterly) | × 1.046 | = actual declared |
|---|---|---|
| 2016-05: $1.338432 | $1.40 | |
| 2017-05: $1.434034 | $1.50 | |
| 2018-05: $1.500956 | $1.57 | |
| 2020-05: $1.558317 | $1.63 | |
| 2021-05: $1.567878 | $1.64 |
Post-spin rows are un-factored and are the real declared amounts ($1.65, $1.66, $1.67, $1.68, $1.69). So the series silently changes basis mid-stream at the spin date.
Why it is dangerous rather than merely wrong
The error has a direction, and the direction flatters. A spin-off factor is always >1, so every pre-spin dividend is pushed down. Dividing an un-deflated recent dividend by a deflated old one overstates the dividend CAGR — which is precisely the metric the dividend-grower overlay leans on.
On IBM the distortion is small in percentage terms and large in meaning:
| Window | Off the raw feed | Corrected |
|---|---|---|
| 10yr dividend CAGR | 2.35% | 1.90% |
| 8yr dividend CAGR | 1.49% | 0.92% |
The corrected 8-year figure is 0.92%, and the corrected recent run-rate is 0.60%/yr — exactly one penny per quarter-rate per year, six years running. The raw feed makes a dividend that has died look merely slow. It is the difference between "a slow grower" and "a payout losing 2pts of real purchasing power every year," which is a different investment.
This is the dividend-side sibling of [[pitfall-divested-segment-corrupts-multiyear-cagr]] — same corporate event, same silent mid-series basis change, opposite direction of error. That one hides compounders by understating growth; this one hides decayed dividends by overstating it.
The tell
A fractional "Stock Splits" value. Real splits are clean ratios — 2.0, 3.0, 1.5, 0.1 for a
reverse. A number like 1.046, 1.0783, 1.21 is not a split; it is a spin-off or a special-dividend
adjustment. Whenever get_stock_actions shows one, treat every dividend before that date as
rebased.
Second tell: the declared amounts stop being round. Boards declare dividends in whole cents.
$1.567878 was never declared by anyone; $1.64 was.
The fix
- Scan
get_stock_actionsfor anyStock Splitsvalue that is not a clean ratio. - Multiply every dividend before that date by the factor to recover declared amounts.
- Cross-validate against a second source — roic.ai's
div_per_shrcarried IBM's FY2024 $6.668 and FY2025 $6.709 against the hand-computed $6.67 and $6.71, confirming the post-spin rows need no adjustment and the correction is applied only to the earlier half. - Prefer stating the declared quarterly rate series in the report over a single CAGR — a reader can see "$1.65, $1.66, $1.67, $1.68, $1.69" and draw the conclusion without trusting any computation.
What would falsify this
Yahoo separating spin-off adjustments from the Stock Splits field, or exposing an unadjusted
dividend series. Neither is present as of 2026-08-12.
History
-
2026-08-12 — found during the IBM full analysis; the 1.046 Kyndryl factor was recovered and the corrected dividend series became the central finding of that report. Also applies to any other Kyndryl-era or spin-heavy issuer — check KD and any name in [[consulting-it-services]] with a spin in its history.
-
2026-08-19 — fired again on LEN during
/analyze; seeOutput/Stocks/Consumer/LEN/analyze-2026-08-19.md.