S&P Global (SPGI) Return on Capital Employed [ROCE] (2009 - 2026)
S&P Global (SPGI) recorded Return on Capital Employed [ROCE] of 13.59% in Q2 2026, up 2.74 percentage points from 10.84% a year earlier and up 0.23 percentage points from the prior quarter.
S&P Global (SPGI) Return on Capital Employed [ROCE] (2009 - 2026) Analysis & Trends
For FY2025, S&P Global reported Return on Capital Employed [ROCE] of 12.21%, up 1.87 percentage points from FY2024.
- Annual Return on Capital Employed [ROCE] has a five-year change of -31.08 percentage points (FY2020 to FY2025).
- Across earlier years, Return on Capital Employed [ROCE] came in at 10.33% in FY2024 (+3.03 pp), 7.30% in FY2023 (-7.96 pp), 15.26% in FY2022 (-27.10 pp) and 42.35% in FY2021 (-0.94 pp).
- The Q2 2026 figure is the highest quarterly Return on Capital Employed [ROCE] since Q1 2022.
- On a year-over-year basis, Return on Capital Employed [ROCE] has increased for ten consecutive quarters, with an average year-over-year change of +2.46 percentage points over the last eight quarters.
- Peak year-over-year performance for Return on Capital Employed [ROCE] in the last five years was a gain of 2.97 percentage points in Q4 2024, against a drop of 30.40 percentage points in Q4 2022 at the low end.
- Per Business Quant, the preceding three quarters came in at 13.36% (Q1 2026), 12.26% (Q4 2025) and 11.26% (Q3 2025).
Peer Comparison
| # | Company | Market Cap | Enterprise Value | Gross Profit (Qtr) | ROCE (Qtr) |
|---|---|---|---|---|---|
| 1 | S&P Global | 114.46 Bn | 110.07 Bn | 2.98 Bn | 13.59% |
| 2 | Moodys | 77.50 Bn | 69.93 Bn | 1.67 Bn | 32.18% |
| 3 | Msci | 39.67 Bn | 38.01 Bn | 717.10 Mn | 46.76% |
| 4 | Verisk Analytics | 21.91 Bn | 16.55 Bn | 572.90 Mn | 40.09% |
| 5 | Equifax | 16.44 Bn | 15.84 Bn | 926.40 Mn | 12.32% |
| 6 | TransUnion | 11.91 Bn | 8.89 Bn | - | 8.33% |
| 7 | Factset Research Systems | 9.93 Bn | 8.69 Bn | 310.73 Mn | 22.94% |
| 8 | Morningstar | 7.17 Bn | 5.07 Bn | 423.90 Mn | 20.23% |
| 9 | Mastercard | 479.32 Bn | 439.24 Bn | - | 68.07% |
| 10 | Cme | 95.24 Bn | 95.24 Bn | - | 11.13% |
Historic Data
| Date | Value |
|---|---|
| Jun 30, 2026 | 13.59% |
| Mar 31, 2026 | 13.36% |
| Dec 31, 2025 | 12.26% |
| Sep 30, 2025 | 11.26% |
| Jun 30, 2025 | 10.84% |
| Mar 31, 2025 | 10.66% |
| Dec 31, 2024 | 10.35% |
| Sep 30, 2024 | 9.36% |
| Jun 30, 2024 | 8.69% |
| Mar 31, 2024 | 7.79% |
| Dec 31, 2023 | 7.38% |
| Sep 30, 2023 | 6.94% |
| Jun 30, 2023 | 6.55% |
| Mar 31, 2023 | 7.56% |
| Dec 31, 2022 | 8.86% |
| Sep 30, 2022 | 8.84% |
| Jun 30, 2022 | 8.90% |
| Mar 31, 2022 | 14.42% |
| Dec 31, 2021 | 39.26% |
| Sep 30, 2021 | 38.33% |
S&P Global Return on Capital Employed [ROCE] API
Pull this series into your own models, spreadsheets and apps with the Business Quant
Historical Metrics API. The request below matches the chart above — change the
frequency, period or values and it follows. Swap YOUR_API_KEY for your own key.
https://data.businessquant.com/historic?slug=return-on-capital-employed-%5Broce%5D&ticker=SPGI&period=max&api_key=YOUR_API_KEY
import requests
url = "https://data.businessquant.com/historic"
params = {"slug": "return-on-capital-employed-[roce]", "ticker": "SPGI", "period": "max", "api_key": "YOUR_API_KEY"}
data = requests.get(url, params=params).json()
const res = await fetch("https://data.businessquant.com/historic?slug=return-on-capital-employed-%5Broce%5D&ticker=SPGI&period=max&api_key=YOUR_API_KEY");
const data = await res.json();