Closing prices at the end of each trading day, from 12 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 | n/a | n/a | 8.9 | 9.5 | 9.2 | 11.0 | 15.3 | 18.3 | 20.9 | 20.9 |
| Growth | +6.7% | −2.7% | +19.6% | +39.4% | +19.5% | +14.0% | −0.3% | |||
| Net income | 9.6 | 11.3 | 25.0 | 16.2 | 15.7 | 15.4 | 31.2 | 11.2 | 43.9 | 59.5 |
| Growth | +16.8% | +122.0% | −35.2% | −2.9% | −2.3% | +102.9% | −64.0% | +290.9% | +35.6% | |
| EPS, diluted | 0.76 | 0.89 | 1.96 | 1.27 | 1.27 | 1.17 | 1.57 | 0.42 | 1.32 | 1.78 |
| FY2016 | FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Net margin | n/a | n/a | 281.9% | 171.2% | 170.9% | 139.6% | 203.2% | 61.2% | 209.9% | 285.4% |
| Free cash flow margin | n/a | n/a | 193.6% | 121.5% | 174.4% | −99.5% | 327.5% | 91.4% | 199.2% | 284.0% |
| FY2016 | FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Operating cash flow | 19.0 | 19.5 | 18.3 | 13.7 | 18.4 | −7.5 | 52.6 | 22.7 | 46.9 | 62.4 |
| Capital expenditure | −0.7 | −1.3 | −1.1 | −2.2 | −2.4 | −3.5 | −2.4 | −6.0 | −5.2 | −3.2 |
| Free cash flow | 18.3 | 18.3 | 17.2 | 11.5 | 16.1 | −11.0 | 50.2 | 16.8 | 41.7 | 59.2 |
| Growth | −0.3% | −6.0% | −33.0% | +39.6% | −168.2% | −66.6% | +148.6% | +42.1% | ||
| Dividends paid | −1.8 | 0.0 | −4.0 | 0.0 | 0.0 | −6.6 | −9.5 | −12.7 | −16.0 | −16.1 |
| FY2016 | FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Cash | 75.9 | 31.8 | 67.2 | 95.0 | 186.9 | 583.6 | 55.5 | 372.4 | 459.9 | 355.6 |
| Total debt | n/a | n/a | 15.0 | 15.0 | n/a | n/a | 43.1 | 72.7 | 73.7 | 89.1 |
| Net cash (debt) | n/a | n/a | 52.2 | 80.0 | n/a | n/a | 12.4 | 299.7 | 386.1 | 266.5 |
| Shareholders’ equity | 154.3 | 163.7 | 183.2 | 192.8 | 195.0 | 350.7 | 364.3 | 511.1 | 541.1 | 589.9 |
| Debt to equity | n/a | n/a | 0.08 | 0.08 | n/a | n/a | 0.12 | 0.14 | 0.14 | 0.15 |
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 | ||||||||||
| n/a | n/a | 8.9 | 9.5 | 9.2 | 11.0 | 15.3 | 18.3 | 20.9 | 20.9 | |
| Growth | +6.7% | −2.7% | +19.6% | +39.4% | +19.5% | +14.0% | −0.3% | |||
| 15.9 | 18.0 | 21.1 | 21.9 | 21.0 | 21.2 | 42.1 | 14.2 | 58.7 | 78.7 | |
| 6.3 | 8.7 | 5.4 | 5.6 | 5.3 | 5.8 | 11.0 | 3.0 | 14.8 | 19.1 | |
| 9.6 | 11.3 | 25.0 | 16.2 | 15.7 | 15.4 | 31.2 | 11.2 | 43.9 | 59.5 | |
| Growth | +16.8% | +122.0% | −35.2% | −2.9% | −2.3% | +102.9% | −64.0% | +290.9% | +35.6% | |
| Per share | ||||||||||
| 0.76 | 0.89 | 1.96 | 1.27 | 1.27 | 1.17 | 1.57 | 0.42 | 1.32 | 1.78 | |
| 0.76 | 0.89 | 1.96 | 1.27 | 1.27 | 1.17 | 1.57 | 0.42 | 1.32 | 1.78 | |
| Growth | +17.1% | +120.2% | −35.2% | +0.0% | −7.9% | +34.2% | −73.2% | +214.3% | +34.8% | |
| 12.7 | 12.7 | 12.7 | 12.7 | 12.4 | 13.1 | 19.8 | 26.6 | 33.3 | 33.4 | |
| 12.7 | 12.7 | 12.8 | 12.7 | 12.4 | 13.1 | 19.8 | 26.6 | 33.3 | 33.4 | |
| Growth | +0.4% | +0.3% | −0.2% | −2.7% | +6.0% | +51.3% | +33.9% | +25.3% | +0.4% | |
† The diluted share count jumps at 2022, 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.