ORN · XBRL financial data
Orion Group Holdings financial statements, every fiscal year
The same tables from 6 filings, lined up. Matched by XBRL tag: renamed lines keep their history.
How these numbers work
- Every number comes from the company's XBRL financial data filed with the SEC, and each one links to its filing.
- Lines are matched by XBRL tag, so a line renamed between filings keeps its history.
- * marks a quarter worked out from the filing totals: the 10-K year minus the first three quarters, or a year-to-date total minus the earlier one. Fourth-quarter earnings per share is fourth-quarter net income over the fourth-quarter weighted shares.
- 0 means a filing states zero; a dash (—) means no filing states that number.
- “year only” means the 10-K gives the full year but not the quarters needed to work out the fourth. A worked-out quarter of revenue, cost of revenue or operating cash flow more than twice the company's largest quarter of the two years before is shown this way too.
- Gross profit is shown as the company reports it; a worked-out quarter must equal revenue less cost of revenue for that quarter, or it is a dash.
- Operating income can be above gross profit when the company books other operating income between the two, shown on its own line.
- Shares outstanding come from each filing's cover page, as of the date printed there.
- Quarters are fiscal: Q2 FY27 is the second quarter of the company's fiscal 2027.
Income statement
CSVFiscal years (ORN's year ends in late December)
| In thousands of dollars | Dec 31, 2020 | Dec 31, 2021 | Dec 31, 2022 | Dec 31, 2023 | Dec 31, 2024 | Dec 31, 2025 |
|---|---|---|---|---|---|---|
| Revenue from contracts with customers | 709,942 | 601,360 | 748,322 | 711,778 | 796,394 | 852,260 |
| Cost of goods and services sold | 625,239 | 560,393 | 697,580 | 650,115 | 705,234 | 746,646 |
| Gross profit | 84,703 | 40,967 | 50,742 | 61,663 | 91,160 | 105,614 |
| Selling, general and administrative | 65,091 | 60,181 | 62,503 | 69,431 | 82,537 | 93,471 |
| Operating income (loss) | 26,586 | (9,317) | (8,030) | (6,630) | 11,521 | 14,611 |
| Interest expense | 4,920 | 5,076 | 4,456 | 11,659 | 13,381 | 8,863 |
| Income tax expense (benefit) | 1,976 | 502 | 429 | 330 | 348 | 419 |
| Net income (loss) | 20,220 | (14,560) | (12,612) | (17,875) | (1,644) | 2,488 |
| Earnings per share, basic USD per share | 0.67 | (0.47) | (0.40) | (0.55) | (0.05) | 0.06 |
| Earnings per share, diluted USD per share | 0.67 | (0.47) | (0.40) | (0.55) | (0.05) | 0.06 |
| Weighted average shares, basic thousands of shares | 30,122 | 30,764 | 31,402 | 32,347 | 34,783 | 39,627 |
| Weighted average shares, diluted thousands of shares | 30,122 | 30,764 | 31,402 | 32,347 | 34,783 | 39,639 |
Balance sheet
CSVFiscal years (ORN's year ends in late December)
Cash flows
CSVFiscal years (ORN's year ends in late December)
| In thousands of dollars | Dec 31, 2020 | Dec 31, 2021 | Dec 31, 2022 | Dec 31, 2023 | Dec 31, 2024 | Dec 31, 2025 |
|---|---|---|---|---|---|---|
| Net income (loss) | 20,220 | (14,560) | (12,612) | (17,875) | (1,644) | 2,488 |
| Stock-based compensation | 1,998 | 2,401 | 2,754 | 2,042 | 4,009 | 5,450 |
| Depreciation and amortization | 23,893 | 22,608 | 20,915 | 18,844 | 15,545 | 13,680 |
| Net cash from operating activities | 46,032 | 69 | 9,565 | 17,178 | 12,676 | 28,066 |
| Purchases of property and equipment | 14,694 | 16,975 | 14,584 | 8,909 | 14,091 | 38,862 |
| Net cash from investing activities | (3,129) | 10,629 | (9,704) | 2,170 | (11,482) | (13,703) |
| Proceeds from issuing common stock | — | — | — | — | 26,421 | — |
| Share repurchases | 188 | — | — | — | — | — |
| Repayments of long-term debt | — | — | — | — | 15,000 | 23,000 |
| Net cash from financing activities | (42,400) | 6 | (8,370) | 7,806 | (3,816) | (39,394) |
Compare with peers
SIC 1600 and related industry codes, similar size. Each row is the latest quarter reported.
How peers are chosen
- SIC 1600 and related industry codes with public float (or, where float is missing, quarterly revenue) between 0.2x and 5x the company's.
- Each row is the latest quarter the company has reported, named in the Quarter column; when that filing is a 10-K, it is the fourth quarter, never the full year.
- * marks a quarter worked out from the filing totals: for a 10-K, the year less the first three quarters; for a 10-Q, the year-to-date total less the earlier one.
- A cell reading “not reported” means the filings give no figure for that quarter alone.
| Company | Cash ($K) | Revenue, quarter ($K) | Operating cash flow, quarter ($K) | Shares outstanding | Quarter |
|---|---|---|---|---|---|
| Orion Group Holdings | 5,671 | 256,152 | 1,977* | 40.7M | 10-QSep 30, 2026 |
| Cardinal Infrastructure Group | 339,092 | not reported | 12,678* | not reported | 10-QJun 30, 2026 |
| Great Lakes Dredge & Dock | 13,361 | 256,452* | 79,748* | 66.8M | 10-K/ADec 31, 2025 |
| SOLV Energy | 363,968 | 951,243 | 31,798* | not reported | 10-QJun 30, 2026 |
Not investment advice. Not affiliated with the U.S. SEC.
