Installed Building Products (IBP) Cost of Revenue (2013 - 2026)
Installed Building Products (IBP) posted Cost of Revenue of $518.9 million for Q2 2026, up 3.7% from $500.4 million a year earlier and up 15.8% from the prior quarter.
Installed Building Products (IBP) Cost of Revenue (2013 - 2026) Analysis & Trends
For the trailing twelve months through Jun 30, 2026, Cost of Revenue at Installed Building Products was $1.97 billion, up 0.2% year-over-year; for FY2025, it was $1.96 billion, up 0.8% from FY2024.
- Annual Cost of Revenue has increased for 13 consecutive years, with a five-year compound annual growth rate of 11.4% (FY2020 to FY2025).
- In prior years, Installed Building Products' Cost of Revenue was $1.95 billion in FY2024 (+5.4%), $1.85 billion in FY2023 (+0.3%), $1.84 billion in FY2022 (+33.6%) and $1.38 billion in FY2021 (+20.6%).
- The Q2 2026 figure stands as the highest quarterly Cost of Revenue in data going back to Q1 2013.
- On a year-over-year basis, Cost of Revenue increased in six of the last eight quarters, with growth averaging 2.2%.
- The strongest year-over-year quarter for Cost of Revenue in the past five years was Q3 2022, with growth of 40.7%; the weakest was Q3 2023, with a decline of 6.7%.
- According to Business Quant data, Cost of Revenue for the three prior quarters was $448.2 million (Q1 2026), $486 million (Q4 2025) and $514 million (Q3 2025).
Peer Comparison
| # | Company | Market Cap | Enterprise Value | Gross Profit (Qtr) | Cost of Rev (Qtr) |
|---|---|---|---|---|---|
| 1 | Quanta Services | 92.79 Bn | 90.87 Bn | 1.55 Bn | 8.01 Bn |
| 2 | Ferrovial | 35.38 Bn | 13.63 Bn | - | - |
| 3 | Emcor | 31.89 Bn | 28.28 Bn | 1.02 Bn | 4.13 Bn |
| 4 | Jacobs Solutions | 16.27 Bn | 10.94 Bn | 810.70 Mn | 3.27 Bn |
| 5 | Mastec | 14.89 Bn | 13.67 Bn | 556.28 Mn | 3.82 Bn |
| 6 | Sterling Infrastructure | 12.96 Bn | 11.29 Bn | 289.96 Mn | 878.22 Mn |
| 7 | IES Holdings | 9.98 Bn | 8.84 Bn | 340.66 Mn | 902.04 Mn |
| 8 | Stantec | 7.83 Bn | 6.75 Bn | 1.36 Bn | 1.15 Bn |
| 9 | Aecom | 7.47 Bn | 2.59 Bn | -34.04 Mn | 3.62 Bn |
| 10 | Installed Building Products | 4.85 Bn | 3.33 Bn | 258.90 Mn | 518.90 Mn |
Historic Data
| Date | Value |
|---|---|
| Jun 30, 2026 | 518.90 Mn |
| Mar 31, 2026 | 448.20 Mn |
| Dec 31, 2025 | 486.00 Mn |
| Sep 30, 2025 | 514.00 Mn |
| Jun 30, 2025 | 500.40 Mn |
| Mar 31, 2025 | 461.10 Mn |
| Dec 31, 2024 | 498.40 Mn |
| Sep 30, 2024 | 503.80 Mn |
| Jun 30, 2024 | 486.20 Mn |
| Mar 31, 2024 | 458.40 Mn |
| Dec 31, 2023 | 475.00 Mn |
| Sep 30, 2023 | 464.40 Mn |
| Jun 30, 2023 | 459.60 Mn |
| Mar 31, 2023 | 448.90 Mn |
| Dec 31, 2022 | 469.03 Mn |
| Sep 30, 2022 | 497.84 Mn |
| Jun 30, 2022 | 460.04 Mn |
| Mar 31, 2022 | 415.09 Mn |
| Dec 31, 2021 | 377.47 Mn |
| Sep 30, 2021 | 353.88 Mn |
Installed Building Products Cost of Revenue 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=cost-of-revenue&ticker=IBP&period=max&api_key=YOUR_API_KEY
import requests
url = "https://data.businessquant.com/historic"
params = {"slug": "cost-of-revenue", "ticker": "IBP", "period": "max", "api_key": "YOUR_API_KEY"}
data = requests.get(url, params=params).json()
const res = await fetch("https://data.businessquant.com/historic?slug=cost-of-revenue&ticker=IBP&period=max&api_key=YOUR_API_KEY");
const data = await res.json();