v3.25.2
Net Income Per Share - Schedule of Reconciliation of Net Income and Number of Shares in the Calculation of Basic and Diluted Net Income per Share (Details) - USD ($)
$ / shares in Units, $ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2025
Jun. 30, 2024
Jun. 30, 2025
Jun. 30, 2024
Numerator:        
Net income $ 17,112 $ 16,485 $ 32,171 $ 33,383
Denominator:        
Weighted-average shares used in computing basic net income per share (in shares) 85,766,254 93,868,409 85,644,091 95,160,085
Basic net income per share (in dollars per share) $ 0.20 $ 0.18 $ 0.38 $ 0.35
Numerator:        
Net income $ 17,112 $ 16,485 $ 32,171 $ 33,383
Denominator:        
Weighted-average shares used in computing basic net income per share (in shares) 85,766,254 93,868,409 85,644,091 95,160,085
Effect of dilutive securities (in shares) 3,872,423 3,971,167 3,863,815 4,296,250
Diluted (in shares) 89,638,677 97,839,576 89,507,906 99,456,335
Diluted net income per share (in dollars per share) $ 0.19 $ 0.17 $ 0.36 $ 0.34
Options to purchase common stock        
Denominator:        
Effect of dilutive securities (in shares) 3,174,843 3,558,853 3,173,687 3,748,342
Shares issuable under ESPP        
Denominator:        
Effect of dilutive securities (in shares) 1,384 3,040 0 4,523
Warrants to purchase common stock        
Denominator:        
Effect of dilutive securities (in shares) 0 288,081 0 290,035
Restricted stock units        
Denominator:        
Effect of dilutive securities (in shares) 696,196 121,193 690,128 253,350