Per Share
Basic net income (loss) per share is computed by dividing the net income (loss) by the weighted average number of shares of common stock outstanding during the period. Diluted net income (loss) per share is computed by dividing the net income (loss) by the weighted average number of shares of common stock and dilutive potential shares of common stock outstanding during the period. For the periods presented with a net loss, diluted net loss per share is the same as basic net loss per share as all of the following potentially dilutive shares were antidilutive in those periods.
The components of net income (loss) per share are as follows:
Year ended December 31,
202520242023
Numerator:
Net income (loss)$145,422 $53,509 $(21,153)
Denominator:
Weighted average number of common shares outstanding basic
29,368,892 29,763,395 29,302,154 
Dilutive effect of stock options317,986 594,726 — 
Dilutive effect of restricted stock units56,059 79,514 — 
Dilutive effect of performance stock units11,480 99,263 — 
Dilutive effect of shares issuable under the ESPP2,619 6,376 — 
Weighted average number of common shares outstanding diluted
29,757,036 30,543,274 29,302,154 
Net income (loss) per share:
Basic$4.95 $1.80 $(0.72)
Diluted$4.89 $1.75 $(0.72)
The following common stock-based awards were excluded from the computation of diluted net income (loss) per common share for the periods presented because including them would have been antidilutive:
Year Ended December 31,
202520242023
Stock options1,415,769 1,514,718 2,447,141 
Restricted stock units525,088 29,320 201,070 
Total1,940,857 1,544,038 2,648,211 

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.