X
38.01
-0.99%
Close of 9 Nov 2026, in USD
Search any instrument
Reference data, closing prices and charts across 45,000 companies, plus crypto, commodities and currencies.
At a glance
Figures in USD, from our data supplier.
Revenue
$476.2m
FY2016FY2025
Net income
$51.2m
FY2016FY2025
Free cash flow
$62.9m
FY2016FY2025
Shareholders' equity
$280.3m
FY2016FY2025
Income statement
Fiscal years
| FY2025 | FY2024 | FY2023 | FY2022 | FY2021 | FY2020 | FY2019 | FY2018 | FY2017 | FY2016 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Revenue | $476.2m | $420.4m | $396.3m | $324.0m | $259.3m | $158.9m | $129.9m | $109.9m | $67.3m | $51.8m |
| Gross profit | $201.0m | $177.4m | $162.4m | $127.5m | $92.7m | $54.0m | $43.5m | $33.4m | $16.7m | $14.0m |
| Research and development | — | $2.9m | $2.9m | $400,000 | $370,012 | $143,568 | $602,446 | $223,886 | — | $460,145 |
| Operating income | $62.7m | $59.1m | $67.0m | $53.9m | $40.1m | $23.4m | $17.1m | $11.8m | $2.2m | $3.3m |
| Net income | $51.2m | $45.5m | $52.8m | $41.4m | $31.6m | $18.3m | $14.0m | $8.7m | $1.0m | $2.2m |
| Diluted earnings per share | 1.85 | 1.64 | 1.91 | 1.50 | 1.14 | 0.66 | 0.51 | 0.32 | 0.04 | 0.08 |
Balance sheet
At each fiscal year end
| FY2025 | FY2024 | FY2023 | FY2022 | FY2021 | FY2020 | FY2019 | FY2018 | FY2017 | FY2016 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Total assets | $391.2m | $285.6m | $252.0m | $193.4m | $161.0m | $83.8m | $51.6m | $30.5m | $29.0m | $21.8m |
| Cash and short-term investments | $50.9m | $22.1m | $11.6m | $8.1m | $9.6m | $29.0m | $11.5m | $4.0m | $3.5m | $1.9m |
| Total liabilities | $106.0m | $60.2m | $72.1m | $68.6m | $76.6m | $30.5m | $16.7m | $9.9m | $15.2m | $11.5m |
| Debt | $59,000 | $292,000 | $19.4m | $26.1m | $25.5m | $6.1m | $800,000 | $1.8m | $4.1m | $4.9m |
| Shareholders' equity | $280.3m | $225.5m | $180.0m | $124.7m | $84.5m | $53.4m | $35.1m | $20.6m | $14.0m | $10.3m |
| Shares outstanding | 28m | 28m | 28m | 28m | 28m | 28m | 28m | 28m | 28m | 28m |
Cash flow
Fiscal years
| FY2025 | FY2024 | FY2023 | FY2022 | FY2021 | FY2020 | FY2019 | FY2018 | FY2017 | FY2016 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Cash from operations | $66.9m | $47.8m | $37.4m | $12.1m | $18.3m | $18.5m | $11.0m | $6.8m | $4.0m | $2.9m |
| Capital spending | −$4.0m | −$6.7m | −$7.6m | −$9.6m | −$7.7m | −$2.2m | −$2.2m | −$2.4m | −$2.2m | −$1.4m |
| Free cash flow | $62.9m | $41.1m | $29.7m | $2.5m | $10.6m | $16.3m | $8.7m | $4.4m | $1.7m | $1.6m |
Latest quarters
By quarter end
| Jun 2026 | Mar 2026 | Dec 2025 | Sept 2025 | Jun 2025 | Mar 2025 | Dec 2024 | Sept 2024 | |
|---|---|---|---|---|---|---|---|---|
| Revenue | $143.1m | $117.4m | $122.3m | $125.4m | $124.7m | $103.8m | $107.5m | $112.9m |
| Gross profit | $63.1m | $51.2m | $51.2m | $52.4m | $53.5m | $43.9m | $43.7m | $47.9m |
| Operating income | $22.8m | $13.0m | $15.5m | $16.8m | $19.3m | $11.2m | $12.3m | $18.5m |
| Net income | $18.0m | $10.3m | $13.4m | $12.9m | $16.3m | $8.6m | $8.9m | $14.9m |
| Diluted earnings per share | 0.65 | 0.37 | 0.48 | 0.47 | 0.59 | 0.31 | 0.32 | 0.54 |
| Cash from operations | $30.0m | $7.0m | $2.0m | $33.0m | $27.0m | $3.0m | $6.0m | $19.0m |
| Capital spending | −$65.0m | −$9.0m | −$1.0m | −$1.0m | −$1.0m | −$1.0m | −$1.0m | — |
| Free cash flow | −$35.0m | −$2.0m | $1.0m | $32.0m | $26.0m | $2.0m | $5.0m | — |
| Total assets | $472.6m | $394.4m | $391.2m | $387.7m | $318.1m | $294.8m | $285.6m | $273.0m |
| Cash and short-term investments | $40.7m | $45.1m | $50.9m | $64.5m | $49.6m | $23.5m | $22.1m | $21.0m |
| Debt | $50.2m | $5.7m | $6.2m | $6.7m | $5.6m | $5.3m | $5.0m | $5.1m |
| Shareholders' equity | $306.1m | $287.5m | $280.3m | $269.3m | $255.7m | $235.5m | $225.5m | $218.7m |
Financial ratios
Data as of 5 Nov 2026
| FY2025 | FY2024 | FY2023 | FY2022 | FY2021 | FY2020 | FY2019 | |
|---|---|---|---|---|---|---|---|
| Gross margin | 42.2% | 42.2% | 41.0% | 39.4% | 35.7% | 34.0% | — |
| Operating margin | 13.5% | 13.7% | 17.0% | 16.6% | 15.5% | 14.7% | — |
| Net margin | 10.8% | 10.8% | 13.3% | 12.8% | 12.2% | 11.5% | — |
| Return on equity | 18.3% | 20.2% | 29.3% | 33.2% | 37.4% | 34.2% | — |
| Return on assets | 13.1% | 15.9% | 20.9% | 21.4% | 19.6% | 21.8% | — |
| Free cash flow yield | 6.1% | 4.7% | 3.9% | 1.9% | 2.2% | 1.8% | — |
| Revenue growth | 13.3% | 6.1% | 22.3% | 25.0% | 63.1% | 22.3% | — |
| Earnings growth | 12.6% | -13.8% | 27.6% | 31.1% | 72.7% | 30.8% | — |
| Current ratio | 3.25x | 4.05x | 4.02x | 3.90x | 2.18x | 2.96x | — |
| Debt to equity | 0.02x | 0.02x | 0.13x | 0.24x | 0.34x | 0.15x | — |
| Equity ratio | 71.6% | 78.9% | 71.4% | 64.5% | 52.5% | 63.7% | — |
| Interest coverage | 772.82x | 58.01x | 53.91x | 38.25x | 132.54x | 93.67x | — |
| R&D as a share of sales | — | 0.7% | 0.7% | 0.1% | 0.1% | 0.1% | 0.5% |
| Buybacks as a share of market value | -0.1% | -0.1% | -0.1% | -0.0% | 0.0% | 0.0% | — |
Growth per year
Compound annual rate
| 3 years | 5 years | 10 years | |
|---|---|---|---|
| Revenue | 13.7% | 24.5% | 27.6% |
| Operating income | 5.2% | 21.8% | 37.4% |
| Net income | 7.4% | 22.9% | 41.8% |
Average margins
Over each period
| 1 year | 3 years | 5 years | 10 years | |
|---|---|---|---|---|
| Gross margin | 42.2% | 41.3% | 40.0% | 38.4% |
| Operating margin | 13.6% | 15.0% | 15.0% | 14.1% |
| Net margin | 10.8% | 11.8% | 11.8% | 11.0% |
Valuation history
At each fiscal year end
| FY2025 | FY2024 | FY2023 | FY2022 | FY2021 | FY2020 | FY2019 | FY2018 | FY2017 | FY2016 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Price to earnings | 27.0 | 24.3 | 17.2 | 24.5 | 36.5 | 47.6 | 17.7 | 11.8 | 22.6 | 10.7 |
| Price to sales | 2.9 | 2.6 | 2.3 | 3.1 | 4.4 | 5.5 | 1.9 | 0.9 | 0.3 | 0.5 |
Market value over time
30 Dec 2016 to 4 Nov 2026, in USD
$39.2m$1.16bn
Share price return
Finished calendar years
| 2025 | 2024 | 2023 | 2022 | 2021 | 2020 | 2019 | 2018 | 2017 | 2016 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Return | 22% | 22% | -5% | -9% | 21% | 267% | 180% | 263% | 10% | 37% |
Sources and methodology
- Data on this tab
- Our data supplier
- Chart on the Overview
- TradingView
Nothing here is investment advice. Prices can be delayed or wrong, so check with the exchange before relying on them. Data for this page. How we cover markets.