| Market Cap | $2.21B | |
| Enterprise Value | $3.84B | |
| Revenue | $1.98B | +7.9% |
| Gross Profit | $429.4M | +5.5% |
| EBITDA | $414.0M | +7.3% |
| Net Income | -$17.4M | — |
| Diluted EPS | -$0.14 | — |
| Free Cash Flow | — | — |
| Ratio | 2017 | 2018 | 2019 | 2020 | 2021 | 2022 | 2023 | 2024 | 2025 | Trend · 9y | vs own | vs sector |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ▾Margins | ||||||||||||
| Gross Margin | 28.34% | 33.14% | 32.78% | 25.25% | 17.99% | 24.39% | 24.36% | 21.65% | 21.19% | 17% | 31% | |
| Operating Margin | 11.53% | 17.53% | 13.64% | 5.70% | −3.60% | 6.57% | 9.17% | 7.01% | 6.43% | 28% | 50% | |
| EBITDA Margin | 12.93% | 18.76% | 42.72% | 33.74% | 14.32% | 20.77% | 20.91% | 20.10% | 20.00% | 39% | 79% | |
| NOPAT Margin | 9.11% | 13.84% | 10.78% | 4.50% | −2.84% | 5.47% | 8.00% | 5.54% | 5.08% | 28% | 50% | |
| Net Margin | −13.30% | −6.30% | −10.25% | −7.03% | −15.55% | 2.47% | 2.72% | −1.59% | −1.60% | 61% | 24% | |
| OCF Margin | 8.45% | 16.66% | 7.12% | 14.15% | 11.90% | 2.92% | −1.66% | 6.77% | 15.95% | 83% | 74% | |
| Gross Profitability | 14.32% | 11.80% | 10.62% | 9.95% | 7.83% | 13.06% | 13.49% | 11.14% | 11.97% | 61% | 21% | |
| ▸Returns on Capital · 5 ratios | ||||||||||||
| ▸DuPont factors (ROE drivers) · 4 ratios | ||||||||||||
| ▸Earnings quality · 5 ratios | ||||||||||||
| ▸Liquidity & coverage · 6 ratios | ||||||||||||
| ▸Leverage · 7 ratios | ||||||||||||
| ▸Working capital · 8 ratios | ||||||||||||
| ▸Capital allocation · 1 ratios | ||||||||||||
| ▸Per share · 5 ratios | ||||||||||||
| ▸Other · 1 ratios | ||||||||||||
The five drivers multiply to 5.9% vs reported ROE 5.6%. High ROE from margin and turnover is earned; from the equity multiplier it is borrowed.
| Line | 2017↗ | 2018↗ | 2019↗ | 2020↗ | 2021↗ | 2022↗ | 2023↗ | 2024↗ | 2025↗ |
|---|---|---|---|---|---|---|---|---|---|
| Revenue | $203.8M | $246.3M | $264.0M | $302.7M | $1.17B | $1.57B | $1.87B | $1.80B | $1.94B |
| YoY % | +20.9% | +7.2% | +14.7% | +285.5% | +34.8% | +18.6% | -3.4% | +7.9% | |
| Cost of Revenue | $146.0M | $164.7M | $177.5M | $226.3M | $957.1M | $1.19B | $1.41B | $1.41B | $1.53B |
| YoY % | +12.8% | +7.8% | +27.5% | +323.0% | +24.3% | +18.6% | +0.1% | +8.5% | |
| Gross Profit | $57.7M | $81.6M | $86.5M | $76.4M | $210.0M | $383.7M | $454.3M | $390.3M | $411.9M |
| YoY % | +41.3% | +6.0% | -11.7% | +174.7% | +82.7% | +18.4% | -14.1% | +5.5% | |
| SG&A Expense | $27.6M | $32.7M | $37.3M | $46.4M | $155.8M | $210.9M | $231.4M | $229.5M | $230.1M |
| YoY % | +18.7% | +14.0% | +24.5% | +235.7% | +35.4% | +9.7% | -0.8% | +0.2% | |
| Total Operating Expenses | $34.3M | $38.5M | $50.5M | $59.2M | $252.0M | $280.4M | $283.3M | $263.9M | $286.9M |
| YoY % | +12.3% | +31.4% | +17.1% | +325.7% | +11.3% | +1.0% | -6.8% | +8.7% | |
| Operating Income | $23.5M | $43.2M | $36.0M | $17.2M | -$42.0M | $103.3M | $170.9M | $126.4M | $124.9M |
| YoY % | +83.8% | -16.6% | -52.1% | +65.5% | -26.1% | -1.1% | |||
| Interest Expense | — | — | — | — | $5.2M | $12.6M | $36.6M | — | — |
| YoY % | +142.3% | +190.5% | |||||||
| Interest & Investment Income | — | $6.7M | — | — | — | — | — | — | — |
| Other Non-Operating Income | -$366,000 | -$287,000 | -$1.7M | -$5.4M | -$571,000 | $32.3M | $18.4M | $11.6M | $4.5M |
| YoY % | -43.0% | -37.3% | -60.7% | ||||||
| Impairment of Real Estate | — | — | — | $0 | — | — | — | — | — |
| Pretax Income | -$30.6M | -$13.8M | -$33.0M | -$51.4M | -$177.1M | $46.7M | $58.1M | -$29.2M | -$28.1M |
| YoY % | +24.3% | ||||||||
| Income Tax | -$3.5M | $1.7M | -$6.0M | -$30.1M | $4.4M | $7.8M | $7.4M | -$532,000 | $2.9M |
| YoY % | +76.9% | -5.9% | |||||||
| Net Income | -$27.1M | -$15.5M | -$27.1M | -$21.3M | -$181.5M | $38.9M | $50.7M | -$28.7M | -$31.1M |
| YoY % | +30.3% | ||||||||
| Net Income to Common | — | $186,297 | -$27.1M | -$21.3M | -$181.5M | $38.9M | $50.7M | -$28.7M | -$31.1M |
| YoY % | +30.3% | ||||||||
| EPS (Basic) | — | — | -$0.82 | -$0.43 | -$0.75 | $0.16 | $0.21 | -$0.12 | -$0.14 |
| YoY % | +31.3% | ||||||||
| EPS (Diluted) | — | — | -$0.82 | -$0.43 | -$0.75 | $0.16 | $0.21 | -$0.12 | -$0.14 |
| YoY % | +31.3% | ||||||||
| Weighted Avg Shares (Basic) | — | — | 33.1M | 49.1M | 241.4M | 247.2M | 245.1M | 237.0M | 227.0M |
| YoY % | +48.4% | +391.9% | +2.4% | -0.8% | -3.3% | -4.2% | |||
| Weighted Avg Shares (Diluted) | — | — | 33.1M | 49.1M | 241.4M | 247.7M | 245.7M | 237.0M | 227.0M |
| YoY % | +48.4% | +391.9% | +2.6% | -0.8% | -3.6% | -4.2% |
The sector classification is SIC-derived, not official GICS. Statement lines are XBRL facts as filed with the company's home regulator (SEC EDGAR for US filers; ESEF/EDINET and other national regulators for foreign filers); ratios and other derived figures are computed from them. A blank cell means the tag was absent — never imputed.