Orion Group Holdings (ORN) Gross Margin (2010 - 2026)
Orion Group Holdings (ORN) posted Gross Margin of 10.33% for Q2 2026, down 2.23 percentage points from 12.57% a year earlier and down 1.63 percentage points from the prior quarter.
Orion Group Holdings (ORN) Gross Margin (2010 - 2026) Analysis & Trends
For the trailing twelve months through Jun 30, 2026, Gross Margin at Orion Group Holdings was 11.78%, down 0.90 percentage points year-over-year; for FY2025, it came in at 12.39%, up 0.95 percentage points from FY2024.
- Annual Gross Margin has increased for three consecutive years, with a five-year change of +0.46 percentage points (FY2020 to FY2025).
- In prior years, Orion Group Holdings' Gross Margin was 11.45% in FY2024 (+2.78 pp), 8.66% in FY2023 (+1.88 pp), 6.78% in FY2022 (-0.03 pp) and 6.81% in FY2021 (-5.12 pp).
- The Q2 2026 figure stands as the lowest quarterly Gross Margin since Q2 2024.
- On a year-over-year basis, Gross Margin has declined in each of the last three quarters, with an average year-over-year change of +0.65 percentage points over the last eight quarters.
- The strongest year-over-year quarter for Gross Margin in the past five years was Q4 2023, with a gain of 6.21 percentage points; the weakest was Q4 2021, with a drop of 8.66 percentage points.
- According to Business Quant data, Gross Margin for the three prior quarters was 11.96% (Q1 2026), 11.60% (Q4 2025) and 13.22% (Q3 2025).
Peer Comparison
| # | Company | Market Cap | Enterprise Value | Gross Profit (Qtr) | Gross Margin (Qtr) |
|---|---|---|---|---|---|
| 1 | Quanta Services | 89.46 Bn | 87.54 Bn | 1.55 Bn | 16.17% |
| 2 | Ferrovial | 35.36 Bn | 13.61 Bn | - | - |
| 3 | Emcor | 31.08 Bn | 27.47 Bn | 1.02 Bn | 19.83% |
| 4 | Jacobs Solutions | 16.39 Bn | 11.06 Bn | 810.70 Mn | 19.89% |
| 5 | Mastec | 14.65 Bn | 13.43 Bn | 556.28 Mn | 12.72% |
| 6 | Sterling Infrastructure | 12.60 Bn | 10.93 Bn | 289.96 Mn | 24.82% |
| 7 | IES Holdings | 9.66 Bn | 8.52 Bn | 340.66 Mn | 27.41% |
| 8 | Stantec | 7.88 Bn | 6.81 Bn | 1.36 Bn | 43.88% |
| 9 | Aecom | 7.57 Bn | 2.69 Bn | -34.04 Mn | -0.95% |
| 10 | Orion Group Holdings | 355.00 Mn | 339.72 Mn | 22.93 Mn | 10.33% |
Historic Data
| Date | Value |
|---|---|
| Jun 30, 2026 | 10.33% |
| Mar 31, 2026 | 11.96% |
| Dec 31, 2025 | 11.60% |
| Sep 30, 2025 | 13.22% |
| Jun 30, 2025 | 12.57% |
| Mar 31, 2025 | 12.20% |
| Dec 31, 2024 | 13.96% |
| Sep 30, 2024 | 11.94% |
| Jun 30, 2024 | 9.51% |
| Mar 31, 2024 | 9.67% |
| Dec 31, 2023 | 11.39% |
| Sep 30, 2023 | 11.32% |
| Jun 30, 2023 | 7.55% |
| Mar 31, 2023 | 3.67% |
| Dec 31, 2022 | 5.18% |
| Sep 30, 2022 | 7.36% |
| Jun 30, 2022 | 7.37% |
| Mar 31, 2022 | 7.33% |
| Dec 31, 2021 | 4.09% |
| Sep 30, 2021 | 4.70% |
Orion Group Holdings Gross Margin 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=gross-margin&ticker=ORN&period=max&api_key=YOUR_API_KEY
import requests
url = "https://data.businessquant.com/historic"
params = {"slug": "gross-margin", "ticker": "ORN", "period": "max", "api_key": "YOUR_API_KEY"}
data = requests.get(url, params=params).json()
const res = await fetch("https://data.businessquant.com/historic?slug=gross-margin&ticker=ORN&period=max&api_key=YOUR_API_KEY");
const data = await res.json();