Canadian National Railway (CNI) Capital Expenditures (2009 - 2025)
Canadian National Railway (CNI) recorded Capital Expenditures of $2.62 billion in the year ended Dec 31, 2025, up 1.0% from $2.59 billion a year earlier.
Canadian National Railway (CNI) Capital Expenditures (2009 - 2025) Analysis & Trends
Starting with the year ended Dec 31, 2009, Canadian National Railway's Capital Expenditures history includes 17 years.
- Annual Capital Expenditures has increased for three straight years, with a five-year compound annual growth rate of 4.1% (years ended Dec 2020 to Dec 2025).
- The figure for the year ended Dec 31, 2025 is the highest annual Capital Expenditures since the year ended Dec 31, 2019.
- Per Business Quant data, CNI's Capital Expenditures was $2.59 billion in the year ended Dec 31, 2024 (+9.7%), $2.36 billion in the year ended Dec 31, 2023 (+11.7%), $2.12 billion in the year ended Dec 31, 2022 (-8.3%) and $2.31 billion in the year ended Dec 31, 2021 (+7.9%).
Peer Comparison
Historic Data
| Date | Value |
|---|---|
| Dec 31, 2025 | -881.30 Mn |
| Dec 31, 2024 | -675.76 Mn |
| Dec 31, 2023 | -686.06 Mn |
| Dec 31, 2022 | -677.77 Mn |
| Sep 30, 2022 | -744.00 Mn |
| Jun 30, 2022 | -707.00 Mn |
| Dec 31, 2021 | -725.11 Mn |
| Sep 30, 2021 | -836.00 Mn |
| Jun 30, 2021 | -729.00 Mn |
| Dec 31, 2020 | -655.83 Mn |
| Sep 30, 2020 | -691.00 Mn |
| Jun 30, 2020 | -514.94 Mn |
| Mar 31, 2020 | -449.77 Mn |
| Dec 31, 2019 | -771.13 Mn |
| Sep 30, 2019 | -961.00 Mn |
| Jun 30, 2019 | -1.18 Bn |
| Mar 31, 2019 | -528.61 Mn |
| Dec 31, 2018 | -957.63 Mn |
| Jun 30, 2018 | -840.00 Mn |
| Mar 31, 2018 | -425.00 Mn |
Canadian National Railway Capital Expenditures 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=capital-expenditures&ticker=CNI&period=max&api_key=YOUR_API_KEY
import requests
url = "https://data.businessquant.com/historic"
params = {"slug": "capital-expenditures", "ticker": "CNI", "period": "max", "api_key": "YOUR_API_KEY"}
data = requests.get(url, params=params).json()
const res = await fetch("https://data.businessquant.com/historic?slug=capital-expenditures&ticker=CNI&period=max&api_key=YOUR_API_KEY");
const data = await res.json();