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 | 521.1 | 591.3 | 95.1 | 112.0 | 71.5 | 879.5 | 1,086.7 | 1,317.7 | 1,452.3 | 1,488.5 |
| Growth | +13.5% | −83.9% | +17.8% | −36.2% | +1,130.1% | +23.6% | +21.3% | +10.2% | +2.5% | |
| Operating income | 66.7 | 78.6 | 94.7 | 104.7 | 70.1 | 148.1 | 194.3 | 251.4 | 274.8 | 270.3 |
| Net income | 33.3 | 41.6 | 53.8 | 60.2 | 38.2 | 87.4 | 120.9 | 152.7 | 164.4 | 168.4 |
| Growth | +24.8% | +29.3% | +12.0% | −36.6% | +128.7% | +38.4% | +26.2% | +7.7% | +2.5% | |
| EPS, diluted | 1.07 | 1.33 | 1.71 | 1.90 | 1.21 | 2.75 | 3.78 | 4.75 | 5.12 | 5.24 |
| FY2016 | FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Gross margin | 62.7% | 63.6% | 449.6% | 398.2% | 462.6% | 63.3% | 63.9% | 63.7% | 63.9% | 63.6% |
| Operating margin | 12.8% | 13.3% | 99.6% | 93.5% | 98.0% | 16.8% | 17.9% | 19.1% | 18.9% | 18.2% |
| Net margin | 6.4% | 7.0% | 56.6% | 53.8% | 53.5% | 9.9% | 11.1% | 11.6% | 11.3% | 11.3% |
| Free cash flow margin | 9.6% | 5.6% | 62.1% | 63.4% | 75.5% | −2.5% | 3.6% | 7.5% | 12.6% | 12.8% |
| FY2016 | FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Operating cash flow | 54.6 | 35.9 | 63.0 | 76.5 | 65.0 | 119.6 | 73.0 | 105.8 | 187.6 | 214.9 |
| Capital expenditure | −4.8 | −3.0 | −4.0 | −5.4 | −11.0 | −141.3 | −33.8 | −6.5 | −4.7 | −24.4 |
| Free cash flow | 49.8 | 32.9 | 59.1 | 71.0 | 54.0 | −21.7 | 39.3 | 99.3 | 182.9 | 190.5 |
| Growth | −34.0% | +79.8% | +20.2% | −24.0% | −140.2% | +152.9% | +84.2% | +4.1% | ||
| Buybacks | −0.1 | n/a | n/a | n/a | n/a | n/a | n/a | n/a | n/a | n/a |
| Dividends paid | −18.0 | −21.2 | −26.3 | −34.6 | −20.8 | −31.7 | −63.7 | −80.0 | −96.0 | −102.7 |
| FY2016 | FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Cash | 161.8 | 208.3 | 193.1 | 133.4 | 169.7 | 159,613.0 | 104.7 | n/a | n/a | n/a |
| Total debt | 74.6 | 60.6 | 46.1 | 23.1 | 24.7 | 148.8 | 180.0 | 157.5 | 157.3 | 176.0 |
| Net cash (debt) | 87.3 | 147.8 | 147.1 | 110.4 | 145.0 | 159,464.2 | −75.3 | n/a | n/a | n/a |
| Shareholders’ equity | 370.4 | 433.3 | 447.6 | 468.0 | 535.8 | 571.9 | 616.8 | 699.4 | 744.9 | 880.7 |
| Debt to equity | 0.20 | 0.14 | 0.10 | 0.05 | 0.05 | 0.26 | 0.29 | 0.23 | 0.21 | 0.20 |
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 | ||||||||||
| 521.1 | 591.3 | 95.1 | 112.0 | 71.5 | 879.5 | 1,086.7 | 1,317.7 | 1,452.3 | 1,488.5 | |
| Growth | +13.5% | −83.9% | +17.8% | −36.2% | +1,130.1% | +23.6% | +21.3% | +10.2% | +2.5% | |
| 194.6 | 215.0 | 248.0 | 267.6 | 208.3 | 322.6 | 392.2 | 478.6 | 525.0 | 541.3 | |
| 326.5 | 376.3 | 427.6 | 445.9 | 330.7 | 556.9 | 694.4 | 839.1 | 927.3 | 947.2 | |
| Growth | +15.3% | +13.6% | +4.3% | −25.8% | +68.4% | +24.7% | +20.8% | +10.5% | +2.1% | |
| 258.8 | 295.5 | 332.8 | 341.2 | 260.6 | 406.5 | 492.4 | 587.7 | 648.5 | 676.9 | |
| 66.7 | 78.6 | 94.7 | 104.7 | 70.1 | 148.1 | 194.3 | 251.4 | 274.8 | 270.3 | |
| Growth | +17.9% | +20.5% | +10.6% | −33.1% | +111.2% | +31.2% | +29.4% | +9.3% | −1.6% | |
| 67.1 | 78.1 | 95.9 | 105.1 | 69.3 | 151.0 | 194.2 | 249.6 | 268.4 | 271.3 | |
| 23.8 | 22.8 | 26.1 | 29.1 | 19.4 | 41.0 | 43.2 | 61.8 | 65.0 | 63.2 | |
| 33.3 | 41.6 | 53.8 | 60.2 | 38.2 | 87.4 | 120.9 | 152.7 | 164.4 | 168.4 | |
| Growth | +24.8% | +29.3% | +12.0% | −36.6% | +128.7% | +38.4% | +26.2% | +7.7% | +2.5% | |
| Per share | ||||||||||
| 1.07 | 1.33 | 1.72 | 1.92 | 1.21 | 2.76 | 3.80 | 4.77 | 5.13 | 5.25 | |
| 1.07 | 1.33 | 1.71 | 1.90 | 1.21 | 2.75 | 3.78 | 4.75 | 5.12 | 5.24 | |
| Growth | +24.3% | +28.6% | +11.1% | −36.3% | +127.3% | +37.5% | +25.7% | +7.8% | +2.3% | |
| 31.1 | 31.2 | 31,308 | 31.5 | 31.5 | 31.7 | 31.9 | 32.0 | 32.0 | 32.1 | |
| 31.2 | 31.3 | 31,522 | 31.7 | 31.7 | 31.8 | 32.0 | 32.1 | 32.1 | 32.1 | |
| Growth | +0.4% | +100,594.0% | −99.9% | −0.1% | +0.6% | +0.5% | +0.5% | −0.0% | +0.0% | |
† The diluted share count jumps at 2018 and 2019, 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.