Data

Research Data

Data & Downloads

Every figure on this site is drawn from the four CSV files below, matching the schema in the data dictionary. All dollar figures are nominal U.S. dollars; financials and shareholder returns are reported SEC 10-K values, pay ratios are DEF 14A proxy disclosures.

The claims (01_claims.csv)

CompanySpeakerQuote
Kraft Heinz
KHC
Steve Cahillane
CEO
"They're literally running out of money at the end of the month"
Said of lower-income U.S. consumers; Cahillane became Kraft Heinz CEO effective 2026-01-01, ahead of the company's planned 2026 split into two firms
Kraft Heinz
KHC
Steve Cahillane
CEO
"We're seeing negative cash flows in the lower-income brackets"
Characterizing weakness in lower-income household spending
McDonald's
MCD
Chris Kempczinski
CEO
"heightened anxiety"
Described U.S. consumer sentiment; Kempczinski has been MCD CEO since 2019
McDonald's
MCD
Ian Borden
CFO
"higher gas prices hitting lower-income households especially hard"
CFO commentary on cost pressures on low-income diners
Whirlpool
WHR
Marc Bitzer
CEO
"amplified consumer concerns about the cost of living"
Attributing heightened cost-of-living worry partly to the Iran war; Bitzer has been WHR CEO since 2017
Whirlpool
WHR
Juan Carlos Puente
North America Chief
"consumer sentiment collapsing to record lows"
Cited as preventing a demand recovery in North America
Planet Fitness
PLNT
Colleen Keating
CEO
"The consumer and economic backdrop have shifted"
Keating became Planet Fitness CEO in June 2024

Source: Yahoo Finance, 2026-06-05. Speaker/role attributions cross-checked against company releases and proxies; exact quote wording is from the secondary source pending earnings-call transcripts.

Annual financials (02_financials_annual.csv, $M)

CompanyFYRevenueNet income
MCD2015$25,413M$4,529.3M
MCD2016$24,621.9M$4,686.5M
MCD2017$22,820.4M$5,192.3M
MCD2018$21,257.9M$5,924.3M
MCD2019$21,364.4M$6,025.4M
MCD2020$19,207.8M$4,730.5M
MCD2021$23,222.9M$7,545.2M
MCD2022$23,183M$6,177M
MCD2023$25,494M$8,469M
MCD2024$25,920M$8,223M
MCD2025$26,885M$8,563M
KHC2015
KHC2016$3,596M
KHC2017$10,941M
KHC2018$-10,192M
KHC2019$1,935M
KHC2020$356M
KHC2021$1,012M
KHC2022$2,363M
KHC2023$2,855M
KHC2024$2,744M
KHC2025$-5,846M
WHR2015$20,891M$783M
WHR2016$20,718M$888M
WHR2017$21,253M$350M
WHR2018$21,037M$-183M
WHR2019$20,419M$1,168M
WHR2020$19,456M$1,075M
WHR2021$21,985M$1,783M
WHR2022$19,724M$-1,519M
WHR2023$19,455M$481M
WHR2024$16,607M$-323M
WHR2025$15,524M$318M
PLNT2015$330.5M$18.5M
PLNT2016$378.2M$21.5M
PLNT2017$429.9M$33.1M
PLNT2018$572.9M$88M
PLNT2019$688.8M$117.7M
PLNT2020$406.6M$-15M
PLNT2021$587M$42.8M
PLNT2022$936.8M$99.4M
PLNT2023$1,071.3M$138.3M
PLNT2024$1,181.7M$172M
PLNT2025$1,324.1M$219.1M

Source: SEC EDGAR 10-K XBRL (companyfacts), full-year values. Kraft Heinz revenue is blank — not cleanly tagged in the XBRL set; FY2015 KHC is blank (merger formed 2015-07-02, reported on a predecessor basis).

CEO-to-median pay ratio (05_pay_ratio.csv)

