| GBP millions | FY2019 | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | Trend | YoY |
|---|---|---|---|---|---|---|---|---|
| Revenue | 32.3 | 32.5 | 35.2 | 8.0 | 8.7 | 9.6 | +10.3% | |
| Cost of revenue | 26.8 | 27.2 | 28.8 | 4.3 | 5.2 | 5.5 | +5.0% | |
| Gross profit | 5.5 | 5.4 | 6.4 | 3.7 | 3.5 | 4.2 | +17.9% | |
| Research & development | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | — | |
| Selling, general & administrative | 6.0 | 4.9 | 6.2 | 3.3 | 2.9 | 3.6 | +23.9% | |
| Selling & marketing | 0.0 | 0.0 | 0.0 | 0.0 | (0.5) | 0.0 | +100.0% | |
| Operating expenses | 5.4 | 4.1 | 6.2 | 3.3 | 2.9 | 3.6 | +21.9% | |
| Operating income | 0.1 | 1.3 | 0.2 | 0.4 | 0.6 | 0.6 | −1.3% | |
| Interest expense | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | +18.5% | |
| Interest income | 0.0 | 0.0 | 0.0 | 0.0 | 0.2 | 0.3 | +20.3% | |
| Other income / expense | (0.0) | (0.0) | (0.0) | 3.0 | 0.2 | 0.2 | +18.7% | |
| Pre-tax income | 0.1 | 1.2 | 0.2 | 3.5 | 0.8 | 0.8 | +3.5% | |
| Income tax | 0.2 | 0.2 | 0.1 | 0.2 | 0.3 | 0.0 | −84.6% | |
| Net income | (0.1) | 1.0 | 0.1 | 3.7 | 0.5 | 0.8 | +44.8% | |
| Discontinued operations | 0.0 | 0.0 | 0.7 | 0.5 | 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.01) | 0.07 | 0.00 | 0.25 | 0.04 | 0.06 | +45.2% | |
| EPS, diluted (per share) | (0.01) | 0.07 | 0.00 | 0.25 | 0.04 | 0.06 | +45.2% | |
| EBITDA | 0.9 | 2.0 | 0.9 | 4.0 | 1.3 | 1.4 | +11.7% | |
| Depreciation & amortization | 0.8 | 0.7 | 0.4 | 0.5 | 0.5 | 0.6 | +25.6% | |
| Weighted average shares (shares) | 14,902,000 | 14,902,000 | 14,902,000 | 14,902,000 | 13,766,000 | 13,739,000 | −0.2% | |
| Weighted average diluted shares (shares) | 14,902,000 | 14,902,000 | 14,902,000 | 14,902,000 | 13,766,000 | 13,754,000 | −0.1% | |
| Gross margin | 17.1% | 16.5% | 18.2% | 46.7% | 40.6% | 43.4% | +2.8 pts | |
| Operating margin | 0.4% | 3.8% | 0.7% | 5.3% | 6.9% | 6.2% | −0.7 pts | |
| Net margin | −0.4% | 3.0% | 0.2% | 46.1% | 6.2% | 8.2% | +1.9 pts |
Amounts are shown in the stated units; per-share amounts and shares are unscaled. Negative amounts are in brackets.