Closing prices at the end of each trading day, from 13 Oct 2016. Not a live quote. Adjusted for share splits, so the line has no step at a split; dividends are not added back. P/E and P/FCF are the market value over the last full fiscal year's net income or free cash flow, as public on each day, so they step once a year when the annual report comes out. A hatched band marks a stretch with none: a year of net loss, or of cash burnt.
| FY2016 | FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Revenue | 377.3 | 380.8 | 374.4 | 395.7 | 137.0 | 254.9 | 300.8 | 374.8 | 352.2 | 410.2 |
| Growth | +0.9% | −1.7% | +5.7% | −65.4% | +86.0% | +18.0% | +24.6% | −6.0% | +16.5% | |
| Operating income | 58.6 | 31.4 | 45.2 | 77.3 | −121.8 | 11.0 | −4.8 | 50.4 | 43.9 | 84.2 |
| Net income | 28.8 | 2.3 | 22.8 | 46.9 | −143.8 | −22.3 | −22.8 | 25.3 | 26.1 | 34.9 |
| Growth | −91.9% | +874.6% | +105.2% | −406.8% | +2.9% | +33.8% | ||||
| EPS, diluted | 0.42 | 0.04 | 0.36 | n/a | −2.43 | −0.38 | −0.40 | 0.46 | 0.48 | 0.63 |
| FY2016 | FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Gross margin | 53.7% | 48.7% | 55.5% | 54.1% | 15.7% | 52.7% | 52.0% | 57.2% | 54.0% | 60.0% |
| Operating margin | 15.5% | 8.3% | 12.1% | 19.5% | −88.9% | 4.3% | −1.6% | 13.4% | 12.5% | 20.5% |
| Net margin | 7.6% | 0.6% | 6.1% | 11.8% | −104.9% | −8.8% | −7.6% | 6.8% | 7.4% | 8.5% |
| Free cash flow margin | 16.6% | 16.1% | 25.8% | 21.0% | −17.3% | 1.0% | 3.0% | 13.9% | 17.7% | 29.0% |
| FY2016 | FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Operating cash flow | 77.9 | 85.4 | 110.0 | 90.4 | −23.0 | 6.1 | 17.3 | 58.6 | 70.8 | 127.1 |
| Capital expenditure | −15.3 | −24.1 | −13.4 | −7.4 | −0.7 | −3.6 | −8.4 | −6.5 | −8.4 | −8.2 |
| Free cash flow | 62.6 | 61.2 | 96.6 | 83.0 | −23.7 | 2.5 | 8.9 | 52.1 | 62.4 | 118.9 |
| Growth | −2.2% | +57.8% | −14.1% | −128.6% | +259.5% | +485.9% | +19.7% | +90.5% | ||
| Buybacks | 0.0 | −46.1 | −71.5 | −2.7 | −36.6 | −13.9 | n/a | n/a | n/a | n/a |
| FY2016 | FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Cash | 204.8 | 158.7 | 141.6 | 109.5 | 317.4 | 189.7 | 97.4 | 76.2 | 100.6 | 151.2 |
| Total debt | 27.3 | 25.4 | 37.8 | 18.2 | 305.7 | 2.5 | n/a | n/a | n/a | n/a |
| Net cash (debt) | 177.4 | 133.4 | 103.8 | 91.3 | 11.7 | 187.2 | n/a | n/a | n/a | n/a |
| Shareholders’ equity | 562.0 | 527.7 | 512.2 | 547.7 | 394.0 | 356.1 | 263.4 | 273.1 | 299.5 | 337.9 |
| Debt to equity | 0.05 | 0.05 | 0.07 | 0.03 | 0.78 | 0.01 | n/a | n/a | n/a | n/a |
In millions of USD, except per-share figures and ratios. Fiscal years, as last filed with the SEC.
| Fiscal year | FY2016 31 Dec 2016 | FY2017† 31 Dec 2017 | FY2018 31 Dec 2018 | FY2019 31 Dec 2019 | FY2020 31 Dec 2020 | FY2021 31 Dec 2021 | FY2022 31 Dec 2022 | FY2023 31 Dec 2023 | FY2024 31 Dec 2024 | FY2025 31 Dec 2025 |
|---|---|---|---|---|---|---|---|---|---|---|
| Revenue and profit | ||||||||||
| 377.3 | 380.8 | 374.4 | 395.7 | 137.0 | 254.9 | 300.8 | 374.8 | 352.2 | 410.2 | |
| Growth | +0.9% | −1.7% | +5.7% | −65.4% | +86.0% | +18.0% | +24.6% | −6.0% | +16.5% | |
| 174.7 | 195.5 | 166.5 | 181.5 | 115.5 | 120.5 | 144.5 | 160.5 | 162.0 | 164.0 | |
| 202.7 | 185.2 | 207.9 | 214.2 | 21.5 | 134.4 | 156.4 | 214.3 | 190.2 | 246.2 | |
| Growth | −8.6% | +12.2% | +3.0% | −89.9% | +524.0% | +16.3% | +37.1% | −11.3% | +29.4% | |
| 16.3 | 20.9 | 13.7 | 5.2 | 5.6 | 6.9 | 5.3 | 10.1 | 5.1 | 5.8 | |
| n/a | n/a | n/a | n/a | 108.5 | 117.3 | 138.0 | 144.4 | 132.7 | 138.5 | |
| 58.6 | 31.4 | 45.2 | 77.3 | −121.8 | 11.0 | −4.8 | 50.4 | 43.9 | 84.2 | |
| Growth | −46.3% | +43.7% | +71.1% | −257.6% | −144.0% | −13.0% | +92.0% | |||
| 57.9 | 30.0 | 43.6 | 75.3 | −129.1 | 11.0 | −9.8 | 46.1 | 37.7 | 63.3 | |
| 16.2 | 16.8 | 9.5 | 16.8 | 26.5 | 20.6 | 10.1 | 13.1 | 5.0 | 17.8 | |
| 28.8 | 2.3 | 22.8 | 46.9 | −143.8 | −22.3 | −22.8 | 25.3 | 26.1 | 34.9 | |
| Growth | −91.9% | +874.6% | +105.2% | −406.8% | +2.9% | +33.8% | ||||
| Per share | ||||||||||
| 0.43 | 0.04 | 0.36 | n/a | −2.43 | −0.38 | −0.40 | 0.47 | 0.49 | 0.65 | |
| 0.42 | 0.04 | 0.36 | n/a | −2.43 | −0.38 | −0.40 | 0.46 | 0.48 | 0.63 | |
| Growth | −90.5% | +800.0% | +4.3% | +31.3% | ||||||
| 0.1 | 65.4 | 63.1 | 61.3 | 59.2 | 59.1 | 56.7 | 54.3 | 52.7 | 53.6 | |
| 0.1 | 65.5 | 63.2 | 61.5 | 59.2 | 59.1 | 56.7 | 55.1 | 53.9 | 55.5 | |
| Growth | +95,911.0% | −3.6% | −2.7% | −3.7% | −0.2% | −4.1% | −2.7% | −2.3% | +3.1% | |
† The diluted share count jumps at 2017, so per-share figures either side of that column are not comparable. Usually a split, but the break lands on the restatement boundary rather than on the split date, because every column is that period’s latest filing.