Stockholders' Equity (Tables)
|
6 Months Ended |
Jun. 30, 2025 |
Schedule of share repurchase program |
| | | | | | | | | | | | | | | | Three Months Ended | | | Six Months Ended | | | | June 30, | | | June 30, | (In thousands, except share and per share data) | | | 2025 | | | 2024 | | | 2025 | | | 2024 | Number of shares repurchased | | | 1,507,496 | | | — | | | 2,143,099 | | | — | Total share repurchased cost | | $ | 16,704 | | $ | — | | $ | 26,772 | | $ | — | Average total cost per repurchased share | | $ | 11.08 | | $ | — | | $ | 12.49 | | $ | — |
|
Schedule of allocation of total stock-based compensation expense |
| | | | | | | | | | | | | | | Three Months Ended | | Six Months Ended | | | June 30, | | June 30, | (In thousands) | | 2025 | | 2024 | | 2025 | | 2024 | Cost of revenue | | $ | 101 | | $ | 103 | | $ | 200 | | $ | 186 | Sales and marketing expenses | | | 465 | | | 606 | | | 968 | | | 1,344 | Research and development expenses | | | 52 | | | 48 | | | 85 | | | 81 | Reimbursement, general and administrative expenses | | | 1,321 | | | 1,103 | | | 2,752 | | | 2,288 | Total stock-based compensation expense | | $ | 1,939 | | $ | 1,860 | | $ | 4,005 | | $ | 3,899 |
|
Schedule of stock option activity |
| | | | | | | | | | | | | | | Weighted- | | Weighted- | | | | | | | | Average | | Average | | Aggregate | | | Options | | Exercise Price | | Remaining | | Intrinsic | (In thousands except options and per share data) | | Outstanding | | Per Share | | Contractual Life | | Value (1) | Balance at December 31, 2024 | | 394,871 | | $ | 40.70 | | 2.8 years | | $ | 309 | Exercised | | (2,364) | | $ | 4.23 | | | | $ | 22 | Cancelled/Expired | | (114,429) | | $ | 42.14 | | | | | | Balance at June 30, 2025 | | 278,078 | | $ | 40.42 | | 2.5 years | | $ | 49 | | | | | | | | | | | | Options exercisable at June 30, 2025 | | 272,690 | | $ | 41.45 | | 2.45 years | | $ | 33 |
(1) | The aggregate intrinsic value of options exercised represents the difference between the exercise price of the option and the closing stock price of our common stock on the date of exercise. The aggregate intrinsic value of options outstanding represents the difference between the exercise price of the option and the closing stock price of our common stock on the last trading day of the period. |
|
Time-Based Restricted Stock Units |
|
Schedule of stock-settled restricted stock unit activity |
| | | | | | | | | | | | | Weighted- | | | | | | | | Average Grant | | Aggregate | | | Units | | Date Fair Value | | Intrinsic | (In thousands except unit and per unit data) | | Outstanding | | Per Unit | | Value (1) | Balance at December 31, 2024 | | 728,426 | | $ | 14.33 | | $ | 12,478 | Granted | | 467,253 | | $ | 13.85 | | | | Vested | | (345,920) | | $ | 15.05 | | | | Cancelled | | (39,489) | | $ | 14.66 | | | | Balance at June 30, 2025 | | 810,270 | | $ | 13.73 | | $ | 8,216 |
(1) | The aggregate intrinsic value of restricted stock units outstanding was based on our closing stock price on the last trading day of the period. |
|
Performance-based stock-settled restricted stock units |
|
Schedule of stock-settled restricted stock unit activity |
| | | | | | | | | | | | | Weighted- | | | | | | | | Average Grant | | Aggregate | | | PSUs | | Date Fair Value | | Intrinsic | (In thousands except unit and per unit data) | | Outstanding | | Per Unit | | Value (1) | Balance at December 31, 2024 | | 272,919 | | $ | 15.19 | | $ | 4,675 | Granted | | 168,722 | | $ | 15.38 | | | | Vested | | (120,436) | | $ | 16.67 | | | | Cancelled | | (9,033) | | $ | 13.77 | | | | Balance at June 30, 2025 | | 312,172 | | $ | 14.75 | | $ | 3,165 |
(1) | The aggregate intrinsic value of PSUs outstanding was based on our closing stock price on the last trading day of the period. |
|