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.
| FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | FY2026 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Revenue | 453.8 | 452.2 | 485.9 | 417.7 | 372.7 | 774.8 | 855.0 | 833.4 | 642.5 | 650.5 |
| Growth | −0.4% | +7.5% | −14.0% | −10.8% | +107.9% | +10.4% | −2.5% | −22.9% | +1.2% | |
| Net income | 32.3 | 39.7 | 31.6 | 7.4 | 3.0 | 52.4 | 27.7 | 60.9 | n/a | n/a |
| Growth | +22.8% | −20.3% | −76.5% | −59.6% | +1,644.9% | −47.1% | +120.0% | |||
| EPS, diluted | 4.91 | 6.02 | n/a | n/a | n/a | 2.92 | 1.57 | 1.73 | 1.65 | 2.50 |
| FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | FY2026 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Gross margin | 15.7% | 9.8% | 6.2% | 4.9% | 5.2% | 11.7% | 5.7% | 11.8% | 14.2% | 14.4% |
| Net margin | 7.1% | 8.8% | 6.5% | 1.8% | 0.8% | 6.8% | 3.2% | 7.3% | n/a | n/a |
| Free cash flow margin | 12.1% | 3.7% | 7.6% | 1.6% | −0.5% | 11.2% | 4.6% | 10.8% | −1.1% | 7.6% |
| FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | FY2026 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Operating cash flow | 69.1 | 41.0 | 47.9 | 10.3 | 8.6 | 91.7 | 54.8 | 128.0 | 64.2 | 117.8 |
| Capital expenditure | −14.2 | −24.0 | −10.8 | −3.8 | −10.4 | −5.1 | −15.6 | −37.7 | −71.3 | −68.4 |
| Free cash flow | 54.9 | 17.0 | 37.2 | 6.6 | −1.8 | 86.6 | 39.2 | 90.3 | −7.1 | 49.4 |
| Growth | −69.1% | +119.2% | −82.3% | −127.2% | −54.7% | +130.3% | −107.9% | |||
| Buybacks | −4.7 | n/a | −21.9 | n/a | −19.6 | −6.6 | −13.0 | 0.0 | −14.7 | −33.4 |
| FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | FY2026 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Cash | 188.6 | 191.0 | 188.5 | 179.7 | 144.5 | 229.8 | 69.6 | 223.4 | 196.3 | 188.7 |
| Shareholders’ equity | 340.4 | 381.5 | 392.9 | 401.0 | 384.8 | 430.8 | 448.0 | 513.9 | 560.3 | 610.7 |
In millions of USD, except per-share figures and ratios. Fiscal years, as last filed with the SEC.
| Fiscal year | FY2017 31 Jan 2017 | FY2018 31 Jan 2018 | FY2019 31 Jan 2019 | FY2020 31 Jan 2020 | FY2021 31 Jan 2021 | FY2022† 31 Jan 2022 | FY2023 31 Jan 2023 | FY2024† 31 Jan 2024 | FY2025 31 Jan 2025 | FY2026 31 Jan 2026 |
|---|---|---|---|---|---|---|---|---|---|---|
| Revenue and profit | ||||||||||
| 453.8 | 452.2 | 485.9 | 417.7 | 372.7 | 774.8 | 855.0 | 833.4 | 642.5 | 650.5 | |
| Growth | −0.4% | +7.5% | −14.0% | −10.8% | +107.9% | +10.4% | −2.5% | −22.9% | +1.2% | |
| 382.8 | 408.4 | 456.5 | 397.3 | 353.1 | 684.2 | 806.4 | 735.2 | 551.0 | 556.8 | |
| 71.0 | 44.2 | 30.2 | 20.4 | 19.5 | 90.6 | 48.6 | 98.2 | 91.5 | 93.7 | |
| Growth | −37.8% | −31.6% | −32.5% | −4.3% | +364.0% | −46.4% | +102.1% | −6.9% | +2.4% | |
| 21.4 | 24.1 | 20.6 | 19.5 | 17.6 | 21.5 | 22.8 | 29.4 | 27.1 | 32.6 | |
| 56.9 | 25.4 | 14.6 | 6.5 | 4.2 | 75.8 | 47.5 | 98.5 | 92.9 | n/a | |
| 17.4 | −19.5 | −22.9 | −2.0 | −0.5 | 19.0 | 9.5 | 22.6 | 21.4 | −6.5 | |
| 32.3 | 39.7 | 31.6 | 7.4 | 3.0 | 52.4 | 27.7 | 60.9 | n/a | n/a | |
| Growth | +22.8% | −20.3% | −76.5% | −59.6% | +1,644.9% | −47.1% | +120.0% | |||
| Per share | ||||||||||
| 4.91 | 6.02 | n/a | 1.18 | 0.49 | 2.92 | 1.57 | 1.74 | 1.65 | 2.50 | |
| 4.91 | 6.02 | n/a | n/a | n/a | 2.92 | 1.57 | 1.73 | 1.65 | 2.50 | |
| Growth | +22.6% | −46.2% | +10.2% | −4.6% | +51.5% | |||||
| 6.6 | 6.6 | n/a | n/a | n/a | 17.9 | 17.6 | 35.0 | 35.3 | 33.2 | |
| 6.6 | 6.6 | n/a | 6.3 | 6.2 | 17.9 | 17.6 | 35.2 | 35.3 | 33.2 | |
| Growth | +0.1% | −2.4% | +191.0% | −1.7% | +99.3% | +0.3% | −5.9% | |||
† The diluted share count jumps at 2022 and 2024, 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.