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 | 32.5 | 23.1 | 30.4 | 38.5 | 31.7 | 41.8 | 53.3 | 65.6 | 73.2 | 83.8 |
| Growth | −29.0% | +31.9% | +26.5% | −17.7% | +31.8% | +27.5% | +23.0% | +11.7% | +14.4% | |
| Operating income | 10.9 | 1.3 | 6.0 | 8.6 | −0.8 | 9.8 | 15.6 | 20.0 | 22.0 | 26.1 |
| Net income | 7.2 | 0.5 | 6.3 | 9.6 | 1.4 | 9.3 | 12.8 | 17.2 | 19.2 | 22.5 |
| Growth | −93.1% | +1,161.3% | +52.8% | −85.8% | +581.2% | +37.6% | +34.0% | +11.9% | +16.9% | |
| EPS, diluted | 0.60 | 0.04 | 0.52 | 0.78 | 0.11 | 0.74 | 1.02 | 1.35 | 1.50 | 1.75 |
| Growth | −93.3% | +1,200.0% | +50.0% | −85.9% | +572.7% | +37.8% | +32.4% | +11.1% | +16.7% |
| FY2016 | FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Gross margin | 81.1% | 75.9% | 76.3% | 77.1% | 74.3% | 76.6% | 77.4% | 76.5% | 76.9% | 76.7% |
| Operating margin | 33.6% | 5.6% | 19.7% | 22.5% | −2.4% | 23.5% | 29.3% | 30.6% | 30.0% | 31.2% |
| Net margin | 22.2% | 2.2% | 20.7% | 25.0% | 4.3% | 22.3% | 24.1% | 26.2% | 26.3% | 26.8% |
| Free cash flow margin | 26.5% | 11.4% | 23.5% | 25.6% | 16.9% | 25.8% | 17.3% | 9.2% | 24.1% | 20.5% |
| FY2016 | FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Operating cash flow | 9.4 | 3.4 | 7.4 | 10.2 | 5.8 | 11.3 | 10.0 | 13.5 | 25.6 | 24.9 |
| Capital expenditure | −0.8 | −0.8 | −0.2 | −0.4 | −0.4 | −0.5 | −0.8 | −7.4 | −8.0 | −7.8 |
| Free cash flow | 8.6 | 2.6 | 7.1 | 9.9 | 5.4 | 10.8 | 9.2 | 6.0 | 17.6 | 17.2 |
| Growth | −69.4% | +170.7% | +38.0% | −45.5% | +100.5% | −14.4% | −34.7% | +192.5% | −2.5% | |
| Buybacks | −10.0 | −1.8 | n/a | n/a | n/a | n/a | n/a | n/a | n/a | n/a |
| Dividends paid | n/a | n/a | n/a | n/a | n/a | n/a | −12.6 | −13.2 | −13.7 | −15.0 |
| FY2016 | FY2017 | FY2018 | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | |
|---|---|---|---|---|---|---|---|---|---|---|
| Cash | 17.7 | 18.2 | 28.0 | 43.5 | 50.1 | 62.0 | 58.0 | 49.8 | 52.2 | 51.2 |
| Shareholders’ equity | 31.9 | 32.9 | 41.9 | 55.5 | 61.4 | 72.2 | 73.7 | 71.4 | 86.8 | 94.6 |
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 |
|---|---|---|---|---|---|---|---|---|---|---|
| Operations | ||||||||||
| 9.4 | 3.4 | 7.4 | 10.2 | 5.8 | 11.3 | 10.0 | 13.5 | 25.6 | 24.9 | |
| Growth | −63.7% | +115.9% | +38.7% | −43.1% | +93.5% | −10.8% | +34.1% | +90.3% | −2.6% | |
| 1.0 | 1.3 | 1.1 | 1.2 | 1.3 | 1.4 | 0.7 | 0.8 | 0.8 | 1.2 | |
| Investment | ||||||||||
| −0.8 | −0.8 | −0.2 | −0.4 | −0.4 | −0.5 | −0.8 | −7.4 | −8.0 | −7.8 | |
| calc | 8.6 | 2.6 | 7.1 | 9.9 | 5.4 | 10.8 | 9.2 | 6.0 | 17.6 | 17.2 |
| Growth | −69.4% | +170.7% | +38.0% | −45.5% | +100.5% | −14.4% | −34.7% | +192.5% | −2.5% | |
| calc | 0.72 | 0.23 | 0.59 | 0.80 | 0.43 | 0.86 | 0.73 | 0.47 | 1.38 | 1.34 |
| −1.9 | −1.0 | 1.5 | 3.2 | 0.2 | 0.6 | −1.4 | −8.0 | −8.8 | −8.4 | |
| Financing | ||||||||||
| −9.1 | −1.9 | 0.9 | 2.0 | 0.5 | 0.0 | −12.7 | −13.7 | −14.3 | −17.6 | |
| n/a | n/a | n/a | n/a | n/a | n/a | −12.6 | −13.2 | −13.7 | −15.0 | |
| −10.0 | −1.8 | n/a | n/a | n/a | n/a | n/a | n/a | n/a | n/a | |
Lines marked calc are worked out here from filed figures; point at one for how. Capital expenditure, dividends and buybacks are shown as money out, so negative.