M
279.26
+6.22%
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
$3.66bn
FY2016FY2025
Net income
$118.4m
FY2016FY2025
Free cash flow
$232.2m
FY2016FY2025
Shareholders' equity
$660.4m
FY2016FY2025
Income statement
Fiscal years
| FY2025 | FY2024 | FY2023 | FY2022 | FY2021 | FY2020 | FY2019 | FY2018 | FY2017 | FY2016 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Revenue | $3.66bn | $3.36bn | $3.64bn | $3.01bn | $2.50bn | $2.25bn | $2.07bn | $1.53bn | $1.40bn | $1.14bn |
| Gross profit | $419.0m | $290.3m | $364.4m | $344.0m | $325.0m | $275.9m | $214.2m | $167.1m | $125.0m | $134.7m |
| Operating income | $162.6m | $54.1m | $129.1m | $114.9m | $118.6m | $86.5m | $57.2m | $50.3m | $29.6m | $38.8m |
| Net income | $118.4m | $30.3m | $91.0m | $83.4m | $85.0m | $58.8m | $37.7m | $31.1m | $21.2m | $21.4m |
| Diluted earnings per share | 7.56 | 1.87 | 5.40 | 4.97 | 4.95 | 3.45 | 2.25 | 1.87 | 1.28 | 1.31 |
Balance sheet
At each fiscal year end
| FY2025 | FY2024 | FY2023 | FY2022 | FY2021 | FY2020 | FY2019 | FY2018 | FY2017 | FY2016 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Total assets | $1.64bn | $1.57bn | $1.58bn | $1.40bn | $1.12bn | $995.9m | $1.01bn | $748.8m | $603.8m | $573.5m |
| Cash and short-term investments | $150.2m | $3.5m | $24.9m | $51.0m | $82.1m | $22.7m | $12.4m | $7.5m | $5.3m | $23.8m |
| Total liabilities | $983.7m | $973.7m | $927.5m | $838.7m | $602.0m | $566.6m | $643.4m | $424.3m | $316.7m | $310.3m |
| Debt | $72.9m | $77.4m | $38.6m | $44.0m | $4.5m | $29.7m | $167.3m | $92.4m | $82.7m | $64.0m |
| Shareholders' equity | $660.4m | $600.4m | $651.2m | $560.2m | $519.1m | $429.3m | $364.5m | $323.0m | $287.0m | $263.2m |
| Shares outstanding | 16m | 16m | 17m | 17m | 17m | 17m | 17m | 17m | 17m | 16m |
Cash flow
Fiscal years
| FY2025 | FY2024 | FY2023 | FY2022 | FY2021 | FY2020 | FY2019 | FY2018 | FY2017 | FY2016 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Cash from operations | $326.6m | $87.1m | $71.0m | $167.5m | $137.2m | $175.2m | $64.9m | $84.8m | −$9.2m | $54.5m |
| Capital spending | −$94.4m | −$75.9m | −$84.7m | −$77.1m | −$52.4m | −$44.4m | −$57.8m | −$50.7m | −$30.8m | −$25.4m |
| Free cash flow | $232.2m | $11.2m | −$13.7m | $90.4m | $84.9m | $130.8m | $7.1m | $34.1m | −$40.0m | $29.1m |
| Dividends paid | — | — | −$10.1m | — | −$2.9m | −$749,000 | −$341,000 | — | — | — |
Latest quarters
By quarter end
| Jun 2026 | Mar 2026 | Dec 2025 | Sept 2025 | Jun 2025 | Mar 2025 | Dec 2024 | Sept 2024 | |
|---|---|---|---|---|---|---|---|---|
| Revenue | $1.08bn | $1.00bn | $973.5m | $950.4m | $900.3m | $833.6m | $829.8m | $888.0m |
| Gross profit | $142.7m | $133.2m | $110.1m | $110.7m | $102.5m | $95.7m | $85.9m | $77.3m |
| Operating income | $67.9m | $63.8m | $46.1m | $44.8m | $39.2m | $33.2m | $30.2m | $20.4m |
| Net income | $49.9m | $46.8m | $36.5m | $32.1m | $26.5m | $23.3m | $16.0m | $10.6m |
| Diluted earnings per share | 3.17 | 2.98 | 2.33 | 2.05 | 1.69 | 1.49 | 0.99 | 0.66 |
| Cash from operations | $3.0m | $84.0m | $114.0m | $95.0m | $32.0m | $83.0m | $21.0m | $35.0m |
| Capital spending | −$28.0m | −$16.0m | −$29.0m | −$30.0m | −$21.0m | −$13.0m | −$12.0m | −$17.0m |
| Free cash flow | −$25.0m | $68.0m | $85.0m | $65.0m | $11.0m | $70.0m | $9.0m | $18.0m |
| Total assets | $1.67bn | $1.67bn | $1.64bn | $1.65bn | $1.59bn | $1.52bn | $1.57bn | $1.59bn |
| Cash and short-term investments | $137.9m | $163.2m | $150.2m | $76.2m | $23.0m | $10.9m | $3.5m | $7.6m |
| Debt | $23.3m | $22.9m | $72.9m | $85.9m | $99.8m | $100.3m | $87.6m | $105.5m |
| Shareholders' equity | $754.4m | $702.8m | $660.4m | $617.6m | $583.2m | $548.7m | $600.4m | $588.5m |
Financial ratios
Data as of 19 Oct 2026
| FY2025 | FY2024 | FY2023 | FY2022 | FY2021 | FY2020 | |
|---|---|---|---|---|---|---|
| Gross margin | 11.5% | 8.6% | 10.0% | 11.4% | 13.0% | 12.3% |
| Operating margin | 4.6% | 1.6% | 3.6% | 3.9% | 4.7% | 3.8% |
| Net margin | 3.2% | 0.9% | 2.5% | 2.8% | 3.4% | 2.6% |
| Return on equity | 17.9% | 5.0% | 14.0% | 14.9% | 16.4% | 13.7% |
| Return on assets | 7.2% | 1.9% | 5.8% | 6.0% | 7.6% | 5.9% |
| Free cash flow yield | 9.6% | 3.6% | 3.3% | 5.2% | 3.9% | 4.6% |
| Revenue growth | 8.8% | -7.7% | 21.1% | 20.4% | 11.2% | 8.5% |
| Earnings growth | 291.3% | -66.7% | 9.1% | -1.9% | 44.7% | 55.9% |
| Current ratio | 1.33x | 1.35x | 1.37x | 1.33x | 1.50x | 1.44x |
| Debt to equity | 0.11x | 0.15x | 0.07x | 0.09x | 0.02x | 0.08x |
| Equity ratio | 40.2% | 38.1% | 41.2% | 40.0% | 46.3% | 43.1% |
| Interest coverage | 29.56x | 8.13x | 26.31x | 33.05x | 65.65x | 18.84x |
| Buybacks as a share of market value | 3.3% | 3.9% | -0.3% | 2.2% | -0.8% | -1.6% |
Growth per year
Compound annual rate
| 3 years | 5 years | 10 years | |
|---|---|---|---|
| Revenue | 6.7% | 10.2% | 13.2% |
| Operating income | 12.3% | 13.4% | 13.7% |
| Net income | 12.4% | 15.0% | 15.8% |
Average margins
Over each period
| 1 year | 3 years | 5 years | 10 years | |
|---|---|---|---|---|
| Gross margin | 10.1% | 10.4% | 11.0% | 10.9% |
| Operating margin | 3.1% | 3.4% | 3.6% | 3.5% |
| Net margin | 2.1% | 2.4% | 2.5% | 2.4% |
Valuation history
At each fiscal year end
| FY2025 | FY2024 | FY2023 | FY2022 | FY2021 | FY2020 | FY2019 | FY2018 | FY2017 | FY2016 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Price to earnings | 28.9 | 79.6 | 26.8 | 18.5 | 22.3 | 17.4 | 14.5 | 15.1 | 27.9 | 28.7 |
| Price to sales | 0.9 | 0.7 | 0.7 | 0.5 | 0.8 | 0.5 | 0.3 | 0.3 | 0.4 | 0.5 |
Market value over time
30 Nov 2016 to 16 Oct 2026, in USD
$599.4m$4.40bn
Share price return
Finished calendar years
| 2025 | 2024 | 2023 | 2022 | 2021 | 2020 | 2019 | 2018 | 2017 | 2016 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Return | 41% | 2% | 75% | -15% | 75% | 72% | 26% | -25% | -9% | 92% |
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.