Custom Truck One Source (CTOS) EBITDA (2018 - 2026)
Custom Truck One Source (CTOS) posted EBITDA of $115.51 million for Q2 2026, up 22.9% from $93.96 million a year earlier and up 15.9% from the prior quarter.
Custom Truck One Source (CTOS) EBITDA (2018 - 2026) Analysis & Trends
For the trailing twelve months through Jun 30, 2026, EBITDA at Custom Truck One Source was $435.51 million, up 14.4% year-over-year; for FY2025, it was $388.82 million, up 7.3% from FY2024.
- Annual EBITDA shows a five-year compound annual growth rate of 29.8% (FY2020 to FY2025).
- In prior years, Custom Truck One Source's EBITDA was $362.2 million in FY2024 (-7.1%), $389.94 million in FY2023 (+19.3%), $326.79 million in FY2022 (+95.6%) and $167.11 million in FY2021 (+58.6%).
- Quarterly EBITDA has run from a low of $61.48 million in Q3 2021 to a high of $129.85 million in Q4 2024 over five years.
- On a year-over-year basis, EBITDA increased in five of the last eight quarters, with growth averaging 12.7%.
- The strongest year-over-year quarter for EBITDA in the past five years was Q2 2022, with growth of 363.6%; the weakest was Q2 2024, with a decline of 20.6%.
- According to Business Quant data, EBITDA for the three prior quarters was $99.68 million (Q1 2026), $120.85 million (Q4 2025) and $99.47 million (Q3 2025).
Peer Comparison
| # | Company | Market Cap | Enterprise Value | Gross Profit (Qtr) | EBITDA (Qtr) |
|---|---|---|---|---|---|
| 1 | United Rentals | 66.55 Bn | 65.31 Bn | 1.73 Bn | 1.26 Bn |
| 2 | W.W. Grainger | 63.97 Bn | 61.57 Bn | 1.98 Bn | 873.00 Mn |
| 3 | Fastenal | 60.57 Bn | 59.56 Bn | 1.10 Bn | 575.70 Mn |
| 4 | Ferguson Enterprises | 44.32 Bn | 41.53 Bn | 2.32 Bn | 709.00 Mn |
| 5 | Sunbelt Rentals Holdings | 32.59 Bn | 32.47 Bn | 1.25 Bn | 1.28 Bn |
| 6 | Reliance | 21.50 Bn | 20.54 Bn | 1.30 Bn | 511.10 Mn |
| 7 | Wesco International | 17.13 Bn | 14.45 Bn | 1.46 Bn | 444.90 Mn |
| 8 | Applied Industrial Technologies | 12.67 Bn | 12.55 Bn | 411.22 Mn | 175.57 Mn |
| 9 | Avantor | 11.67 Bn | 10.46 Bn | 537.00 Mn | 229.10 Mn |
| 10 | Custom Truck One Source | 2.13 Bn | 2.10 Bn | 123.97 Mn | 116.62 Mn |
Historic Data
| Date | Value |
|---|---|
| Jun 30, 2026 | 116.62 Mn |
| Mar 31, 2026 | 100.77 Mn |
| Dec 31, 2025 | 121.94 Mn |
| Sep 30, 2025 | 100.54 Mn |
| Jun 30, 2025 | 95.12 Mn |
| Mar 31, 2025 | 75.61 Mn |
| Dec 31, 2024 | 130.92 Mn |
| Sep 30, 2024 | 84.10 Mn |
| Jun 30, 2024 | 76.92 Mn |
| Mar 31, 2024 | 75.96 Mn |
| Dec 31, 2023 | 111.82 Mn |
| Sep 30, 2023 | 93.76 Mn |
| Jun 30, 2023 | 95.64 Mn |
| Mar 31, 2023 | 94.39 Mn |
| Dec 31, 2022 | 105.39 Mn |
| Sep 30, 2022 | 78.44 Mn |
| Jun 30, 2022 | 74.20 Mn |
| Mar 31, 2022 | 73.63 Mn |
| Dec 31, 2021 | 74.27 Mn |
| Sep 30, 2021 | 62.66 Mn |
Custom Truck One Source EBITDA 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=ebitda&ticker=CTOS&period=max&api_key=YOUR_API_KEY
import requests
url = "https://data.businessquant.com/historic"
params = {"slug": "ebitda", "ticker": "CTOS", "period": "max", "api_key": "YOUR_API_KEY"}
data = requests.get(url, params=params).json()
const res = await fetch("https://data.businessquant.com/historic?slug=ebitda&ticker=CTOS&period=max&api_key=YOUR_API_KEY");
const data = await res.json();