Revenue
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2023
2024
2023
2025
2026
| 2026 | 2025 | 2023 · Apr 30 | 2024 | 2023 · Apr 30 | 2023 · Jan 31 | 2022 | 2021 | 2020 | 2019 | 2018 | 2017 | 2016 | 2015 | 2014 | 2013 | 2012 | 2011 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Revenue | $192.6M | $167.2M | $6.3M | $124.7M | $6.0M | $112.8M | $118.4M | $159.0M | $107.8M | $99.0M | $96.0M | $86.2M | $99.6M | $93.4M | $91.4M | $95.1M | $96.3M | $99.5M |
| Gross profit | $63.3M | $68.7M | — | $51.2M | — | $45.8M | $50.9M | $79.3M | $37.9M | $33.9M | $36.2M | $31.6M | $36.3M | $31.7M | $24.8M | $27.3M | $28.8M | $30.1M |
| Gross margin | 32.88% | 41.07% | — | 41.05% | — | 40.63% | 43.01% | 49.86% | 35.15% | 34.24% | 37.72% | 36.71% | 36.46% | 33.93% | 27.18% | 28.73% | 29.88% | 30.23% |
| Research & development | — | — | — | — | — | — | — | $200,000 | $200,000 | $200,000 | $280,000 | $463,000 | $165,000 | $90,000 | $123,000 | $242,000 | $428,000 | — |
| Operating expenses | $77.0M | $67.4M | — | $45.2M | — | $40.3M | $34.9M | $35.4M | $32.0M | $30.3M | $27.7M | $24.8M | $24.5M | $24.7M | $25.2M | $28.4M | $27.0M | $26.0M |
| Operating income | −$15.5M | −$9.3M | — | $6.0M | — | $5.5M | $16.0M | $43.9M | $5.9M | $3.6M | $8.5M | $6.8M | $11.8M | $7.0M | −$359,009 | −$1.0M | $1.7M | $4.1M |
| Operating margin | −8.05% | −5.54% | — | 4.81% | — | 4.91% | 13.55% | 27.60% | 5.45% | 3.60% | 8.83% | 7.94% | 11.85% | 7.45% | −0.39% | −1.08% | 1.81% | 4.14% |
| EBITDA | −$12.7M | −$6.7M | — | $7.9M | — | $7.0M | $17.9M | $45.9M | $7.5M | $4.5M | $9.3M | $8.0M | $12.8M | $8.1M | $1.2M | $520,697 | $3.7M | $6.1M |
| EBITDA margin | −6.60% | −3.99% | — | 6.33% | — | 6.24% | 15.13% | 28.84% | 6.98% | 4.58% | 9.64% | 9.33% | 12.84% | 8.64% | 1.37% | 0.55% | 3.82% | 6.12% |
| Net income | −$25.3M | −$18.1M | — | $5.4M | — | $1.9M | $11.4M | $35.3M | $3.3M | $1.5M | $440,000 | $3.9M | $3.9M | $8.4M | −$119,501 | −$26.3M | −$376,825 | $971,999 |
| Net profit margin | −13.14% | −10.81% | — | 4.35% | — | 1.66% | 9.61% | 22.22% | 3.04% | 1.47% | 0.46% | 4.52% | 3.87% | 8.99% | −0.13% | −27.64% | −0.39% | 0.98% |
| Basic EPSper basic share | -$2.63 | -$2.43 | — | $0.74 | — | $0.25 | $1.44 | $4.43 | $0.41 | $0.18 | $0.06 | $0.54 | $0.54 | $1.35 | -$0.02 | -$4.97 | -$0.07 | $0.18 |
| Diluted EPSper diluted share | -$2.63 | -$2.43 | — | $0.72 | — | $0.24 | $1.41 | $4.34 | $0.41 | $0.18 | $0.06 | $0.53 | $0.53 | $1.33 | -$0.02 | -$4.97 | -$0.07 | $0.18 |
Reported shareholders
| Holder | % owned |
|---|---|
ROYCE & ASSOCIATES LP | ≈13.37%1.32M shares |
Private Capital Management, LLC | ≈12.66%1.25M shares |
Pacific Ridge Capital Partners, LLC | ≈9.89%975.88K shares |
VANGUARD CAPITAL MANAGEMENT LLC | ≈3.98%393.13K shares |
DIMENSIONAL FUND ADVISORS LP | ≈3.24%320.24K shares |
MORGAN STANLEY | ≈2.72%268.29K shares |
MARSHALL WACE, LLP | ≈2.38%234.58K shares |
Peapod Lane Capital LLC | ≈2.10%207.66K shares |
RENAISSANCE TECHNOLOGIES LLC | ≈1.85%182.8K shares |
BlackRock, Inc. | ≈1.60%158.28K shares |
GEODE CAPITAL MANAGEMENT, LLC | ≈1.24%122.49K shares |
Jenkins James M. | ≈1.11%109.96K shares |
MILLENNIUM MANAGEMENT LLC | ≈1.09%107.39K shares |
Expect Equity LLC | ≈0.87%86.12K shares |
McAteer Thomas J | ≈0.85%84K shares |
Hui An | ≈0.74%73.33K shares |
JANE STREET GROUP, LLC | ≈0.66%65.6K shares |
VANGUARD FIDUCIARY TRUST CO | ≈0.61%60.51K shares |
Bank of New York Mellon Corp | ≈0.57%56.3K shares |
UBS Group AG | ≈0.56%55.5K shares |
Percentages use 9.87M shares of this listed class outstanding on Jun 5, 2026. ≈ compares the latest reported holding with a share total from a different date; it is not a confirmed current stake.
Gray completes the 100% scale. Reported positions may overlap; holders have different reporting dates.
| Transaction | Insider | Type | Shares | Price | Value | Owned after |
|---|---|---|---|---|---|---|
| Jan 13, 2026Form 4 | Stokes CameronSee Remarks | BuyCommon Stock, par value $.01 per share | 450 | $9.43 | $4.2K | 4.8K |
| Jan 9, 2026Form 4 | Hui AnChief Operating Officer | BuyCommon Stock, par value $.01 per share | 2.0K | $8.97 | $17.9K | 72.8K |
| Jan 9, 2026Form 4 | Swinea James Calven Jr.Interim CFO | BuyCommon Stock, par value $.01 per share | 1.0K | $8.71 | $8.7K | 7.3K |
| Jan 5, 2026Form 4 | Jenkins James M.President, CEO & Exec. Chair | BuyCommon Stock, par value $.01 per share | 1.1K | $8.88 | $10.0K | 94.6K |
| Dec 23, 2025Form 4 | Phillips Barry GChief Revenue Officer - Fire | BuyCommon Stock, par value $.01 per share | 1.3K | $8.71 | $10.9K | 18.8K |