Net Income (Loss) Per Share
The following table sets forth the computation of basic and diluted EPS (in thousands, except per-share amounts):

 Year Ended December 31,
 202520242023
Numerator for basic and diluted EPS — net income (loss) (A)$66,353 $24,138 $(74,404)
Denominator for basic EPS — weighted average shares (B)78,584 76,485 72,644 
Effect of potentially dilutive common stock from:
Shares of common stock subject to outstanding options502 553 — 
Restricted stock units1,440 1,087 — 
Employee stock purchase plan47 38 — 
Dilutive potential common shares1,989 1,678 — 
Denominator for diluted EPS — adjusted weighted average shares and assumed conversions (C)80,573 78,163 72,644 
Basic EPS (A / B)$0.84 $0.32 $(1.02)
Diluted EPS (A / C)$0.82 $0.31 $(1.02)
Common stock equivalent shares excluded from the dilutive calculation due to antidilutive effect:
Shares of common stock subject to outstanding options493 1,802 3,821 
Restricted stock units41 90 2,714 
Employee stock purchase plan— — 35 
Anti-dilutive potential common shares534 1,892 6,570 

About Earnings Per Share Disclosures

The earnings per share disclosure breaks down the calculation from net income to both basic and diluted EPS, revealing the full impact of a company's capital structure on per-share economics. The reconciliation between basic and diluted share counts exposes how many stock options, RSUs, convertible securities, and warrants are potentially dilutive to existing shareholders.

Key signals: a widening gap between basic and diluted shares indicates growing dilution from equity compensation or convertible instruments. Anti-dilutive securities excluded from the diluted calculation deserve attention — they represent latent dilution that will materialize if the stock price rises. Watch for the effect of share buybacks on per-share metrics: EPS growth driven primarily by repurchases rather than income growth signals weakening fundamentals. Compare year-over-year changes in the diluted share count against equity compensation expense to assess whether management is effectively managing dilution.