| Market Cap | — | |
| Enterprise Value | — | |
| Revenue | $456.0M | +44.7% |
| Gross Profit | — | — |
| EBITDA | $72.8M | +33.1% |
| Net Income | $22.7M | +6.2% |
| Diluted EPS | — | — |
| Free Cash Flow | -$5.9M | −127.0% |
| Ratio | 2023 | 2024 | 2025 | Trend · 3y | vs own | vs sector |
|---|---|---|---|---|---|---|
| ▾Margins | ||||||
| Operating Margin | 11.91% | 11.40% | 8.86% | 17% | 62% | |
| EBITDA Margin | 17.23% | 17.35% | 15.96% | 17% | 67% | |
| NOPAT Margin | 11.91% | 10.88% | 8.33% | 17% | 67% | |
| Net Margin | 8.30% | 6.78% | 4.97% | 17% | 57% | |
| FCF Margin | 7.51% | 6.94% | −1.30% | 17% | 23% | |
| FCFF Margin | 9.12% | 8.40% | 0.11% | 17% | 10% | |
| OCF Margin | 12.46% | 13.53% | 8.31% | 17% | 43% | |
| Capex Intensity | 4.95% | 6.58% | 9.61% | 83% | 85% | |
| ▸Returns on Capital · 2 ratios | ||||||
| ▸DuPont factors (ROE drivers) · 3 ratios | ||||||
| ▸Earnings quality · 6 ratios | ||||||
| ▸Liquidity & coverage · 5 ratios | ||||||
| ▸Leverage · 2 ratios | ||||||
| ▸Working capital · 3 ratios | ||||||
| ▸Capital allocation · 1 ratios | ||||||
| ▸Other · 1 ratios | ||||||
| Line | 2023↗ | 2024↗ | 2025↗ |
|---|---|---|---|
| Revenue | $247.9M | $315.2M | $456.0M |
| YoY % | +27.1% | +44.7% | |
| SG&A Expense | $6.5M | $10.7M | $23.5M |
| YoY % | +64.5% | +120.1% | |
| Operating Income | $29.5M | $35.9M | $40.4M |
| YoY % | +21.7% | +12.4% | |
| Interest Expense | $4.0M | $4.8M | $6.8M |
| YoY % | +21.0% | +41.4% | |
| Other Non-Operating Income | -$1.2M | -$1.5M | -$518,704 |
| Pretax Income | $24.3M | $29.6M | $33.1M |
| YoY % | +22.0% | +11.5% | |
| Income Tax | $0 | $1.4M | $2.0M |
| YoY % | +45.4% | ||
| Net Income (incl. NCI) | $24.3M | $28.3M | $31.1M |
| YoY % | +16.5% | +9.9% | |
| Minority Interest (P&L) | $3.7M | $6.9M | $8.4M |
| YoY % | +86.3% | +21.1% | |
| Net Income | $20.6M | $21.4M | $22.7M |
| YoY % | +3.8% | +6.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.