Revenue
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
| 2026 | 2025 | 2024 | 2023 | 2022 | 2021 | 2020 | 2019 | 2018 | 2017 | 2016 | 2015 | 2014 | 2013 | 2012 | 2011 | 2010 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Revenue | $73.3M | $62.0M | $56.0M | $54.1M | $53.6M | $46.3M | $60.0M | $51.1M | $40.2M | $31.8M | $145.9M | $162.1M | $165.8M | $176.4M | $193.3M | $211.7M | $175.7M |
| Gross profit | $22.7M | $17.6M | $16.5M | $16.5M | $17.9M | $13.2M | $18.7M | $16.2M | $11.3M | $8.3M | $42.8M | $49.0M | $48.1M | $50.5M | $54.7M | $69.9M | $51.6M |
| Gross margin | 30.93% | 28.44% | 29.52% | 30.47% | 33.44% | 28.51% | 31.11% | 31.66% | 28.06% | 26.07% | 29.31% | 30.20% | 29.02% | 28.65% | 28.33% | 33.03% | 29.37% |
| Operating expenses | $9.2M | $8.2M | $8.2M | $6.5M | $6.5M | $7.7M | $7.9M | $9.0M | $10.0M | $10.3M | $21.7M | $25.6M | $25.7M | $30.3M | $29.5M | $29.2M | $24.5M |
| Operating income | $13.5M | $9.4M | $8.4M | $10.0M | $11.4M | $5.5M | $10.7M | $7.2M | $1.3M | −$2.0M | $21.0M | $23.4M | $22.4M | $20.3M | $25.2M | $40.7M | $27.1M |
| Operating margin | 18.42% | 15.15% | 14.96% | 18.41% | 21.29% | 11.90% | 17.90% | 14.12% | 3.18% | −6.31% | 14.40% | 14.44% | 13.50% | 11.48% | 13.06% | 19.22% | 15.44% |
| EBITDA | $15.4M | $11.2M | $9.8M | $11.1M | $12.5M | $6.7M | $12.3M | $9.0M | $3.1M | −$159,000 | $24.4M | $27.0M | $26.1M | $24.5M | $31.1M | $47.4M | $34.2M |
| EBITDA margin | 20.95% | 18.13% | 17.47% | 20.52% | 23.41% | 14.39% | 20.47% | 17.61% | 7.74% | −0.50% | 16.71% | 16.63% | 15.77% | 13.90% | 16.11% | 22.40% | 19.45% |
| Net income | $11.3M | $5.9M | $7.5M | $10.7M | $8.5M | $4.9M | $9.6M | $113.5M | $20.6M | $9.3M | $18.0M | $20.0M | −$42.3M | $17.0M | $23.4M | $32.6M | $25.4M |
| Net profit margin | 15.38% | 9.48% | 13.34% | 19.85% | 15.80% | 10.51% | 15.92% | 222.13% | 51.19% | 29.16% | 12.36% | 12.37% | −25.54% | 9.61% | 12.13% | 15.41% | 14.43% |
| Basic EPSper basic share | $0.56 | $0.29 | $0.37 | $0.52 | $0.41 | $0.24 | $0.47 | $5.60 | $1.02 | $0.46 | $0.89 | $0.96 | -$2.03 | $0.82 | $1.13 | $1.58 | $1.24 |
| Diluted EPSper diluted share | $0.56 | $0.29 | $0.37 | $0.52 | $0.41 | $0.24 | $0.47 | $5.57 | $1.02 | $0.46 | $0.89 | $0.96 | -$2.03 | $0.81 | $1.13 | $1.58 | $1.23 |
Reported shareholders
Reported holdings Number of shares
| Holder | Shares held |
|---|---|
BRANDES INVESTMENT PARTNERS, LP | 2.54M |
BlackRock, Inc. | 1.45M |
FMR LLC | 1.35M |
STATE STREET CORP | 1.14M |
SHORE BRIAN E | 1.05M |
NEXT CENTURY GROWTH INVESTORS LLC | 957.57K |
VANGUARD CAPITAL MANAGEMENT LLC | 799.86K |
RENAISSANCE TECHNOLOGIES LLC | 766.71K |
GAMCO INVESTORS, INC. ET AL | 689.6K |
GEODE CAPITAL MANAGEMENT, LLC | 517.1K |
FOUNDATION RESOURCE MANAGEMENT INC | 502.68K |
Stephens Investment Management Group LLC | 496.36K |
ROYCE & ASSOCIATES LP | 476.44K |
DIMENSIONAL FUND ADVISORS LP | 475.4K |
Portolan Capital Management, LLC | 447.39K |
Palisades Investment Partners, LLC | 435.12K |
VANGUARD PORTFOLIO MANAGEMENT LLC | 427.5K |
KENNEDY CAPITAL MANAGEMENT LLC | 323.42K |
UBS Group AG | 233.89K |
WELLS FARGO & COMPANY/MN | 232.13K |
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 |
|---|---|---|---|---|---|---|
| Nov 6, 2025Form 4 | Smith Carl WilliamDirector | SellCommon Stock | 3.0K | $19.44 | $58.3K | 1.0K |
| Apr 22, 2025Form 4 | Esquivel Mark APresident & COO | SellRight to buy option · derivative | 15.0K | $0.00 | $0.00 | 0 |
| Jan 28, 2025Form 4 | Esquivel Mark APresident & COO | SellCommon Stock | 1.0K | $15.00 | $15.0K | 0 |
| Jan 28, 2025Form 4 | Esquivel Mark APresident & COO | SellCommon Stock | 100 | $15.00 | $1.5K | 0 |
| Jan 28, 2025Form 4 | Esquivel Mark APresident & COO | SellCommon Stock | 200 | $15.00 | $3.0K | 0 |