Stock Scorer

Old Dominion Freight Line Inc (ODFL)

Every figure below is the company's own, as filed. Nothing is estimated and nothing is smoothed — a period the filing does not support is left blank rather than drawn. Quarters are the company's own, counted from its financial year ending 12-31. Amounts in USD. Every figure as a table ›

Revenue Quarterly

0 600M 1.2B 1.8B Q3 '21: 1.4B Q4 '21: 1.4B Q1 '22: 1.5B Q2 '22: 1.7B Q3 '22: 1.6B Q4 '22: 1.5B Q1 '23: 1.4B Q2 '23: 1.4B Q3 '23: 1.5B Q4 '23: 1.5B Q1 '24: 1.5B Q2 '24: 1.5B Q3 '24: 1.5B Q4 '24: 1.4B Q1 '25: 1.4B Q2 '25: 1.4B Q3 '25: 1.4B Q4 '25: 1.3B Q1 '26: 1.3B Q2 '26: 1.6B Q4 '21 Q3 '22 Q2 '23 Q1 '24 Q4 '24 Q3 '25 Q2 '26

Operating Income Quarterly

0 200M 400M 600M Q3 '21: 383.4M Q4 '21: 372.5M Q1 '22: 405.6M Q2 '22: 508.7M Q3 '22: 496.1M Q4 '22: 430.2M Q1 '23: 383M Q2 '23: 391.6M Q3 '23: 445M Q4 '23: 421M Q1 '24: 386.4M Q2 '24: 421.7M Q3 '24: 401.9M Q4 '24: 334M Q1 '25: 338.1M Q2 '25: 357.9M Q3 '25: 360.8M Q4 '25: 304.3M Q1 '26: 317.3M Q2 '26: 465.3M Q4 '21 Q3 '22 Q2 '23 Q1 '24 Q4 '24 Q3 '25 Q2 '26

Net Income Quarterly

0 150M 300M 450M Q3 '21: 286.6M Q4 '21: 278.8M Q1 '22: 299.8M Q2 '22: 376.1M Q3 '22: 377.4M Q4 '22: 323.9M Q1 '23: 285M Q2 '23: 292.4M Q3 '23: 339.3M Q4 '23: 322.8M Q1 '24: 292.3M Q2 '24: 322M Q3 '24: 308.6M Q4 '24: 263.1M Q1 '25: 254.7M Q2 '25: 268.6M Q3 '25: 270.9M Q4 '25: 229.5M Q1 '26: 238.3M Q2 '26: 350.6M Q4 '21 Q3 '22 Q2 '23 Q1 '24 Q4 '24 Q3 '25 Q2 '26

Operating Cash Flow Quarterly

0 200M 400M 600M Q3 '21: 364.3M Q4 '21: 340M Q1 '22: 388.7M Q2 '22: 427.3M Q3 '22: 514.2M Q4 '22: 361.3M Q1 '23: 415.4M Q2 '23: 287.8M Q3 '23: 429.2M Q4 '23: 436.7M Q1 '24: 423.9M Q2 '24: 387.9M Q3 '24: 446.5M Q4 '24: 401.1M Q1 '25: 336.5M Q2 '25: 285.8M Q3 '25: 437.5M Q4 '25: 310.3M Q1 '26: 373.6M Q2 '26: 272.7M Q4 '21 Q3 '22 Q2 '23 Q1 '24 Q4 '24 Q3 '25 Q2 '26

Free Cash Flow Quarterly

0 150M 300M 450M Q3 '21: 185.7M Q4 '21: 174.6M Q1 '22: 295M Q2 '22: 198M Q3 '22: 332.5M Q4 '22: 91M Q1 '23: 180.6M Q2 '23: 43.2M Q3 '23: 257.3M Q4 '23: 330.7M Q1 '24: 304.4M Q2 '24: 149.7M Q3 '24: 203.7M Q4 '24: 230.1M Q1 '25: 248.4M Q2 '25: 98.7M Q3 '25: 343.5M Q4 '25: 264.5M Q1 '26: 311.1M Q2 '26: 195.7M Q4 '21 Q3 '22 Q2 '23 Q1 '24 Q4 '24 Q3 '25 Q2 '26

Operating cash flow minus capital expenditure.

Shares Outstanding Quarterly

0 80M 160M 240M Q1 '20: 119.8M Q2 '20: 118.4M Q3 '20: 117.9M Q1 '21: 117.3M Q2 '21: 116.6M Q3 '21: 116.2M Q1 '22: 115.2M Q2 '22: 113.8M Q3 '22: 112.3M Q1 '23: 221.4M Q2 '23: 220.4M Q3 '23: 219.7M Q1 '24: 218.8M Q2 '24: 217.5M Q3 '24: 215.2M Q1 '25: 213.5M Q2 '25: 212.2M Q3 '25: 210.9M Q1 '26: 209.3M Q2 '26: 208.7M Q2 '20 Q2 '21 Q2 '22 Q2 '23 Q2 '24 Q2 '25 Q2 '26

Weighted average diluted, as the filer reports it for each period. An average cannot be added across periods, so this one is always shown per period the filer tagged rather than as a trailing year.

EPS TTM

0.00 4.00 8.00 12.00 Q3 '20: 5.87 Q4 '20: 5.68 Q1 '21: 6.27 Q2 '21: 7.33 Q3 '21: 8.09 Q4 '21: 8.89 Q1 '22: 9.79 Q2 '22: 10.78 Q3 '22: 11.67 Q4 '23: 5.63 Q1 '24: 5.68 Q2 '24: 5.83 Q3 '24: 5.72 Q4 '24: 5.48 Q1 '25: 5.33 Q2 '25: 5.12 Q3 '25: 4.97 Q4 '25: 4.84 Q1 '26: 4.79 Q2 '26: 5.20 Q4 '20 Q3 '21 Q2 '22 Q1 '24 Q4 '24 Q3 '25 Q2 '26

The filer's own published earnings a share for each quarter, four quarters added up. The company page divides trailing net income by the share count instead, which lands within about 1% of this and is not the same sum, so the two are named differently rather than presented as one figure.

Not drawn for ODFL: Gross Profit, Cost of Revenue. Nothing in this filer's XBRL supports them for the periods asked for. That is a gap in the filing, not a zero, and drawing a flat line would be an invention.