CompanyFYCEOCEO compRatio
MCD2017Steve Easterbrook$21,761,0523,101:1
MCD2018Steve Easterbrook$15,876,1162,124:1
MCD2019Steve Easterbrook$18,012,5491,939:1
MCD2020Chris Kempczinski$10,847,0321,189:1
MCD2022Chris Kempczinski$17,770,5141,224:1
MCD2023Chris Kempczinski$19,155,0011,212:1
MCD2024Chris Kempczinski$18,195,2631,014:1
MCD2025Chris Kempczinski$20,574,5251,082:1
KHC2024Carlos Abrams-Rivera$8,999,384140:1
KHC2025Carlos Abrams-Rivera$10,748,810170:1
WHR2022Marc Bitzer419:1
WHR2023Marc Bitzer$13,504,801437:1
WHR2024Marc Bitzer485:1
WHR2025Marc Bitzer$12,773,816429:1
PLNT2020Chris Rondeau$3,717,285137:1
PLNT2021Chris Rondeau$9,272,049313:1
PLNT2022Chris Rondeau$5,644,947262:1
PLNT2024Colleen Keating$11,461,041575:1
PLNT2025Colleen Keating$8,237,348422:1

Source: SEC DEF 14A proxy pay-ratio disclosures. median basis = "disclosed" (proxy states the dollar median) or "computed from ratio" (median = CEO comp ÷ ratio). Disclosure required since FY2017; FY2017–2024 backfill is v1.1.

Shareholder returns (07_buybacks_dividends.csv, $M)

CompanyFYBuybacksDividendsTotal returned
MCD2015$6,099.2M$3,230.3M$9,329.5M
MCD2016$11,171M$3,058.2M$14,229.2M
MCD2017$4,685.7M$3,089.2M$7,774.9M
MCD2018$5,207.7M$3,255.9M$8,463.6M
MCD2019$4,976.2M$3,581.9M$8,558.1M
MCD2020$907.8M$3,752.9M$4,660.7M
MCD2021$845.5M$3,918.6M$4,764.1M
MCD2022$3,896M$4,168M$8,064M
MCD2023$3,054M$4,533M$7,587M
MCD2024$2,824M$4,870M$7,694M
MCD2025$2,056M$5,115M$7,171M
KHC2015
KHC2016$3,584M$3,584M
KHC2017$2,888M$2,888M
KHC2018$3,183M$3,183M
KHC2019$1,953M$1,953M
KHC2020$1,958M$1,958M
KHC2021$271M$1,959M$2,230M
KHC2022$280M$1,960M$2,240M
KHC2023$455M$1,965M$2,420M
KHC2024$988M$1,931M$2,919M
KHC2025$436M$1,898M$2,334M
WHR2015$250M$269M$519M
WHR2016$525M$294M$819M
WHR2017$750M$312M$1,062M
WHR2018$1,153M$306M$1,459M
WHR2019$148M$305M$453M
WHR2020$121M$311M$432M
WHR2021$1,041M$338M$1,379M
WHR2022$903M$390M$1,293M
WHR2023$0M$384M$384M
WHR2024$50M$384M$434M
WHR2025$0M$300M$300M
PLNT2015
PLNT2016$1.6M$169.3M$170.9M
PLNT2017
PLNT2018$342.4M$342.4M
PLNT2019$458.2M$458.2M
PLNT2020$0M$0M
PLNT2021$0M$0M
PLNT2022$94.3M$94.3M
PLNT2023$125M$125M
PLNT2024$300.2M$300.2M
PLNT2025$500.4M$500.4M

Source: SEC EDGAR 10-K cash-flow statements (companyfacts XBRL). The note column carries shareholders' equity, flagged when negative (McDonald's since 2016, buyback-driven). Blank KHC buybacks 2015–2020 are real (no material repurchases until 2021).

Download the data

v1.1 datasets (market cap, C-suite comp, layoffs, CEO net worth) ship with the next release. The full schema lives in data_dictionary.md, included with each download.

Data dictionary

Data Dictionary

All dollar fields are in nominal U.S. dollars (not inflation-adjusted). Financial figures are reported SEC 10-K values; executive-pay figures are DEF 14A proxy disclosures. Companies are keyed by ticker so additional firms can be appended.

