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 | $29.4M | $28.8M | $21.5M | $19.1M | $24.3M | $34.7M | $32.2M | $28.4M | $23.5M | $20.1M | $19.4M | $16.4M | $15.4M | $13.3M | $13.3M | $13.8M |
| Gross profit | $5.6M | $7.5M | $3.3M | $741,025 | $4.9M | $10.3M | $8.4M | $12.0M | $8.7M | $7.0M | $6.5M | $6.1M | $5.5M | $4.3M | $4.5M | $5.1M |
| Gross margin | 18.87% | 25.97% | 15.18% | 3.87% | 20.35% | 29.61% | 26.06% | 42.35% | 37.23% | 34.93% | 33.71% | 37.15% | 35.93% | 31.99% | 33.93% | 37.11% |
| Operating expenses | $31.0M | $28.2M | $25.3M | $24.9M | $25.2M | $32.1M | $30.7M | $20.7M | $19.1M | $17.3M | $16.2M | $13.3M | $12.9M | $11.5M | $11.1M | $10.9M |
| Operating income | −$1.6M | $574,862 | −$3.8M | −$5.8M | −$938,933 | $2.6M | $1.4M | $7.7M | $4.4M | $2.8M | $3.1M | $3.1M | $2.5M | $1.8M | $2.2M | $2.9M |
| Operating margin | −5.55% | 2.00% | −17.47% | −30.37% | −3.87% | 7.45% | 4.41% | 27.02% | 18.54% | 13.81% | 16.13% | 19.04% | 16.50% | 13.36% | 16.31% | 21.28% |
| EBITDA | −$859,615 | $1.3M | −$2.9M | −$4.8M | −$101,732 | $3.4M | $2.4M | $8.0M | $4.7M | $3.2M | $3.5M | $3.5M | $2.8M | $2.0M | $2.4M | $3.1M |
| EBITDA margin | −2.92% | 4.58% | −13.42% | −24.97% | −0.42% | 9.72% | 7.38% | 28.24% | 19.95% | 16.01% | 17.84% | 21.07% | 18.28% | 15.12% | 17.70% | 22.44% |
| Net income | −$1.3M | $999,038 | −$2.9M | −$6.5M | $1.4M | $2.0M | $1.3M | $5.2M | $2.6M | $1.5M | $1.7M | $1.8M | $1.5M | $929,930 | $1.1M | $1.7M |
| Net profit margin | −4.41% | 3.47% | −13.55% | −33.98% | 5.93% | 5.84% | 4.11% | 18.17% | 10.93% | 7.32% | 8.73% | 11.04% | 9.42% | 6.98% | 8.29% | 12.08% |
| Basic EPSper basic share | -$0.53 | $0.42 | -$1.23 | -$2.74 | $0.61 | $0.86 | $0.56 | $2.23 | $1.11 | $0.64 | $0.73 | $0.79 | $0.63 | $0.40 | $0.48 | $0.73 |
| Diluted EPSper diluted share | -$0.53 | $0.41 | -$1.23 | -$2.74 | $0.59 | $0.82 | $0.54 | $2.15 | $1.10 | $0.64 | $0.73 | $0.79 | $0.63 | $0.40 | $0.48 | $0.73 |
Reported shareholders
Reported holdings Number of shares
| Holder | Shares held |
|---|---|
Offerman Dave | 402.13K |
Purkayastha Subrata | 10.54K |
Chafetz Gerald E. | 1K |
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 |
|---|---|---|---|---|---|---|
| Mar 18, 2026Form 4 | Chafetz Gerald E.Director | SellCommon Stock, par value $0.01 per share | 2 | $18.50 | $37.00 | 1.0K |
| Mar 18, 2026Form 4 | Chafetz Gerald E.Director | SellCommon Stock, par value $0.01 per share | 498 | $18.00 | $9.0K | 1.0K |
| Mar 17, 2026Form 4 | Chafetz Gerald E.Director | SellCommon Stock, par value $0.01 per share | 500 | $17.39 | $8.7K | 1.5K |
| Mar 9, 2026Form 4 | Offerman DaveCOB, President and CEO | SellCommon Stock, par value $0.01 per share | 350 | $17.28 | $6.0K | 402.1K |
| Mar 6, 2026Form 4 | Offerman DaveCOB, President and CEO | SellCommon Stock, par value $0.01 per share | 4.7K | $16.50 | $76.7K | 402.5K |