Closing prices at the end of each trading day, from 9 Dec 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 | 405.7 | 655.9 | 823.6 | 620.8 | 914.2 | 1,096.9 | 1,280.1 | 811.1 | 849.0 | 947.7 |
| Growth | +61.7% | +25.6% | −24.6% | +47.3% | +20.0% | +16.7% | −36.6% | +4.7% | +11.6% | |
| Operating income | 23.9 | 46.2 | 64.0 | 15.0 | 41.6 | 81.0 | 85.8 | −10.9 | −7.6 | −39.3 |
| Net income | 16.7 | 56.5 | 57.9 | 10.7 | 33.3 | 70.9 | 72.8 | −43.0 | −20.8 | −52.8 |
| Growth | +238.8% | +2.5% | −81.5% | +210.2% | +113.0% | +2.7% | −159.0% | |||
| EPS, diluted | 0.70 | 2.15 | 2.30 | 0.47 | 1.42 | 2.45 | 2.51 | −1.47 | −0.64 | −1.54 |
| FY2016 | FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Gross margin | 16.1% | 15.4% | 16.5% | 13.9% | 13.7% | 16.2% | 16.6% | 12.7% | 12.2% | 9.3% |
| Operating margin | 5.9% | 7.0% | 7.8% | 2.4% | 4.5% | 7.4% | 6.7% | −1.3% | −0.9% | −4.1% |
| Net margin | 4.1% | 8.6% | 7.0% | 1.7% | 3.6% | 6.5% | 5.7% | −5.3% | −2.5% | −5.6% |
| Free cash flow margin | 5.8% | 4.7% | 5.7% | 7.2% | 3.1% | −0.5% | 0.2% | 5.2% | 1.2% | −0.7% |
| FY2016 | FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Operating cash flow | 27.7 | 38.8 | 60.5 | 57.2 | 38.3 | 15.3 | 31.5 | 57.6 | 27.9 | 29.9 |
| Capital expenditure | −4.3 | −8.2 | −13.9 | −12.3 | −10.3 | −20.8 | −29.4 | −15.5 | −17.6 | −36.2 |
| Free cash flow | 23.5 | 30.6 | 46.6 | 44.8 | 28.0 | −5.6 | 2.0 | 42.1 | 10.2 | −6.3 |
| Growth | +30.3% | +52.3% | −3.8% | −37.6% | −119.9% | +1,985.9% | −75.7% | −161.3% | ||
| Buybacks | n/a | n/a | −90.0 | −1.6 | n/a | n/a | n/a | n/a | n/a | n/a |
| FY2016 | FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Cash | 52.6 | 69.3 | n/a | n/a | 252.9 | 75.5 | 86.5 | 80.0 | 108.7 | 98.3 |
| Total debt | 37.9 | 186.7 | 200.9 | 178.1 | 200.3 | 292.8 | 300.7 | 248.7 | 128.5 | 123.5 |
| Net cash (debt) | 14.7 | −117.4 | n/a | n/a | 52.6 | −217.3 | −214.2 | −168.7 | −19.9 | −25.2 |
| Shareholders’ equity | 141.7 | 216.8 | 198.3 | 221.4 | 411.7 | 500.7 | 587.5 | 564.7 | 698.3 | 663.9 |
| Debt to equity | 0.27 | 0.86 | 1.01 | 0.80 | 0.49 | 0.58 | 0.51 | 0.44 | 0.18 | 0.19 |
In millions of USD, except per-share figures and ratios. Fiscal years, as last filed with the SEC.
| Fiscal year | FY2016 30 Dec 2016 | FY2017† 29 Dec 2017 | FY2018 28 Dec 2018 | FY2019 27 Dec 2019 | FY2020 25 Dec 2020 | FY2021 31 Dec 2021 | FY2022 30 Dec 2022 | FY2023 29 Dec 2023 | FY2024 27 Dec 2024 | FY2025 26 Dec 2025 |
|---|---|---|---|---|---|---|---|---|---|---|
| Revenue and profit | ||||||||||
| 405.7 | 655.9 | 823.6 | 620.8 | 914.2 | 1,096.9 | 1,280.1 | 811.1 | 849.0 | 947.7 | |
| Growth | +61.7% | +25.6% | −24.6% | +47.3% | +20.0% | +16.7% | −36.6% | +4.7% | +11.6% | |
| 340.4 | 555.1 | 687.5 | 534.5 | 789.3 | 919.4 | 1,068.2 | 707.7 | 745.7 | 859.9 | |
| 65.4 | 100.8 | 136.1 | 86.4 | 124.9 | 177.5 | 211.9 | 103.4 | 103.3 | 87.8 | |
| Growth | +54.1% | +35.1% | −36.6% | +44.6% | +42.1% | +19.4% | −51.2% | −0.1% | −15.1% | |
| 6.4 | 7.9 | 9.4 | 11.1 | 13.4 | 15.7 | 19.6 | 20.2 | 23.0 | 23.1 | |
| 28.1 | 37.8 | 47.4 | 47.3 | 56.6 | 65.9 | 88.6 | 79.3 | 79.4 | 95.7 | |
| 23.9 | 46.2 | 64.0 | 15.0 | 41.6 | 81.0 | 85.8 | −10.9 | −7.6 | −39.3 | |
| Growth | +93.5% | +38.5% | −76.6% | +177.4% | +95.0% | +5.9% | −112.7% | |||
| 20.1 | 43.0 | 54.2 | 4.3 | 32.3 | 73.8 | 75.3 | −31.1 | −18.1 | −47.6 | |
| −0.6 | −13.9 | −3.7 | −6.5 | −1.0 | 2.9 | 2.5 | 11.9 | 2.8 | 5.2 | |
| 16.7 | 56.5 | 57.9 | 10.7 | 33.3 | 70.9 | 72.8 | −43.0 | −20.8 | −52.8 | |
| Growth | +238.8% | +2.5% | −81.5% | +210.2% | +113.0% | +2.7% | −159.0% | |||
| Per share | ||||||||||
| 0.92 | 2.25 | 2.34 | 0.48 | 1.44 | 2.51 | 2.54 | −1.47 | −0.64 | −1.54 | |
| 0.70 | 2.15 | 2.30 | 0.47 | 1.42 | 2.45 | 2.51 | −1.47 | −0.64 | −1.54 | |
| Growth | +207.1% | +7.0% | −79.6% | +202.1% | +72.5% | +2.4% | −158.6% | |||
| 1.5 | 25.1 | 24.7 | 22.4 | 23.2 | 28.3 | 28.7 | 29.2 | 32.8 | 34.2 | |
| 2.0 | 26.2 | 25.1 | 22.8 | 23.5 | 29.0 | 29.0 | 29.2 | 32.8 | 34.2 | |
| Growth | +1,232.3% | −4.2% | −9.4% | +3.0% | +23.5% | −0.1% | +0.8% | +12.2% | +4.5% | |
† 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.