Canadian Pacific Kansas City (CP) Operating Income (2014 - 2026)
Canadian Pacific Kansas City (CP) reported Operating Income of $1.06 billion for Q2 2026, up 9.8% from $969.26 million a year earlier and up 16.0% from the prior quarter.
Canadian Pacific Kansas City (CP) Operating Income (2014 - 2026) Analysis & Trends
Over the twelve months ended Jun 30, 2026, Canadian Pacific Kansas City's Operating Income came in at $4.11 billion, up 5.7% year-over-year; for FY2025, it was $4.01 billion, up 6.1% from FY2024.
- Operating Income has increased for nine consecutive years, with a five-year compound annual growth rate of 10.2% (FY2020 to FY2025).
- By year, Operating Income came in at $3.78 billion in FY2024 (+16.3%), $3.25 billion in FY2023 (+27.0%), $2.56 billion in FY2022 (+0.1%) and $2.56 billion in FY2021 (+3.5%).
- Five-year quarterly Operating Income spans a low of $422.37 million in Q1 2022 and a high of $1.16 billion in Q4 2025.
- Year over year, Operating Income gained in seven of the last eight quarters, with growth averaging 5.2%.
- The high point for year-over-year Operating Income in five years was Q4 2023 (growth of 45.4%); the low point was Q1 2022 (a decline of 31.5%).
- Per Business Quant data, the three quarters before Q2 2026 came in at $917.34 million (Q1 2026), $1.16 billion (Q4 2025) and $970.78 million (Q3 2025).
Peer Comparison
| # | Company | Market Cap | Enterprise Value | Gross Profit (Qtr) | Op. Inc (Qtr) |
|---|---|---|---|---|---|
| 1 | Union Pacific | 161.62 Bn | 156.15 Bn | - | 2.76 Bn |
| 2 | Csx | 86.16 Bn | 82.37 Bn | - | 1.51 Bn |
| 3 | Canadian Pacific Kansas City | 74.78 Bn | 74.50 Bn | - | 1.06 Bn |
| 4 | United Parcel Service | 70.01 Bn | 46.94 Bn | - | 930.00 Mn |
| 5 | Norfolk Southern | 69.45 Bn | 64.09 Bn | - | 1.12 Bn |
| 6 | Fedex | 67.46 Bn | 33.40 Bn | - | 1.55 Bn |
| 7 | Delta Air Lines | 54.88 Bn | 37.06 Bn | - | 1.86 Bn |
| 8 | Old Dominion Freight Line | 36.07 Bn | 35.33 Bn | - | 465.30 Mn |
| 9 | Ryanair Holdings | 28.71 Bn | 12.72 Bn | 3.13 Bn | 668.82 Mn |
| 10 | Copart | 25.27 Bn | 9.69 Bn | 645.66 Mn | 368.90 Mn |
Historic Data
| Date | Value |
|---|---|
| Jun 30, 2026 | 1.06 Bn |
| Mar 31, 2026 | 917.34 Mn |
| Dec 31, 2025 | 1.16 Bn |
| Sep 30, 2025 | 970.78 Mn |
| Jun 30, 2025 | 969.26 Mn |
| Mar 31, 2025 | 917.84 Mn |
| Dec 31, 2024 | 1.12 Bn |
| Sep 30, 2024 | 881.86 Mn |
| Jun 30, 2024 | 926.36 Mn |
| Mar 31, 2024 | 852.69 Mn |
| Dec 31, 2023 | 1.06 Bn |
| Sep 30, 2023 | 874.98 Mn |
| Jun 30, 2023 | 702.76 Mn |
| Mar 31, 2023 | 613.21 Mn |
| Dec 31, 2022 | 728.60 Mn |
| Sep 30, 2022 | 718.44 Mn |
| Jun 30, 2022 | 680.81 Mn |
| Mar 31, 2022 | 422.37 Mn |
| Dec 31, 2021 | 660.06 Mn |
| Sep 30, 2021 | 614.87 Mn |
Canadian Pacific Kansas City Operating Income 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=operating-income&ticker=CP&period=max&api_key=YOUR_API_KEY
import requests
url = "https://data.businessquant.com/historic"
params = {"slug": "operating-income", "ticker": "CP", "period": "max", "api_key": "YOUR_API_KEY"}
data = requests.get(url, params=params).json()
const res = await fetch("https://data.businessquant.com/historic?slug=operating-income&ticker=CP&period=max&api_key=YOUR_API_KEY");
const data = await res.json();