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 | 197.9 | 230.8 | 278.9 | 321.6 | 363.0 | 411.2 | 489.7 | 554.5 | 607.6 | 669.1 |
| Growth | +16.6% | +20.8% | +15.3% | +12.9% | +13.3% | +19.1% | +13.2% | +9.6% | +10.1% | |
| Operating income | 30.1 | 37.2 | 50.4 | 72.3 | 96.7 | 87.7 | 130.5 | 163.1 | 187.2 | 222.0 |
| Net income | 19.2 | 40.4 | 57.3 | 69.3 | 91.6 | 71.0 | 108.0 | 151.6 | 173.7 | 198.3 |
| Growth | +110.4% | +41.7% | +21.0% | +32.1% | −22.5% | +52.2% | +40.4% | +14.6% | +14.2% | |
| EPS, diluted | 0.50 | 1.01 | 1.37 | 1.68 | 2.25 | 1.77 | 2.74 | 4.03 | 4.65 | 5.44 |
| Growth | +102.0% | +35.6% | +22.6% | +33.9% | −21.3% | +54.8% | +47.1% | +15.4% | +17.0% |
| FY2016 | FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Gross margin | 78.2% | 77.7% | 76.3% | 78.4% | 78.2% | 78.2% | 79.0% | 80.6% | 81.7% | 82.8% |
| Operating margin | 15.2% | 16.1% | 18.1% | 22.5% | 26.6% | 21.3% | 26.7% | 29.4% | 30.8% | 33.2% |
| Net margin | 9.7% | 17.5% | 20.5% | 21.6% | 25.2% | 17.3% | 22.1% | 27.3% | 28.6% | 29.6% |
| Free cash flow margin | 23.3% | 30.3% | 36.8% | 41.4% | 41.3% | 42.9% | 37.5% | 42.5% | 38.1% | 45.5% |
| FY2016 | FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Operating cash flow | 69.3 | 107.6 | 125.5 | 160.6 | 180.1 | 200.6 | 198.9 | 244.6 | 244.1 | 309.4 |
| Capital expenditure | −23.2 | −37.8 | −22.8 | −27.6 | −30.0 | −24.4 | −15.4 | −8.8 | −12.3 | −5.0 |
| Free cash flow | 46.1 | 69.8 | 102.7 | 133.0 | 150.0 | 176.2 | 183.5 | 235.8 | 231.8 | 304.4 |
| Growth | +51.6% | +47.1% | +29.6% | +12.8% | +17.4% | +4.1% | +28.5% | −1.7% | +31.3% | |
| Buybacks | 0.0 | 0.0 | −85.0 | −86.4 | −126.7 | −130.0 | −317.3 | −170.8 | −139.9 | −183.4 |
| FY2016 | FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Cash | 86.7 | 86.6 | 41.0 | 87.6 | 74.1 | 137.3 | 173.7 | 203.7 | 232.2 | 250.3 |
| Shareholders’ equity | 258.4 | 343.5 | 358.0 | 386.8 | 404.5 | 436.7 | 289.1 | 368.2 | 477.1 | 561.2 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|
| Margins | ||||||||||
| 78.2% | 77.7% | 76.3% | 78.4% | 78.2% | 78.2% | 79.0% | 80.6% | 81.7% | 82.8% | |
| 15.2% | 16.1% | 18.1% | 22.5% | 26.6% | 21.3% | 26.7% | 29.4% | 30.8% | 33.2% | |
| 15.4% | 17.1% | 19.9% | 24.9% | 28.1% | 21.7% | 27.3% | 32.2% | 34.5% | 36.9% | |
| 9.7% | 17.5% | 20.5% | 21.6% | 25.2% | 17.3% | 22.1% | 27.3% | 28.6% | 29.6% | |
| 23.3% | 30.3% | 36.8% | 41.4% | 41.3% | 42.9% | 37.5% | 42.5% | 38.1% | 45.5% | |
| Spending | ||||||||||
| 18.5% | 18.5% | 19.1% | 21.2% | 20.0% | 19.8% | 20.7% | 19.9% | 18.4% | 17.5% | |
| 14.7% | 15.3% | 14.0% | 12.7% | 12.8% | 18.6% | 11.8% | 11.1% | 11.3% | 10.7% | |
| 11.7% | 16.4% | 8.2% | 8.6% | 8.3% | 5.9% | 3.1% | 1.6% | 2.0% | 0.7% | |
| 36.8% | −2.7% | −3.3% | 13.3% | 10.3% | 20.6% | 19.2% | 15.1% | 17.2% | 19.7% | |
| Returns | ||||||||||
| 7.4% | 11.8% | 16.0% | 17.9% | 22.6% | 16.2% | 37.4% | 41.2% | 36.4% | 35.3% | |
| 4.7% | 7.5% | 9.8% | 10.3% | 12.4% | 8.7% | 15.4% | 18.7% | 17.8% | 18.1% | |
| Balance and payout | ||||||||||
| 36.5% | 36.1% | 38.9% | 42.7% | 45.1% | 46.4% | 58.8% | 54.7% | 51.0% | 48.8% | |
| 0.0% | 0.0% | 82.8% | 65.0% | 84.5% | 73.8% | 172.9% | 72.4% | 60.4% | 60.3% | |