Revenue
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
| 2025 | 2024 | 2023 | 2022 | 2021 | 2020 | 2019 | 2018 | 2017 | 2016 | 2015 | 2014 | 2013 | 2012 | 2011 | 2010 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Revenue | $23.0M | $24.5M | $30.3M | $28.4M | $25.0M | $22.4M | $22.9M | $19.7M | $20.7M | $21.6M | $26.3M | $36.2M | $34.2M | $36.5M | $27.6M | $29.0M |
| Gross profit | $6.3M | $7.3M | $8.6M | $6.9M | $6.6M | $2.4M | $3.9M | $3.5M | $4.1M | $5.3M | $6.9M | $8.7M | $8.4M | $10.0M | $7.0M | $6.8M |
| Gross margin | 27.28% | 29.84% | 28.35% | 24.43% | 26.42% | 10.71% | 17.16% | 17.80% | 19.71% | 24.68% | 26.25% | 24.12% | 24.44% | 27.52% | 25.37% | 23.52% |
| Research & development | $228,000 | $216,000 | $204,000 | $193,000 | $152,000 | $199,000 | $149,000 | $178,000 | $183,000 | $140,000 | $162,000 | $191,000 | $174,000 | $125,000 | $125,000 | $417,521 |
| Operating expenses | $6.0M | $6.8M | $7.1M | $6.3M | $6.1M | $6.3M | $5.4M | $6.6M | $5.8M | $5.8M | $7.0M | $7.1M | $6.5M | $5.7M | $5.1M | $4.9M |
| Operating income | $289,455 | $460,697 | $1.5M | $604,718 | $523,408 | −$3.9M | −$1.5M | −$3.1M | −$1.7M | −$431,447 | −$76,812 | $1.7M | $1.8M | $4.3M | $1.9M | $1.9M |
| Operating margin | 1.26% | 1.88% | 5.06% | 2.13% | 2.10% | −17.45% | −6.54% | −15.69% | −8.31% | −2.00% | −0.29% | 4.60% | 5.31% | 11.87% | 6.99% | 6.55% |
| EBITDA | $1.1M | $1.3M | $2.3M | $1.3M | $1.1M | −$3.1M | −$493,340 | −$2.1M | −$1.0M | $240,520 | $745,178 | $2.6M | $2.5M | $5.2M | $2.7M | $2.6M |
| EBITDA margin | 4.71% | 5.42% | 7.61% | 4.46% | 4.55% | −13.80% | −2.16% | −10.82% | −4.92% | 1.12% | 2.83% | 7.11% | 7.37% | 14.21% | 9.81% | 9.02% |
| Net income | $1.0M | $307,375 | $266,969 | $97,797 | $212,631 | −$2.1M | −$1.4M | −$3.4M | −$1.6M | −$821,334 | −$557,842 | $935,247 | $1.6M | $2.7M | $1.2M | $1.1M |
| Net profit margin | 4.50% | 1.25% | 0.88% | 0.34% | 0.85% | −9.39% | −6.20% | −17.17% | −7.90% | −3.81% | −2.12% | 2.59% | 4.53% | 7.31% | 4.52% | 3.64% |
| Basic EPSper basic share | $0.20 | $0.06 | $0.05 | $0.02 | $0.05 | -$0.48 | -$0.33 | -$0.81 | -$0.39 | -$0.20 | -$0.14 | $0.23 | $0.38 | $0.66 | $0.31 | $0.26 |
| Diluted EPSper diluted share | $0.20 | $0.06 | $0.05 | $0.02 | $0.05 | -$0.48 | -$0.33 | -$0.81 | -$0.39 | -$0.20 | -$0.14 | $0.23 | $0.38 | $0.66 | $0.31 | $0.26 |
Reported shareholders
Reported holdings Number of shares
| Holder | Shares held |
|---|---|
MCCONNELL MARC H | 2.42M |
Ramsey Randall C. | 78.71K |
Buffamante Thomas E | 64K |
White David Allan | 51K |
Woods Michael William | 42K |
Westendorf Matthew | 32K |
Bars compare reported share counts. A matching total for this share class and reporting period is unavailable, so percentages are not shown.
| Transaction | Insider | Type | Shares | Price | Value | Owned after |
|---|---|---|---|---|---|---|
| Aug 7, 2025Form 4 | Woods Michael WilliamChief Financial Officer | SellCommon Stock | 5.5K | $4.05 | $22.4K | 27.0K |
| Aug 6, 2025Form 4 | Woods Michael WilliamChief Financial Officer | SellCommon Stock | 4.1K | $3.77 | $15.4K | 32.5K |
| Jul 29, 2025Form 4 | Woods Michael WilliamChief Financial Officer | SellCommon Stock | 7.6K | $3.31 | $25.1K | 36.6K |
| Apr 10, 2025Form 4 | Ramsey Randall C.Director | BuyCommon Stock | 6.8K | $1.50 | $10.2K | 67.7K |