| SAR millions | FY2020 | FY2021 | FY2022 | FY2023 | FY2024 | FY2025 | Trend | YoY |
|---|---|---|---|---|---|---|---|---|
| Revenue | 31.6 | 29.8 | 31.5 | 33.8 | 37.7 | 37.8 | +0.1% | |
| Cost of revenue | 23.0 | 21.0 | 23.1 | 24.0 | 26.1 | 26.8 | +2.8% | |
| Gross profit | 8.6 | 8.8 | 8.1 | 10.0 | 11.6 | 10.9 | −5.9% | |
| Research & development | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | — | |
| Selling, general & administrative | 4.7 | 3.2 | 6.6 | 6.8 | 14.6 | 2.3 | −84.1% | |
| Selling & marketing | 2.3 | 3.0 | 2.8 | 3.5 | 3.4 | 1.1 | −66.7% | |
| Operating expenses | (4.7) | 7.2 | 6.4 | 7.2 | 7.3 | 6.9 | −6.3% | |
| Operating income | 4.0 | 1.6 | 1.8 | 2.8 | 4.3 | 4.1 | −5.3% | |
| Interest expense | 0.0 | 0.1 | 0.0 | 0.1 | 0.1 | 0.1 | +74.1% | |
| Interest income | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.1 | — | |
| Other income / expense | 0.1 | 0.0 | 0.0 | (0.0) | (0.0) | (0.0) | +50.3% | |
| Pre-tax income | 4.1 | 1.6 | 1.8 | 2.8 | 4.3 | 4.1 | −5.0% | |
| Income tax | 0.2 | 0.2 | 0.2 | 0.2 | 0.2 | 0.4 | +50.9% | |
| Net income | 3.9 | 1.4 | 1.5 | 2.5 | 4.0 | 3.7 | −8.4% | |
| 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.20 | 0.07 | 0.08 | 0.13 | 0.21 | 0.19 | −7.6% | |
| EPS, diluted (per share) | 0.20 | 0.07 | 0.08 | 0.13 | 0.21 | 0.19 | −7.6% | |
| EBITDA | 5.6 | 3.6 | 3.6 | 4.5 | 4.5 | 6.6 | +46.3% | |
| Depreciation & amortization | 1.5 | 1.9 | 1.8 | 1.6 | 0.2 | 2.4 | +1336.9% | |
| Weighted average shares (shares) | 19,775,000 | 19,775,000 | 19,775,000 | 19,775,067 | 19,642,929 | 19,631,500 | −0.1% | |
| Weighted average diluted shares (shares) | 19,775,000 | 19,775,000 | 19,775,000 | 19,775,000 | 19,642,929 | 19,631,500 | −0.1% | |
| Gross margin | 27.3% | 29.4% | 25.8% | 29.7% | 30.8% | 29.0% | −1.9 pts | |
| Operating margin | 12.6% | 5.3% | 5.6% | 8.4% | 11.4% | 10.8% | −0.6 pts | |
| Net margin | 12.4% | 4.7% | 4.9% | 7.5% | 10.7% | 9.8% | −0.9 pts |
Amounts are shown in the stated units; per-share amounts and shares are unscaled. Negative amounts are in brackets.