| GBP millions | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | Trend | YoY |
|---|---|---|---|---|---|---|---|---|
| Revenue | 82.4 | 115.1 | 134.0 | 124.2 | 125.3 | 124.7 | −0.5% | |
| Cost of revenue | 54.9 | 77.9 | 87.8 | 70.0 | 69.8 | 75.9 | +8.7% | |
| Gross profit | 27.5 | 37.2 | 46.2 | 54.2 | 55.5 | 48.8 | −12.0% | |
| Research & development | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | — | |
| Selling, general & administrative | 21.3 | 27.3 | 35.9 | 38.9 | 46.8 | 41.4 | −11.5% | |
| Selling & marketing | 21.1 | 27.1 | 35.6 | 38.5 | 37.8 | 0.0 | −100.0% | |
| Operating expenses | 21.3 | 27.3 | 35.9 | 46.2 | 46.8 | 41.4 | −11.5% | |
| Operating income | 5.7 | 9.9 | 10.3 | 8.0 | 8.6 | 7.4 | −14.7% | |
| Interest expense | 0.7 | 0.5 | 0.5 | 0.6 | 0.5 | 0.5 | −12.5% | |
| Interest income | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | — | |
| Other income / expense | (0.7) | (0.6) | (0.6) | (0.6) | (0.5) | (0.5) | +12.5% | |
| Pre-tax income | 5.0 | 9.3 | 9.7 | 7.4 | 8.1 | 6.9 | −14.9% | |
| Income tax | 0.9 | 2.0 | 2.1 | 1.6 | 1.7 | 1.5 | −12.4% | |
| Net income | 4.1 | 7.3 | 7.6 | 5.8 | 6.4 | 5.4 | −15.5% | |
| Discontinued operations | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | — | |
| Other net income adjustments | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | — | |
| EPS, basic (per share) | 0.02 | 0.04 | 0.05 | 0.03 | 0.04 | 0.03 | −9.9% | |
| EPS, diluted (per share) | 0.02 | 0.04 | 0.05 | 0.03 | 0.04 | 0.03 | −9.9% | |
| EBITDA | 9.7 | 14.7 | 16.9 | 15.4 | 17.1 | 15.5 | −9.7% | |
| Depreciation & amortization | 3.5 | 4.8 | 6.6 | 7.4 | 8.5 | 8.1 | −4.6% | |
| Weighted average shares (shares) | 167,450,893 | 167,450,893 | 167,450,893 | 167,412,949 | 166,216,248 | 156,079,283 | −6.1% | |
| Weighted average diluted shares (shares) | 167,450,893 | 167,804,498 | 167,636,517 | 167,858,853 | 166,658,223 | 156,138,886 | −6.3% | |
| Gross margin | 33.3% | 32.3% | 34.5% | 43.6% | 44.3% | 39.1% | −5.1 pts | |
| Operating margin | 6.9% | 8.6% | 7.7% | 6.4% | 6.9% | 5.9% | −1.0 pts | |
| Net margin | 5.0% | 6.4% | 5.7% | 4.7% | 5.1% | 4.3% | −0.8 pts |
Amounts are shown in the stated units; per-share amounts and shares are unscaled. Negative amounts are in brackets.