O’Reilly Automotive (ORLY) financials
O’Reilly Automotive revenue and earnings by year
O’Reilly Automotive's revenue was $17.8 billion in the fiscal year to December 31, 2025, up 6.4% from the year before. Net income was $2.54 billion, 14.3% of revenue. Since the fiscal year to December 31, 2016, revenue has grown 8.4% a year on average.
Fiscal years, each labelled by the calendar year it ended in.
Income statement, the last 10 fiscal years
| Fiscal year to | Dec 2025 | Dec 2024 | Dec 2023 | Dec 2022 | Dec 2021 | Dec 2020 | Dec 2019 | Dec 2018 | Dec 2017 | Dec 2016 |
|---|---|---|---|---|---|---|---|---|---|---|
| Revenue | 17.8 | 16.7 | 15.8 | 14.4 | 13.3 | 11.6 | 10.1 | 9.5 | 9.0 | 8.6 |
| Revenue growth | 6.4% | 5.7% | 9.7% | 8.1% | 14.8% | 14.3% | 6.4% | 6.2% | 4.5% | — |
| Gross profit | 9.2 | 8.6 | 8.1 | 7.4 | 7.0 | 6.1 | 5.4 | 5.0 | 4.7 | 4.5 |
| Gross margin | 51.6% | 51.2% | 51.3% | 51.2% | 52.7% | 52.4% | 53.1% | 52.8% | 52.6% | 52.5% |
| Operating income | 3.5 | 3.3 | 3.2 | 3.0 | 2.9 | 2.4 | 1.9 | 1.8 | 1.7 | 1.7 |
| Operating margin | 19.5% | 19.5% | 20.2% | 20.5% | 21.9% | 20.8% | 18.9% | 19.0% | 19.2% | 19.8% |
| Net income | 2.5 | 2.4 | 2.3 | 2.2 | 2.2 | 1.8 | 1.4 | 1.3 | 1.1 | 1.0 |
| Net margin | 14.3% | 14.3% | 14.8% | 15.1% | 16.2% | 15.1% | 13.7% | 13.9% | 12.6% | 12.1% |
| Diluted EPS | $2.97 | $2.71 | $2.57 | $2.23 | $2.07 | $1.57 | $1.19 | $1.07 | $0.84 | $0.72 |
| Free cash flow | 1.6 | 2.0 | 2.0 | 2.6 | 2.8 | 2.4 | 1.1 | 1.2 | 0.9 | 1.0 |
Diluted EPS is stated in today's shares (adjusted for every split since). Quarterly statements and the income statement as a flow chart are in the app: open ORLY in Markets.
See also: ORLY valuation and P/E history · ORLY returns
No forecast, no recommendation. This page describes O’Reilly Automotive from published data; it is not advice to buy, sell or hold any security.
Figures as of the close on Oct 30, 2026 unless a row says otherwise. Prices are split adjusted; returns include dividends reinvested. Data may be delayed. See the disclaimer and how TrendArc works.