v3.26.1
Basic and Diluted Net Income Per Share - Computation of Basic and Diluted Net Income (Loss) Per Share (Details) - USD ($)
$ / shares in Units, $ in Thousands
3 Months Ended 6 Months Ended
Jul. 31, 2026
Apr. 30, 2026
Jul. 31, 2025
Apr. 30, 2025
Jul. 31, 2026
Jul. 31, 2025
Numerator            
Net income (loss) $ 3,004 $ 2,582 $ 1,255 $ (141) $ 5,586 $ 1,114
Denominator            
Basic weighted-average common shares 27,551,160   27,595,209   27,523,689 27,521,797
Potentially dilutive shares from equity plans 1,326,604   530,095   1,038,126 702,913
Diluted weighted-average common shares 28,877,764   28,125,304   28,561,815 28,224,710
Basic net income per share $ 0.11   $ 0.05   $ 0.2 $ 0.04
Diluted net income per share $ 0.1   $ 0.04   $ 0.2 $ 0.04