Reported per-share earnings by fiscal year; the line turns dotted where reported figures end and the analyst consensus begins, with the shaded band marking the low–high range.
Reported revenue by fiscal year; the line turns dotted where reported figures end and the analyst consensus begins, with the shaded band marking the low–high range.
Periods without a consensus estimate or a reported figure show a dash.
| Period | EPS estimate | EPS actual | EPS surprise % | Revenue estimate | Revenue actual | Revenue surprise % |
|---|---|---|---|---|---|---|
| FY26 | — | — | — | — | $6.4M | — |
| FY25 | — | -$0.11 | — | — | $6.2M | — |
| FY24 | — | -$0.01 | — | — | $7.2M | — |
| FY23 | — | $0.2 | — | — | $10.7M | — |
| FY22 | — | $0.17 | — | — | $11.5M | — |
| FY21 | — | $0.16 | — | — | $8.5M | — |
| FY20 | — | -$0.39 | — | — | $5.6M | — |
| FY19 | — | -$0.18 | — | — | $5.4M | — |
| FY18 | — | $0.22 | — | — | $6M | — |
| FY17 | — | $0.11 | — | — | $5.2M | — |
Reported revenue per period; the line is the change from the same period a year earlier, on its own left axis.
| Period | FY17 | FY18 | FY19 | FY20 | FY21 | FY22 | FY23 | FY24 | FY25 | FY26 |
|---|---|---|---|---|---|---|---|---|---|---|
| Revenue | $5.2M | $6M | $5.4M | $5.6M | $8.5M | $11.5M | $10.7M | $7.2M | $6.2M | $6.4M |
| YoY change | — | +15.4% | -10.2% | +5.21% | +51.1% | +34.7% | -6.81% | -32.4% | -14.4% | +2.71% |
Revenue, gross profit, operating income, and net income per period.
Click a row to chart it; unreported figures show a dash.
| Period | FY17 | FY18 | FY19 | FY20 | FY21 | FY22 | FY23 | FY24 | FY25 | FY26 |
|---|---|---|---|---|---|---|---|---|---|---|
| Revenue | 5.2M | 6M | 5.4M | 5.6M | 8.5M | 11.5M | 10.7M | 7.2M | 6.2M | 6.4M |
| Cost of revenue | 2.2M | 2.2M | 2.9M | 3.4M | 4M | 6M | 5M | 4.2M | 3.6M | 4.5M |
| Gross profit | 3M | 3.7M | 2.5M | 2.3M | 4.5M | 5.5M | 5.7M | 3M | 2.6M | 1.8M |
| Gross margin | 58.4% | 62.6% | 46.7% | 39.9% | 53.1% | 47.6% | 53.2% | 41.4% | 41.7% | 29.1% |
| Research & development | — | — | — | — | — | — | — | — | — | — |
| Selling, general & administrative | 2.4M | 2.7M | 3.7M | 3.8M | 3.4M | 4.4M | 3.7M | 3.2M | 3M | 2.7M |
| Operating expenses | 2.4M | 2.7M | 3.7M | 3.8M | 3.4M | 4.4M | 3.7M | 3.2M | 3M | 2.7M |
| Operating income | 658.8K | 1.1M | -1.2M | -1.6M | 1.1M | 1M | 2M | -240.5K | -392.5K | -855.8K |
| Operating margin | 12.7% | 18% | -23.1% | -27.9% | 12.8% | 9.07% | 18.8% | -3.33% | -6.34% | -13.5% |
| Non-operating income, net | -43.4K | 45.3K | -3.4K | 7.2K | -17K | -21.5K | -48.3K | -160.8K | -49.9K | -31.4K |
| Pretax income | 723.2K | 1.3M | -1.1M | -1.4M | 1.2M | 1.1M | 2.1M | -246K | -272.7K | -808.9K |
| Income tax | 106K | 92K | -96.8K | 212.5K | 180.3K | 238.9K | 430.5K | 130.9K | 100.1K | 121K |
| Net income | 617.2K | 1.2M | -1M | -1.6M | 1M | 902.5K | 1.7M | -376.9K | -372.8K | -929.9K |
| Net margin | 11.9% | 20.2% | -19% | -29.1% | 12% | 7.87% | 15.6% | -5.22% | -6.03% | -14.6% |
| EBITDA | 813.8K | 1.1M | -1.1M | -1.4M | 1.5M | 1.4M | 2.5M | 106.3K | -60.7K | -697K |
| EPS | 0.11 | 0.22 | -0.18 | -0.39 | 0.16 | 0.17 | 0.2 | -0.01 | -0.11 | — |
| Diluted EPS | 0.11 | 0.22 | -0.18 | -0.39 | 0.16 | 0.17 | 0.2 | -0.01 | -0.11 | — |
What the company owns (left stack) against what it owes plus shareholders' equity (right stack). The two stacks should match — that's the balance.
Click a row to chart it; unreported figures show a dash.
| Period | FY17 | FY18 | FY19 | FY20 | FY21 | FY22 | FY23 | FY24 | FY25 | FY26 |
|---|---|---|---|---|---|---|---|---|---|---|
| Cash & short-term investments | 5.6M | 4.7M | 3.9M | 6.8M | 12.1M | 11.8M | 12.6M | 11M | 10.1M | 9M |
| Receivables | 664.3K | 2M | 1.8M | 542.9K | 1.9M | 1.7M | 793.2K | 1M | 717.7K | 901.3K |
| Inventory | 8.8K | 7.7K | — | — | — | — | — | — | — | — |
| Total current assets | 6.6M | 7.7M | 6.8M | 10.3M | 15M | 16.2M | 16M | 14.7M | 14.2M | 12.7M |
| Property, plant & equipment | 193.4K | 208.1K | 405.3K | 909.3K | 622.7K | 206.1K | 401.5K | 373.8K | 93.3K | 158.2K |
| Goodwill & intangibles | 0 | 59.5K | — | — | — | 276K | 108.8K | 14.9K | 0 | — |
| Total assets | 7.3M | 9.6M | 8.5M | 12.6M | 17M | 18M | 17.5M | 16.2M | 15.4M | 14.4M |
| Accounts payable | — | — | — | — | — | 108.7K | 233.5K | 210.3K | 154.3K | 147.9K |
| Short-term debt | — | — | — | 254.3K | 256.6K | 136.5K | 210.3K | 260.3K | 117.7K | 115K |
| Total current liabilities | 1M | 1.4M | 1.8M | 2.9M | 6.1M | 6M | 4.3M | 3.9M | 3.7M | 3.1M |
| Long-term debt | — | — | 0 | 361.6K | 105.9K | 6.1K | 203.2K | 73K | 14.5K | 73K |
| Total liabilities | 1M | 1.4M | 1.8M | 3.3M | 6.2M | 6M | 4.5M | 4M | 3.7M | 3.2M |
| Shareholders' equity | 6.3M | 8.2M | 6.7M | 9.3M | 10.8M | 12M | 13M | 12.2M | 11.8M | 11.3M |
| Total debt | — | — | 0 | 615.9K | 362.5K | 142.5K | 413.4K | 333.3K | 132.3K | 187.9K |
| Net debt | — | — | -3.9M | -6.2M | -11.7M | -11.6M | -12.2M | -10.7M | -10M | -8.8M |
Annual history by fiscal year; click a table row below to chart a different metric.
Current values are trailing twelve months where available, otherwise the latest fiscal year; unreported figures show a dash.
| Metric | FY17 | FY18 | FY19 | FY20 | FY21 | FY22 | FY23 | FY24 | FY25 | FY26 | Current |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Market cap | — | — | — | — | 54.8M | 14.3M | 8.4M | 8.6M | 7.1M | — | — |
| Enterprise value | — | — | — | — | 43.1M | 2.7M | -3.7M | -2.1M | -2.9M | — | — |
| Shares outstanding | 5.2M | 5.2M | 5.2M | 4.3M | 4.4M | 4.4M | 4.4M | 4.4M | 4.4M | — | — |
| Metric | FY17 | FY18 | FY19 | FY20 | FY21 | FY22 | FY23 | FY24 | FY25 | FY26 | Current |
|---|---|---|---|---|---|---|---|---|---|---|---|
| P/E | — | — | — | — | 53.6 | 15.8 | 5.04 | — | — | — | — |
| P/S | — | — | — | — | 6.43 | 1.24 | 0.79 | 1.19 | 1.14 | — | — |
| P/B | — | — | — | — | 5.07 | 1.19 | 0.65 | 0.71 | 0.6 | — | — |
| EV/EBITDA | — | — | — | — | 28.1 | 1.96 | -1.51 | -19.9 | 48.5 | — | — |
| EV/Sales | — | — | — | — | 5.06 | 0.23 | -0.35 | -0.29 | -0.48 | — | — |
| Earnings yield | — | — | — | — | 1.86% | 6.32% | 19.8% | — | — | — | — |
| FCF yield | — | — | — | — | 4.12% | 7.28% | 18.7% | -10% | -13.8% | — | — |
| Metric | FY17 | FY18 | FY19 | FY20 | FY21 | FY22 | FY23 | FY24 | FY25 | FY26 | Current |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Gross margin | 58.4% | 62.6% | 46.7% | 39.9% | 53.1% | 47.6% | 53.2% | 41.4% | 41.7% | 29.1% | 29.1% |
| Operating margin | 12.7% | 18% | -23.1% | -27.9% | 12.8% | 9.07% | 18.8% | -3.33% | -6.34% | -13.5% | -13.5% |
| Net margin | 11.9% | 20.2% | -19% | -29.1% | 12% | 7.87% | 15.6% | -5.22% | -6.03% | -14.6% | -14.6% |
| ROE | 9.87% | 14.7% | -15.2% | -17.6% | 9.44% | 7.51% | 12.8% | -3.1% | -3.17% | -8.24% | -8.24% |
| ROA | 8.47% | 12.5% | -12% | -13.1% | 6.01% | 5.01% | 9.54% | -2.33% | -2.41% | -6.44% | -6.44% |
| ROIC | 86.3% | 28.9% | -44.7% | -51% | -105% | 211.4% | 182.7% | -16.6% | -22.2% | -34.9% | -34.9% |
| Return on tangible assets | 8.47% | 12.6% | -12% | -13.1% | 6.01% | 5.09% | 9.6% | -2.33% | -2.41% | -6.44% | -6.44% |
| Metric | FY17 | FY18 | FY19 | FY20 | FY21 | FY22 | FY23 | FY24 | FY25 | FY26 | Current |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Current ratio | 6.37 | 5.38 | 3.83 | 3.53 | 2.48 | 2.71 | 3.72 | 3.74 | 3.88 | 4.12 | 4.12 |
| Quick ratio | 6.36 | 5.37 | 3.83 | 3.53 | 2.48 | 2.71 | 3.72 | 3.74 | 3.88 | 4.12 | 4.12 |
| Debt / equity | — | — | 0 | 0.07 | 0.03 | 0.01 | 0.03 | 0.03 | 0.01 | 0.02 | 0.02 |
| Debt / assets | — | — | 0 | 0.05 | 0.02 | 0.01 | 0.02 | 0.02 | 0.01 | 0.01 | 0.01 |
| Net debt / EBITDA | — | — | 3.55 | 4.42 | -7.63 | -8.58 | -4.93 | -100.8 | 164.9 | 12.7 | 12.7 |
| Effective tax rate | 14.7% | 7.1% | 0% | 0% | 15% | 20.9% | 20.5% | 0% | 0% | 0% | 0% |
| Metric | FY17 | FY18 | FY19 | FY20 | FY21 | FY22 | FY23 | FY24 | FY25 | FY26 | Current |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Revenue per share | 0.99 | 1.15 | 1.03 | 1.31 | 1.94 | 2.59 | 2.41 | 1.63 | 1.4 | — | — |
| EPS (basic) | 0.11 | 0.22 | -0.18 | -0.39 | 0.16 | 0.17 | 0.2 | -0.01 | -0.11 | — | — |
| EPS (diluted) | 0.11 | 0.22 | -0.18 | -0.39 | 0.16 | 0.17 | 0.2 | -0.01 | -0.11 | — | — |
| Book value per share | 1.2 | 1.57 | 1.29 | 2.17 | 2.47 | 2.71 | 2.93 | 2.75 | 2.67 | — | — |
| FCF per share | 0.23 | -0.19 | -0.17 | 0.2 | 0.51 | 0.23 | 0.35 | -0.19 | -0.22 | — | — |
| Cash per share | 1.08 | 0.91 | 0.76 | 1.59 | 2.75 | 2.65 | 2.83 | 2.49 | 2.3 | — | — |
| Capex per share | 0.01 | 0.11 | 0.07 | 0.02 | 0.02 | — | — | — | — | — | — |
| Metric | FY17 | FY18 | FY19 | FY20 | FY21 | FY22 | FY23 | FY24 | FY25 | FY26 | Current |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Capex / revenue | 1.46% | 9.32% | 6.54% | 1.33% | 0.87% | — | — | — | — | — | — |
| Capex / operating cash flow | 6.13% | -81% | -28.4% | 11.2% | 4.06% | — | — | — | — | — | — |
Cash from operations, what's left after capex, and what went back to shareholders. Bars below the line are cash going out.
Click a row to chart it; unreported figures show a dash.
| Period | FY17 | FY18 | FY19 | FY20 | FY21 | FY22 | FY23 | FY24 | FY25 | FY26 |
|---|---|---|---|---|---|---|---|---|---|---|
| Net income | 617.2K | 1.2M | -1M | -1.6M | 1M | 902.5K | 1.7M | -376.9K | -372.8K | -929.9K |
| Depreciation & amortization | 118.9K | 121.9K | 131K | 164.9K | 441.2K | 313.3K | 410.4K | 346.8K | 324.6K | 143.4K |
| Stock-based compensation | — | — | — | — | — | — | — | — | — | — |
| Change in working capital | 587.4K | -1.9M | -213.5K | 1.9M | 769.9K | -613.6K | -1.4M | -1.2M | -1M | -829.3K |
| Operating cash flow | 1.2M | -686.6K | -1.2M | 668.9K | 1.8M | 1.1M | 1.6M | -767.3K | -965.6K | -1.4M |
| Capital expenditure | -75.5K | -556.3K | -350.2K | -75K | -74.2K | — | — | — | — | — |
| Investing cash flow | -580.7K | -1.3M | 7.4K | -2.6M | 2.4M | -1.6M | 74.1K | -139.5K | 0 | 28.2K |
| Dividends paid | — | — | — | — | — | — | — | — | — | — |
| Share repurchases | — | — | — | — | — | — | — | — | — | — |
| Financing cash flow | 66.9K | 351.3K | 11.7K | 4.9M | 11.3K | -17.7K | 0 | 0 | 63K | -124.9K |
| Net change in cash | 717.6K | -1.6M | -1.2M | 2.9M | 4.2M | -585.6K | 1.7M | -906.8K | -902.6K | -1.5M |
| Free cash flow | 1.2M | -997.9K | -863.6K | 862.5K | 2.3M | 1M | 1.6M | -862.3K | -976.5K | -1.4M |