| Market Cap | $100.3M | |
| Enterprise Value | — | |
| Revenue | $124.1M | +8.7% |
| Gross Profit | — | — |
| EBITDA | $26.0M | +13.1% |
| Net Income | $9.8M | +37.5% |
| Diluted EPS | $0.10 | — |
| Free Cash Flow | $22.5M | +25.5% |
| Ratio | 2020 | 2021 | 2022 | 2023 | 2024 | 2025 | Trend · 6y | vs own | vs sector |
|---|---|---|---|---|---|---|---|---|---|
| ▾Margins | |||||||||
| Operating Margin | −7.87% | 2.53% | 4.76% | −40.25% | 8.23% | 9.41% | 92% | 72% | |
| EBITDA Margin | 1.55% | 11.26% | 13.21% | −27.95% | 20.99% | 21.83% | 92% | 81% | |
| NOPAT Margin | −6.22% | 2.40% | 4.61% | −31.80% | 8.06% | 9.24% | 92% | 72% | |
| Net Margin | −8.38% | 2.03% | 3.91% | −41.58% | 7.08% | 8.96% | 92% | 72% | |
| FCF Margin | −3.31% | 7.45% | 13.37% | 10.59% | 17.09% | 19.74% | 92% | 75% | |
| OCF Margin | −0.85% | 9.55% | 15.24% | 13.21% | 18.62% | 23.70% | 92% | 77% | |
| Capex Intensity | 2.46% | 2.10% | 1.86% | 2.62% | 1.53% | 3.97% | 92% | 70% | |
| ▸Returns on Capital · 6 ratios | |||||||||
| ▸DuPont factors (ROE drivers) · 4 ratios | |||||||||
| ▸Earnings quality · 7 ratios | |||||||||
| ▸Liquidity & coverage · 6 ratios | |||||||||
| ▸Leverage · 9 ratios | |||||||||
| ▸Working capital · 3 ratios | |||||||||
| ▸Capital allocation · 1 ratios | |||||||||
| ▸Per share · 6 ratios | |||||||||
| ▸Other · 1 ratios | |||||||||
The five drivers multiply to 20.0% vs reported ROE 19.8%. High ROE from margin and turnover is earned; from the equity multiplier it is borrowed.
| Line | 2020↗ | 2021↗ | 2022↗ | 2023↗ | 2024↗ | 2025↗ |
|---|---|---|---|---|---|---|
| Revenue | $105.1M | $139.6M | $138.8M | $117.1M | $110.8M | $120.5M |
| YoY % | +32.8% | -0.6% | -15.7% | -5.3% | +8.7% | |
| R&D Expense | $9.3M | $4.4M | $4.4M | $4.7M | $3.8M | $6.4M |
| YoY % | -52.7% | -0.2% | +7.6% | -20.2% | +68.8% | |
| Selling & Marketing Expense | $6.6M | $8.8M | $9.8M | $9.7M | $6.2M | $4.8M |
| YoY % | +33.5% | +11.4% | -1.4% | -35.4% | -22.7% | |
| SG&A Expense | $22.8M | $24.3M | $23.8M | $21.5M | $16.1M | $18.4M |
| YoY % | +6.4% | -1.9% | -9.9% | -24.9% | +14.0% | |
| Total Operating Expenses | $113.4M | $136.1M | $132.2M | $164.2M | $101.7M | $109.2M |
| YoY % | +20.0% | -2.8% | +24.2% | -38.0% | +7.3% | |
| Operating Income | -$8.3M | $3.5M | $6.6M | -$47.1M | $9.1M | $11.3M |
| YoY % | +87.3% | +24.4% | ||||
| Other Non-Operating Income | $7,000 | -$96,000 | -$637,000 | -$883,000 | -$298,000 | -$265,000 |
| Impairment of Real Estate | — | $774,000 | $0 | $0 | $0 | $0 |
| YoY % | -100.0% | |||||
| Pretax Income | -$8.7M | $3.0M | $5.6M | -$49.0M | $8.0M | $11.0M |
| YoY % | +87.4% | +37.3% | ||||
| Income Tax | $103,000 | $157,000 | $177,000 | -$364,000 | $160,000 | $199,000 |
| YoY % | +52.4% | +12.7% | +24.4% | |||
| Net Income | -$8.8M | $2.8M | $5.4M | -$48.7M | $7.9M | $10.8M |
| YoY % | +91.5% | +37.5% | ||||
| Net Income to Common | -$22.7M | -$11.2M | -$10.1M | -$64.3M | -$4.5M | $3.9M |
| Preferred Dividends | — | — | — | $15.7M | $12.3M | $6.9M |
| YoY % | -21.5% | -43.9% | ||||
| EPS (Basic) | — | -$0.77 | -$0.67 | -$4.11 | -$0.28 | $0.10 |
| EPS (Diluted) | — | — | -$0.67 | -$4.11 | -$0.28 | $0.10 |
| Weighted Avg Shares (Basic) | — | 14.5M | 15.1M | 15.7M | 16.1M | 37.8M |
| YoY % | +3.9% | +3.7% | +3.0% | +134.1% | ||
| Weighted Avg Shares (Diluted) | — | — | 15.1M | 15.7M | 16.1M | 38.0M |
| YoY % | +3.7% | +3.0% | +135.1% |
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.