Note 10. Earnings per Share

Basic and diluted earnings per share is presented in conformity with the two-class method required for multiple classes of common stock. The rights of the holders of Class A and Class B common stock are identical, except for voting and conversion rights. Each share of Class A common stock is entitled to one vote per share. Each share of Class B common stock is entitled to ten votes per share and is convertible at any time into one share of Class A common stock.

Basic earnings per share is computed by dividing the net income attributable to common stockholders by the weighted-average number of shares of common stock outstanding during the period.

Diluted earnings per share represents net income attributable to common stockholders divided by the weighted-average number of shares of common stock outstanding, inclusive of the effect of dilutive stock options and RSUs. The undistributed earnings are allocated based on the participation rights of shares of Class A and Class B common stock as if the earnings for the year have been distributed. As the liquidation and dividend rights are identical for both classes, the undistributed earnings are allocated on a proportionate basis.

The calculation of diluted earnings per share for Class A common stock assumes the conversion of Class B common stock, while diluted earnings per share of Class B common stock does not assume the conversion of Class A common stock as Class A common stock is not convertible into Class B common stock. Similarly, outstanding options to purchase Class B common stock and RSUs that are dilutive are included in the calculation of diluted earnings for both Class A and Class B common stock.

In August 2023, our board of directors authorized a stock repurchase program of up to $100 million of our outstanding Class A common stock. Repurchases during any given fiscal period under the repurchase program reduce the weighted-average number of shares of common stock outstanding for the period.

The following table presents the calculation of basic and diluted earnings per share:

 

 

 

Year Ended December 31,

 

 

 

2025

 

 

2024

 

 

2023

 

 

 

Class A

 

 

Class B

 

 

Class A

 

 

Class B

 

 

Class A

 

 

Class B

 

Numerator

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Net income

 

$

34,612

 

 

$

26,534

 

 

$

26,414

 

 

$

22,357

 

 

$

15,572

 

 

$

12,575

 

Net loss attributable to
   non-controlling interest

 

 

319

 

 

 

244

 

 

 

426

 

 

 

360

 

 

 

 

 

 

 

Net income attributable to common stockholders - basic

 

 

34,931

 

 

 

26,778

 

 

 

26,840

 

 

 

22,717

 

 

 

15,572

 

 

 

12,575

 

Reallocation of undistributed earnings as a result of conversion of Class B to Class A shares

 

 

26,778

 

 

 

 

 

 

22,717

 

 

 

 

 

 

12,575

 

 

 

 

Reallocation of undistributed earnings to Class B shares

 

 

 

 

 

384

 

 

 

 

 

 

311

 

 

 

 

 

 

132

 

Net income attributable to common stockholders - diluted

 

$

61,709

 

 

$

27,162

 

 

$

49,557

 

 

$

23,028

 

 

$

28,147

 

 

$

12,707

 

Denominator

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Weighted average shares used to compute earnings per share — basic

 

 

40,358

 

 

 

30,939

 

 

 

38,370

 

 

 

32,476

 

 

 

40,364

 

 

 

32,597

 

Conversion of Class B to Class A common shares outstanding

 

 

30,939

 

 

 

 

 

 

32,476

 

 

 

 

 

 

32,597

 

 

 

 

Effect of dilutive stock options and RSUs

 

 

790

 

 

 

790

 

 

 

831

 

 

 

831

 

 

 

622

 

 

 

622

 

Weighted average number of shares used to compute earnings per share — diluted

 

 

72,087

 

 

 

31,729

 

 

 

71,677

 

 

 

33,307

 

 

 

73,583

 

 

 

33,219

 

Earnings per share:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Basic

 

$

0.87

 

 

$

0.87

 

 

$

0.70

 

 

$

0.70

 

 

$

0.39

 

 

$

0.39

 

Diluted

 

$

0.86

 

 

$

0.86

 

 

$

0.69

 

 

$

0.69

 

 

$

0.38

 

 

$

0.38

 

 

The following have been excluded from the computation of basic and diluted earnings per share as their effect would have been anti-dilutive (in thousands):

 

 

 

Year Ended December 31,

 

 

 

2025

 

 

2024

 

 

2023

 

Stock options to purchase Class A
   and Class B common stock, and RSUs

 

 

1,197

 

 

 

1,265

 

 

 

1,365

 

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.