AI-assembled from public SEC filings
North American Class I railroads peer review
Descriptive comparison assembled from public SEC filings and verified companyfacts.
This feature-specific review is assembled from a frozen evidence pack of public SEC filing quotes and verified SEC companyfacts numbers. It is descriptive only and makes no judgment about which company is better. It is not a rating, recommendation, endorsement, forecast, or investment advice. Figures are as of their cited filing dates.
Methodology
The cluster is selected mechanically from public SEC SIC 4011 railroad companies already present in grepcent's processed universe. Requested Canadian-domiciled SEC filers CNI and CP are disclosed in the definition but are not included unless present in the processed cache. Absolute-dollar rows are reported-currency filing facts when non-U.S. filers are present; ratio comparisons are unitless. The review publishes no proprietary index-membership labels.
Verified Quantitative Matrix
Numbers are templated from frozen SEC companyfacts-derived facts already verified by grepcent. Fiscal periods and filing dates are shown in each cell; code-computed comparisons below only use calendar-aligned periods.
| Metric | UNP | CSX | NSC | CNI | CP |
|---|---|---|---|---|---|
| Revenue | 24,510,000,000 source · NUM_UNP_REVENUE_FY2025 | 14,092,000,000 source · NUM_CSX_REVENUE_FY2025 | 12,180,000,000 source · NUM_NSC_REVENUE_FY2025 | 17,304,000,000 source · NUM_CNI_REVENUE_FY2025 | 15,078,000,000 source · NUM_CP_REVENUE_FY2025 |
| Operating expense / revenue | 59.83% source · NUM_UNP_OPERATING_RATIO_FY2025 | 67.92% source · NUM_CSX_OPERATING_RATIO_FY2025 | 64.24% source · NUM_NSC_OPERATING_RATIO_FY2025 | 61.93% source · NUM_CNI_OPERATING_RATIO_FY2025 | 62.80% source · NUM_CP_OPERATING_RATIO_FY2025 |
| Operating margin | 40.17% source · NUM_UNP_OPERATING_MARGIN_FY2025 | 32.08% source · NUM_CSX_OPERATING_MARGIN_FY2025 | 35.76% source · NUM_NSC_OPERATING_MARGIN_FY2025 | 38.07% source · NUM_CNI_OPERATING_MARGIN_FY2025 | 37.20% source · NUM_CP_OPERATING_MARGIN_FY2025 |
| Net margin | 29.12% source · NUM_UNP_NET_MARGIN_FY2025 | 20.50% source · NUM_CSX_NET_MARGIN_FY2025 | 23.59% source · NUM_NSC_NET_MARGIN_FY2025 | 27.28% source · NUM_CNI_NET_MARGIN_FY2025 | 27.46% source · NUM_CP_NET_MARGIN_FY2025 |
| Return on equity | 38.65% source · NUM_UNP_ROE_FY2025 | 21.95% source · NUM_CSX_ROE_FY2025 | 18.48% source · NUM_NSC_ROE_FY2025 | 21.88% source · NUM_CNI_ROE_FY2025 | 9.03% source · NUM_CP_ROE_FY2025 |
| Capital expenditures | 3,791,000,000 source · NUM_UNP_CAPEX_FY2025 | 2,902,000,000 source · NUM_CSX_CAPEX_FY2025 | 2,204,000,000 source · NUM_NSC_CAPEX_FY2025 | 3,658,000,000 source · NUM_CNI_CAPEX_FY2025 | 3,102,000,000 source · NUM_CP_CAPEX_FY2025 |
| Capex / revenue | 15.47% source · NUM_UNP_CAPEX_INTENSITY_FY2025 | 20.59% source · NUM_CSX_CAPEX_INTENSITY_FY2025 | 18.10% source · NUM_NSC_CAPEX_INTENSITY_FY2025 | 21.14% source · NUM_CNI_CAPEX_INTENSITY_FY2025 | 20.57% source · NUM_CP_CAPEX_INTENSITY_FY2025 |
| Free cash flow | 5,499,000,000 source · NUM_UNP_FREE_CASH_FLOW_FY2025 | 1,711,000,000 source · NUM_CSX_FREE_CASH_FLOW_FY2025 | 2,157,000,000 source · NUM_NSC_FREE_CASH_FLOW_FY2025 | 3,391,000,000 source · NUM_CNI_FREE_CASH_FLOW_FY2025 | 2,207,000,000 source · NUM_CP_FREE_CASH_FLOW_FY2025 |
| Liabilities / equity leverage | 2.77 source · NUM_UNP_LIABILITIES_TO_EQUITY_FY2025 | 2.32 source · NUM_CSX_LIABILITIES_TO_EQUITY_FY2025 | 1.91 source · NUM_NSC_LIABILITIES_TO_EQUITY_FY2025 | 1.71 source · NUM_CNI_LIABILITIES_TO_EQUITY_FY2025 | 0.85 source · NUM_CP_LIABILITIES_TO_EQUITY_FY2025 |
| Dividends paid | 3,236,000,000 source · NUM_UNP_DIVIDENDS_PAID_FY2025 | 972,000,000 source · NUM_CSX_DIVIDENDS_PAID_FY2025 | 1,215,000,000 source · NUM_NSC_DIVIDENDS_PAID_FY2025 | 2,208,000,000 source · NUM_CNI_DIVIDENDS_PAID_FY2025 | 796,000,000 source · NUM_CP_DIVIDENDS_PAID_FY2025 |
| Share buybacks | 2,679,000,000 source · NUM_UNP_SHARE_BUYBACKS_FY2025 | 1,396,000,000 source · NUM_CSX_SHARE_BUYBACKS_FY2025 | 534,000,000 source · NUM_NSC_SHARE_BUYBACKS_FY2025 | 2,059,000,000 source · NUM_CNI_SHARE_BUYBACKS_FY2025 | 3,942,000,000 source · NUM_CP_SHARE_BUYBACKS_FY2025 |
| Cash and equivalents | 1,266,000,000 source · NUM_UNP_CASH_FY2025 | Not available. | 1,530,000,000 source · NUM_NSC_CASH_FY2025 | 350,000,000 source · NUM_CNI_CASH_FY2025 | 184,000,000 source · NUM_CP_CASH_FY2025 |
| Volume / RTM / carload KPIs | Quarantined: Only 0 of 5 companies have a verified fact; threshold is 2. | ||||
Code-computed comparisons
- grepcent-computed operating expense / revenue range: range endpoints are UNP (59.83%) and CSX (67.92%).
- grepcent-computed capex intensity range: range endpoints are UNP (15.47%) and CNI (21.14%).
Narrative Matrix
| Dimension | UNP | CSX | NSC | CNI | CP |
|---|---|---|---|---|---|
| Business model | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. | In its latest annual MD&A, NSC describes this business model item. [FACT:Q_NSC_BUSINESS_MODEL_1] Our network serves a majority of the country's population and manufacturing base, with connections to every major container port on the Atlantic coast as well as major ports in the Gulf Coast and Great Lakes. company page · source filing · fact Q_NSC_BUSINESS_MODEL_1 · filed 2026-02-09 | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. |
| Geographic and customer exposure | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. |
| Capital allocation | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. |
| Stated strategy in filings | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. |
| Idiosyncratic risks in filings | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. |
| Recent narrative change | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. | Quarantined: no direct dimension-relevant quote survived the gate. |
Gate summary
Quarantined quantitative rows
- rail_volume_kpis: Only 0 of 5 companies have a verified fact; threshold is 2.
Quarantined dimensions
- geographic_customer_exposure: No verified cells survived the gate.
- capital_allocation: No verified cells survived the gate.
- stated_strategy: No verified cells survived the gate.
- idiosyncratic_risks: No verified cells survived the gate.
- recent_narrative_change: No verified cells survived the gate.
Quarantined cells
- UNP / business_model: No direct dimension-relevant quote survived the evidence gate.
- CSX / business_model: No direct dimension-relevant quote survived the evidence gate.
- CNI / business_model: No direct dimension-relevant quote survived the evidence gate.
- CP / business_model: No direct dimension-relevant quote survived the evidence gate.
- UNP / geographic_customer_exposure: No direct dimension-relevant quote survived the evidence gate.
- CSX / geographic_customer_exposure: No direct dimension-relevant quote survived the evidence gate.
- NSC / geographic_customer_exposure: No direct dimension-relevant quote survived the evidence gate.
- CNI / geographic_customer_exposure: No direct dimension-relevant quote survived the evidence gate.
- CP / geographic_customer_exposure: No direct dimension-relevant quote survived the evidence gate.
- UNP / capital_allocation: No direct dimension-relevant quote survived the evidence gate.
- CSX / capital_allocation: No direct dimension-relevant quote survived the evidence gate.
- NSC / capital_allocation: No direct dimension-relevant quote survived the evidence gate.
- CNI / capital_allocation: No direct dimension-relevant quote survived the evidence gate.
- CP / capital_allocation: No direct dimension-relevant quote survived the evidence gate.
- UNP / stated_strategy: No direct dimension-relevant quote survived the evidence gate.
- CSX / stated_strategy: No direct dimension-relevant quote survived the evidence gate.
- NSC / stated_strategy: No direct dimension-relevant quote survived the evidence gate.
- CNI / stated_strategy: No direct dimension-relevant quote survived the evidence gate.
- CP / stated_strategy: No direct dimension-relevant quote survived the evidence gate.
- UNP / idiosyncratic_risks: No direct dimension-relevant quote survived the evidence gate.
- CSX / idiosyncratic_risks: No direct dimension-relevant quote survived the evidence gate.
- NSC / idiosyncratic_risks: No direct dimension-relevant quote survived the evidence gate.
- CNI / idiosyncratic_risks: No direct dimension-relevant quote survived the evidence gate.
- CP / idiosyncratic_risks: No direct dimension-relevant quote survived the evidence gate.