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 | $262.9M | $209.8M | $197.2M | $175.2M | $155.3M | $159.3M | $185.3M | $168.6M | $168.1M | $161.6M | $136.2M | $119.0M | $105.0M | $92.5M | $83.6M | $74.3M | $68.8M |
| Operating income | $204.7M | $199.4M | $185.5M | $99.1M | $54.8M | $95.6M | $81.9M | $152.2M | $85.1M | $84.0M | $70.7M | $68.4M | $55.4M | $50.3M | — | — | — |
| EBITDAderived | $242.6M | $235.7M | $222.9M | $136.6M | $93.1M | $134.7M | $121.1M | $189.8M | $122.7M | $119.9M | $100.1M | $94.0M | $80.1M | $72.5M | — | — | — |
| Net income | $118.0M | $91.0M | $89.7M | $100.0M | $55.9M | $95.3M | $80.5M | $155.0M | $87.3M | $85.1M | $73.1M | $73.4M | $57.8M | $51.3M | $49.3M | $45.9M | $44.1M |
| Basic EPSper diluted share | $2.54 | $2.07 | $2.16 | $2.49 | $1.41 | $2.42 | $2.03 | $3.91 | $2.21 | $2.21 | $1.97 | $2.01 | $1.64 | $1.58 | $1.36 | $1.21 | $1.27 |
| Diluted EPSper diluted share | $2.52 | $2.04 | $2.16 | $2.48 | $1.41 | $2.42 | $2.02 | $3.89 | $2.20 | $2.21 | $1.94 | $1.99 | $1.63 | $1.57 | $1.36 | $1.21 | $1.27 |
| Transaction | Insider | Type | Shares | Price | Value | Owned after |
|---|---|---|---|---|---|---|
| Jun 4, 2026Form 4 | BOITANO DAVID MEVP & CIO | BuyCommon Stock | 5.0K | $34.85 | $174.3K | 46.2K |
| Jun 4, 2026Form 4 | BOITANO DAVID MEVP & CIO | BuyCommon Stock | 5.0K | $34.69 | $173.4K | 41.2K |
| May 21, 2026Form 4 | Gruber David LDirector | BuyCommon Stock | 4.0K | $38.41 | $153.6K | 44.0K |
| Mar 5, 2026Form 4 | Gruber David LDirector | BuyCommon Stock | 7.0K | $38.00 | $266.0K | 36.9K |
| Dec 31, 2025Form 4 | BOITANO DAVID MEVP & CIO | BuyCommon Stock | 5.0K | $34.58 | $172.9K | 25.6K |