Canadian Pacific Kansas City (CP) Net Income (2014 - 2026)
Canadian Pacific Kansas City's Net Income came in at $740.28 million for Q2 2026, down 16.9% from $890.59 million a year earlier but up 20.1% from the prior quarter.
Canadian Pacific Kansas City (CP) Net Income (2014 - 2026) Analysis & Trends
Over the trailing twelve months to Jun 30, 2026, Canadian Pacific Kansas City reported Net Income of $2.8 billion, down 6.7% year-over-year; for FY2025, it came in at $2.96 billion, up 9.2% from FY2024.
- Net Income carries a five-year compound annual growth rate of 10.2% (FY2020 to FY2025).
- Going back by year, Net Income was $2.71 billion in FY2024 (-6.7%), $2.91 billion in FY2023 (+7.5%), $2.71 billion in FY2022 (+18.9%) and $2.28 billion in FY2021 (+24.7%).
- The five-year range for quarterly Net Income is $374.96 million (Q3 2021) to $986.4 million (Q2 2023).
- Year-over-year, Net Income has declined for three consecutive quarters, with growth averaging 5.5% over the last eight quarters.
- The fastest year-over-year change in Net Income over five years came in Q4 2022 (growth of 121.9%), and the weakest in Q2 2022 (a decline of 40.8%).
- Business Quant data shows CP's Net Income at $616.18 million (Q1 2026), $772.3 million (Q4 2025) and $666.32 million (Q3 2025) in the three quarters before Q2 2026.
Peer Comparison
| # | Company | Market Cap | Enterprise Value | Gross Profit (Qtr) | Net Income (Qtr) |
|---|---|---|---|---|---|
| 1 | Union Pacific | 161.62 Bn | 156.15 Bn | - | 1.99 Bn |
| 2 | Csx | 86.16 Bn | 82.37 Bn | - | 1.00 Bn |
| 3 | Canadian Pacific Kansas City | 74.78 Bn | 74.50 Bn | - | 740.28 Mn |
| 4 | United Parcel Service | 70.01 Bn | 46.94 Bn | - | 604.00 Mn |
| 5 | Norfolk Southern | 69.45 Bn | 64.09 Bn | - | 734.00 Mn |
| 6 | Fedex | 67.46 Bn | 33.40 Bn | - | 1.60 Bn |
| 7 | Delta Air Lines | 54.88 Bn | 37.06 Bn | - | 1.60 Bn |
| 8 | Old Dominion Freight Line | 36.07 Bn | 35.33 Bn | - | 350.60 Mn |
| 9 | Ryanair Holdings | 28.71 Bn | 12.72 Bn | 3.13 Bn | 625.00 Mn |
| 10 | Copart | 25.27 Bn | 9.69 Bn | 645.66 Mn | 326.83 Mn |
Historic Data
| Date | Value |
|---|---|
| Jun 30, 2026 | 740.28 Mn |
| Mar 31, 2026 | 616.18 Mn |
| Dec 31, 2025 | 772.30 Mn |
| Sep 30, 2025 | 666.32 Mn |
| Jun 30, 2025 | 890.59 Mn |
| Mar 31, 2025 | 633.50 Mn |
| Dec 31, 2024 | 858.30 Mn |
| Sep 30, 2024 | 613.57 Mn |
| Jun 30, 2024 | 660.22 Mn |
| Mar 31, 2024 | 574.40 Mn |
| Dec 31, 2023 | 747.76 Mn |
| Sep 30, 2023 | 581.83 Mn |
| Jun 30, 2023 | 986.40 Mn |
| Mar 31, 2023 | 591.76 Mn |
| Dec 31, 2022 | 936.35 Mn |
| Sep 30, 2022 | 683.17 Mn |
| Jun 30, 2022 | 600.02 Mn |
| Mar 31, 2022 | 465.79 Mn |
| Dec 31, 2021 | 422.05 Mn |
| Sep 30, 2021 | 374.96 Mn |
Canadian Pacific Kansas City Net 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=net-income&ticker=CP&period=max&api_key=YOUR_API_KEY
import requests
url = "https://data.businessquant.com/historic"
params = {"slug": "net-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=net-income&ticker=CP&period=max&api_key=YOUR_API_KEY");
const data = await res.json();