Reported vs estimated (editorial rule, as in the dark-money project): revenue, income, buybacks, dividends, equity, and CEO/median pay are reported filings. Any computed value (e.g. a median derived from a disclosed ratio) or future net-worth estimate is flagged as such in its row and must be visually separated on-page.

01_claims.csv

The cost-of-living warnings. company,ticker,date,speaker,role,quote,context,source,verification. verification records whether the speaker/role was confirmed against primary sources (CEO seats changed at all four firms during the period). Quote wording is from the secondary source (the 2026-06-05 article) pending earnings-call transcripts.

02_financials_annual.csv

company,ticker,fiscal_year,revenue_musd,net_income_musd,operating_income_musd,operating_margin_pct,note,source. Values in $ millions. From SEC EDGAR 10-K XBRL (companyfacts), full-year durations only, cross-checked against year-end figures. KHC FY2015 is blank (the Kraft Heinz Company was formed by merger 2015-07-02; FY2015 was reported on a predecessor/transition basis).

04_ceo_comp.csv *(v1: partial coverage)*

company,ticker,fiscal_year,ceo_name,total_comp_usd,salary_usd,stock_awards_usd,option_awards_usd,other_usd,note,source. total_comp_usd is the Summary Compensation Table total (drawn from the Pay-versus-Performance table or the pay-ratio disclosure). Component columns (salary/stock/option/other) are blank in v1 — full SCT component breakdown and FY2015–2024 backfill are v1.1. Coverage: MCD FY2021–25; WHR FY2021/2023/2025; KHC + PLNT FY2025.

05_pay_ratio.csv *(v1: FY2025)*

company,ticker,fiscal_year,ceo_name,ceo_total_comp_usd,median_worker_pay_usd,ratio_to_1,median_basis,note,source. median_basis = disclosed (proxy states the median worker's dollar comp) or computed from disclosed ratio (median = CEO comp ÷ ratio, where the proxy states only the ratio). Pay-ratio disclosure has been required since FY2017; FY2017–2024 backfill is v1.1.

07_buybacks_dividends.csv

company,ticker,fiscal_year,buybacks_musd,dividends_musd,total_returned_musd,note,source. Values in $ millions, from 10-K cash-flow statements. note carries shareholders' equity, flagged when negative (MCD since 2016 — a buyback-driven figure). Blank buybacks for KHC 2015–2020 are real (no material repurchases until 2021).

03_market_cap_yearend.csv *(v1.1)*

company,ticker,year,market_cap_busd,shares_outstanding,yearend_price_usd,note,source. Market cap = SEC 10-K cover shares outstanding × Yahoo Finance year-end close. MCD/KHC/WHR complete FY2015–25; PLNT is price-only — its Up-C dual-class (Class A/B) share count is not cleanly tagged, so market cap is pending.

06_csuite_comp.csv *(v1.1, partial)*

company,ticker,fiscal_year,neo_total_comp_usd,n_neos,note,source. All-named-executive-officer total comp. MCD FY2021–25 computed as PEO + (average non-PEO NEO comp × NEO count) from the Pay-versus-Performance table. KHC/WHR/PLNT deferred (CEO-transition PvP tables not yet parsed).

08_layoffs.csv *(v1.1)*

company,ticker,date,announced_count,segment_or_location,note,source. Announced layoffs/closures from WARN notices + press (flagged as announced figures). PLNT row notes no major announcement found (franchise-operated model).

09_ceo_networth.csv *(v1.1 — ESTIMATES/UNAVAILABLE)*

ceo_name,company,ticker,est_networth_musd,as_of_date,method,source. These are non-founder professional CEOs with no reliably-tracked total net worth — the dollar field is intentionally blank. The defensible figure is disclosed beneficial ownership × price (a floor, company equity only), deferred to a focused proxy extraction. Must be visually separated from reported figures and carry this caveat on-page. Do not publish a net-worth number that isn't sourced.

Remaining gaps (potential v1.2)

KHC FY2017–19 + WHR pre-2022 pay ratio; SCT component columns (salary/stock/option) for 04; KHC/WHR/PLNT C-suite totals; PLNT market cap; CEO equity-stake values for 09. These need per-proxy manual reads (heterogeneous formats + CEO transitions defeat bulk extraction).