| GBP millions | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2026 | Trend | YoY |
|---|---|---|---|---|---|---|---|---|
| Revenue | 11.6 | 18.8 | 22.7 | 28.9 | 35.9 | 40.0 | +11.3% | |
| Cost of revenue | 6.6 | 10.9 | 13.6 | 17.5 | 21.9 | 24.2 | +10.4% | |
| Gross profit | 5.0 | 7.9 | 9.1 | 11.3 | 14.0 | 15.8 | +12.7% | |
| Research & development | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | — | — | |
| Selling, general & administrative | 5.8 | 7.6 | 9.4 | 9.8 | 11.9 | — | — | |
| Selling & marketing | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | — | — | |
| Operating expenses | 5.5 | 7.6 | 9.4 | 9.8 | 11.7 | 12.3 | +5.2% | |
| Operating income | (0.5) | 0.4 | (0.3) | 1.6 | 2.3 | 3.4 | +51.1% | |
| Interest expense | 0.2 | 0.2 | 0.3 | 0.2 | 0.4 | 0.7 | +71.5% | |
| Interest income | 0.0 | 0.0 | 0.1 | 0.1 | 0.4 | 0.7 | +82.6% | |
| Other income / expense | 1.7 | (0.3) | (0.3) | (0.1) | 0.5 | — | — | |
| Pre-tax income | 1.3 | 0.1 | (0.7) | 1.5 | 2.8 | 3.9 | +41.2% | |
| Income tax | (0.3) | (0.8) | (0.6) | (0.7) | (0.2) | 0.6 | +452.5% | |
| Net income | 1.6 | 0.8 | (0.1) | 2.2 | 3.0 | 3.3 | +11.7% | |
| Discontinued operations | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | — | — | |
| Other net income adjustments | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | — | — | |
| EPS, basic (per share) | 0.03 | 0.01 | (0.00) | 0.03 | 0.04 | 0.05 | +10.2% | |
| EPS, diluted (per share) | 0.03 | 0.01 | (0.00) | 0.03 | 0.04 | 0.05 | +9.5% | |
| EBITDA | 4.5 | 5.1 | 5.9 | 8.7 | 11.5 | 13.5 | +17.6% | |
| Depreciation & amortization | 3.1 | 4.7 | 6.3 | 7.0 | 8.3 | 10.0 | +21.0% | |
| Weighted average shares (shares) | 52,276,498 | 57,885,241 | 65,446,754 | 65,905,797 | 66,952,413 | 67,861,975 | +1.4% | |
| Weighted average diluted shares (shares) | 52,291,848 | 57,981,696 | 65,446,754 | 70,540,354 | 72,022,472 | 73,480,430 | +2.0% | |
| Gross margin | 43.3% | 42.2% | 40.1% | 39.3% | 39.0% | 39.5% | +0.5 pts | |
| Operating margin | −3.9% | 2.0% | −1.5% | 5.5% | 6.4% | 8.6% | +2.3 pts | |
| Net margin | 13.8% | 4.4% | −0.4% | 7.6% | 8.3% | 8.3% | +0.0 pts |
Amounts are shown in the stated units; per-share amounts and shares are unscaled. Negative amounts are in brackets.