Revenue
2018
2019
2020
2021
2022
2023
2024
2025
| 2025 | 2024 | 2023 | 2022 | 2021 | 2020 | 2019 | 2018 | 2017 | 2016 | 2015 | 2014 | 2013 | 2012 | 2011 | 2010 | 2009 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Revenue | $669.3M | $593.7M | $669.7M | $637.0M | $517.4M | $466.4M | $444.9M | $420.9M | $378.2M | $336.6M | — | — | — | — | — | — | — |
| Gross profit | $208.5M | $189.8M | $234.8M | $215.2M | $166.2M | $154.0M | $140.6M | $132.2M | $118.6M | $109.4M | $103.5M | $120.9M | $130.9M | $144.4M | $140.8M | $108.2M | $84.8M |
| Research & development | — | — | $5.2M | $4.5M | $3.3M | $2.8M | $3.0M | $2.4M | $2.1M | $2.7M | $2.9M | $2.7M | $2.3M | $2.1M | $2.4M | $1.7M | $9.2M |
| Operating income | $55.1M | $50.8M | $84.2M | $69.4M | $47.5M | $40.2M | $32.6M | $32.9M | $26.1M | $21.5M | $12.3M | $21.2M | $31.1M | $44.1M | $45.4M | $28.5M | $19.5M |
| EBITDAderived | $78.2M | $71.6M | $103.1M | $85.8M | $63.1M | $54.0M | $46.4M | $45.4M | $38.9M | $33.5M | $23.9M | $34.1M | $43.2M | $55.7M | $55.9M | $37.9M | $26.7M |
| Net income | $35.3M | $37.1M | $63.3M | $54.4M | $35.7M | $29.8M | $23.3M | $26.6M | $12.7M | $15.3M | $6.7M | $12.9M | $20.6M | $29.3M | $31.0M | $23.1M | $23.4M |
| Basic EPSper diluted share | $7.17 | $7.56 | $12.87 | $11.03 | $7.28 | $6.05 | $4.63 | $5.28 | $2.48 | $2.95 | $1.25 | $2.39 | $3.84 | $5.50 | $5.89 | $4.41 | $4.46 |
| Diluted EPSper diluted share | $7.14 | $7.50 | $12.68 | $10.88 | $7.19 | $5.98 | $4.58 | $5.21 | $2.47 | $2.95 | $1.24 | $2.39 | $3.77 | $5.45 | $5.78 | $4.33 | $4.35 |
| Transaction | Insider | Type | Shares | Price | Value | Owned after |
|---|---|---|---|---|---|---|
| Aug 21, 2023Form 4 | Ruhlman Jon RyanPresident | SellCommon shares, $2 par value | 2.0K | $168.78 | $337.6K | 5.3K |