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 | $241.0M | $180.4M | $171.7M | $182.7M | $141.0M | $113.9M | $82.0M | $54.1M | $62.0M | $48.3M | $60.9M | $70.7M | $87.1M | $127.9M | $139.2M | $82.6M |
| Gross profit | $53.9M | $44.3M | $41.7M | $44.8M | $31.2M | $23.1M | $16.3M | $9.7M | $11.3M | $8.3M | $9.7M | $12.7M | $14.2M | $24.3M | $20.1M | $12.4M |
| Gross margin | 22.37% | 24.57% | 24.26% | 24.54% | 22.15% | 20.25% | 19.82% | 17.91% | 18.21% | 17.19% | 15.97% | 17.88% | 16.31% | 18.99% | 14.45% | 15.02% |
| Operating expenses | $35.8M | $36.2M | $32.9M | $30.9M | $21.7M | $16.3M | $13.0M | $9.0M | $9.3M | $11.9M | $11.7M | $13.1M | $14.7M | $25.5M | $13.5M | $82.3M |
| Operating income | $18.1M | $8.2M | $8.8M | $13.9M | $9.5M | $6.8M | $3.2M | $651,432 | $2.0M | −$3.6M | −$2.0M | −$403,083 | −$509,159 | −$1.2M | $6.6M | $287,379 |
| Operating margin | 7.51% | 4.52% | 5.10% | 7.63% | 6.74% | 5.96% | 3.95% | 1.21% | 3.15% | −7.44% | −3.22% | −0.57% | −0.58% | −0.95% | 4.75% | 0.35% |
| EBITDA | $20.0M | $9.7M | $10.1M | $15.4M | $10.4M | $7.5M | $3.8M | $938,179 | $2.3M | −$3.2M | −$1.4M | −$21,332 | −$156,125 | −$518,338 | $6.9M | $701,521 |
| EBITDA margin | 8.29% | 5.38% | 5.89% | 8.43% | 7.39% | 6.60% | 4.59% | 1.74% | 3.67% | −6.61% | −2.34% | −0.03% | −0.18% | −0.41% | 4.97% | 0.85% |
| Net income | $14.6M | $6.8M | $7.1M | $15.7M | $10.0M | $6.4M | $2.8M | $657,685 | $1.8M | −$4.0M | −$2.3M | −$4.5M | −$2.7M | −$2.3M | $1.0M | $10.7M |
| Net profit margin | 6.06% | 3.75% | 4.16% | 8.59% | 7.13% | 5.60% | 3.39% | 1.22% | 2.97% | −8.29% | −3.70% | −6.39% | −3.05% | −1.81% | 0.73% | 13.01% |
| Basic EPSper basic share | $0.56 | $0.26 | $0.27 | $0.58 | $0.37 | $0.24 | $0.10 | $0.02 | $0.07 | -$0.30 | -$0.18 | -$0.37 | -$0.22 | -$0.19 | $0.09 | $1.04 |
| Diluted EPSper diluted share | $0.56 | $0.26 | $0.27 | $0.58 | $0.37 | $0.24 | $0.10 | $0.02 | $0.07 | -$0.30 | -$0.18 | -$0.37 | -$0.22 | -$0.19 | $0.09 | $0.96 |
Reported shareholders
| Holder | % owned |
|---|---|
Mink Brook Asset Management LLC | 4.81%1.25M shares |
Topline Capital Management, LLC | 1.59%413.15K shares |
BlackRock, Inc. | 1.58%410.55K shares |
VANGUARD CAPITAL MANAGEMENT LLC | 1.12%289.77K shares |
RENAISSANCE TECHNOLOGIES LLC | 1.01%262.87K shares |
GEODE CAPITAL MANAGEMENT, LLC | 0.63%164.67K shares |
Nuveen, LLC | 0.63%163.17K shares |
ARROWSTREET CAPITAL, LIMITED PARTNERSHIP | 0.63%162.89K shares |
STATE STREET CORP | 0.54%139.88K shares |
Allspring Global Investments Holdings, LLC | 0.51%132.94K shares |
DIMENSIONAL FUND ADVISORS LP | 0.49%127.88K shares |
LAZARD ASSET MANAGEMENT LLC | 0.38%97.94K shares |
Informed Momentum Co LLC | 0.32%82.52K shares |
NORTHERN TRUST CORP | 0.30%78.22K shares |
GOLDMAN SACHS GROUP INC | 0.30%77.46K shares |
Invesco Ltd. | 0.28%73.32K shares |
OSAIC HOLDINGS, INC. | 0.26%67.41K shares |
US BANCORP \DE\ | 0.23%59.69K shares |
ACADIAN ASSET MANAGEMENT LLC | 0.23%58.45K shares |
RAYMOND JAMES FINANCIAL INC | 0.20%51.68K shares |
Percentages use 25.96M shares of this listed class outstanding on Jun 30, 2026.
Gray completes the 100% scale. Reported positions may overlap; holders have different reporting dates.
| Transaction | Insider | Type | Shares | Price | Value | Owned after |
|---|---|---|---|---|---|---|
| May 22, 2026Form 4 | DeLuca John GarrettCFO | BuyCommon Stock | 55 | $23.94 | $1.3K | 3.2K |
| Nov 28, 2025Form 4 | DeLuca John GarrettCFO | BuyCommon Stock | 90 | $11.78 | $1.1K | 3.1K |
| Aug 19, 2025Form 4 | DeLuca John GarrettCFO | BuyCommon Stock | 280 | $7.09 | $2.0K | 3.1K |
| Jun 4, 2025Form 4 | DeLuca John GarrettCFO | BuyCommon Stock | 500 | $5.81 | $2.9K | 2.8K |
| Dec 5, 2024Form 4 | DeLuca John GarrettCFO | BuyCommon Stock | 125 | $7.48 | $935.00 | 2.3K |