
| Line item | FY2025 | FY2024 | FY2023 | FY2022 | FY2021 | FY2020 | FY2019 | FY2018 | FY2017 | FY2016 | FY2015 | FY2014 | FY2013 | FY2012 | FY2011 | FY2010 | FY2009 | FY2008 | FY2007 | FY2006 | FY2005 | FY2004 | FY2003 | FY2002 | FY2001 | FY2000 | FY1999 | FY1998 | FY1997 | FY1996 | FY1995 | FY1994 | FY1993 | FY1992 | FY1991 | FY1990 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Valuation | ||||||||||||||||||||||||||||||||||||
| Market cap | $106,535 | $76,027 | $72,450 | $67,841 | $79,908 | $51,151 | $45,972 | $38,707 | $27,320 | $23,022 | $27,571 | $30,859 | $20,974 | $13,371 | $10,500 | – | – | – | – | – | – | – | – | $15,853 | $16,263 | $16,984 | $20,495 | $20,014 | $20,568 | $20,842 | $20,702 | $16,027 | $14,978 | $1,014 | $773 | $553 |
| Enterprise value | $158,949 | $122,297 | $116,208 | $109,827 | $117,502 | $84,618 | $83,165 | $73,058 | $61,457 | $55,421 | $58,871 | $61,115 | $50,278 | $42,915 | $38,423 | – | – | – | – | – | – | – | – | $23,246 | $24,101 | $23,994 | $27,512 | $27,235 | $30,702 | $28,547 | $28,572 | $20,202 | $18,509 | $1,541 | $1,037 | $754 |
| P/E (TTM) at period end | 15.70× | 13.20× | 13.82× | 12.02× | 11.49× | 13.63× | 13.12× | 10.22× | 12.33× | 7.97× | 12.95× | 16.46× | 13.48× | 8.33× | 4.26× | – | – | – | – | – | – | – | – | 19.03× | 18.36× | 58.16× | 27.70× | 42.49× | – | 13.85× | 21.54× | 25.44× | 29.54× | 39.77× | 50.85× | 56.40× |
| P/S (TTM) at period end | 1.41× | 1.08× | 1.12× | 1.13× | 1.36× | 0.99× | 0.90× | 0.83× | 0.63× | 0.55× | 0.69× | 0.84× | 0.61× | 0.36× | 0.35× | – | – | – | – | – | – | – | – | 0.80× | 0.91× | 1.02× | 1.23× | 1.07× | 1.09× | 1.05× | 1.17× | 1.44× | 1.46× | 1.33× | 1.68× | 2.03× |
| P/B at period end | – | – | – | – | – | 89.42× | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | 2.78× | 3.42× | 3.86× | 3.65× | 2.64× | 2.84× | 2.42× | 2.90× | 3.19× | 4.32× | 3.83× | 6.54× | 13.35× |
| EV / EBITDA (TTM) | 10.26× | 8.82× | 9.15× | 9.14× | 9.38× | 8.48× | 8.47× | 8.19× | 7.51× | 6.79× | 7.48× | 8.28× | 7.68× | 6.61× | 6.62× | – | – | – | – | – | – | – | – | 7.60× | 7.36× | 1.36× | 1.57× | 1.50× | 12.74× | 7.04× | 7.88× | 9.54× | 23.58× | 616.57× | – | 142.25× |
| EV / Sales (TTM) | 2.10× | 1.73× | 1.79× | 1.82× | 2.00× | 1.64× | 1.62× | 1.57× | 1.41× | 1.34× | 1.48× | 1.66× | 1.47× | 1.17× | 1.29× | – | – | – | – | – | – | – | – | 1.18× | 1.34× | 1.44× | 1.65× | 1.46× | 1.63× | 1.43× | 1.61× | 1.81× | 1.81× | 2.02× | 2.25× | 2.77× |
| Returns | ||||||||||||||||||||||||||||||||||||
| Return on equity | – | – | – | – | – | 656.3% | – | – | – | – | – | – | – | – | – | 10.1% | – | – | – | – | 29.3% | 28.3% | 21.5% | 14.6% | 18.6% | 6.6% | 13.2% | 6.2% | (4.2%) | 17.5% | 13.5% | 12.5% | 14.6% | 9.6% | 12.9% | 23.7% |
| Return on invested capital | 20.4% | 18.8% | 18.1% | 18.4% | 20.7% | 17.2% | 16.6% | 18.6% | 13.9% | 17.6% | 17.1% | 17.0% | 15.4% | 16.8% | 17.6% | 17.3% | 15.0% | 13.1% | 12.5% | 10.2% | 12.2% | 11.0% | 11.2% | 9.0% | 10.6% | 61.5% | 69.7% | 56.2% | 3.2% | 10.6% | 10.5% | 9.9% | 11.7% | 3.1% | 3.2% | 5.1% |
| Dividend yield | 0.6% | 0.9% | 0.9% | 1.0% | 0.8% | 0.3% | 1.2% | 1.3% | – | – | – | 0.0% | 0.1% | 23.5% | 0.3% | – | – | – | – | – | – | – | – | 0.3% | 0.3% | 0.3% | – | – | – | 0.3% | 0.2% | 0.2% | 0.3% | 0.4% | 0.5% | 0.7% |
| Financial health | ||||||||||||||||||||||||||||||||||||
| Current ratio | 0.97× | 1.08× | 1.18× | 1.38× | 1.41× | 1.42× | 1.44× | 1.35× | 1.62× | 1.56× | 1.67× | 1.63× | 1.41× | 1.26× | 1.30× | 1.62× | 1.52× | 1.61× | 1.61× | 1.70× | 1.34× | 1.48× | 1.52× | 1.20× | 1.30× | 1.08× | 1.08× | 1.09× | 1.60× | 1.50× | 1.53× | 1.44× | 1.30× | 1.67× | 1.70× | 1.28× |
| Debt / equity | (7.71×) | (17.22×) | (22.32×) | (13.76×) | (37.06×) | 54.20× | (12.01×) | (6.63×) | (4.86×) | (4.30×) | (4.01×) | (3.73×) | (3.43×) | (2.99×) | (3.28×) | 2.37× | (2.86×) | (2.63×) | (2.59×) | (2.50×) | 2.15× | 2.39× | 1.40× | 1.22× | 1.55× | 1.53× | 1.15× | 0.89× | 1.30× | 0.81× | 1.04× | 0.78× | 1.07× | 2.11× | 2.13× | 4.53× |
| Effective tax rate | 20.9% | 21.9% | 21.0% | 20.3% | 21.5% | 19.2% | 21.0% | 17.7% | 37.4% | 28.6% | 31.9% | 31.8% | 32.2% | 30.7% | 20.2% | 29.5% | 31.3% | 22.9% | 26.6% | 37.7% | 33.7% | 36.8% | 38.2% | 42.7% | 40.0% | 57.6% | 46.5% | 50.8% | 53.1% | 40.2% | 40.2% | 39.5% | 40.7% | 39.3% | 39.2% | 27.4% |
| Share count | ||||||||||||||||||||||||||||||||||||
| Diluted shares outstanding | 239 | 262 | 276 | 295 | 329 | 344 | 348 | 355 | 372 | 396 | 427 | 450 | 462 | 459 | 496 | 437 | 432 | 349 | 349 | 410 | 448 | 484 | 510 | 524 | 537 | 554 | 667 | 645 | 663 | 678 | 672 | 517 | 492 | 33 | 25 | 18 |
| Line item | TTM | FY2025 | FY2024 | FY2023 | FY2022 | FY2021 | FY2020 | FY2019 | FY2018 | FY2017 | FY2016 | FY2015 | FY2014 | FY2013 | FY2012 | FY2011 | FY2010 | FY2009 | FY2008 | FY2007 | FY2006 | FY2005 | FY2004 | FY2003 | FY2002 | FY2001 | FY2000 | FY1999 | FY1998 | FY1997 | FY1996 | FY1995 | FY1994 | FY1993 | FY1992 | FY1991 | FY1990 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Revenue and gross profit | |||||||||||||||||||||||||||||||||||||
| Revenue | $78,013 | $75,600 | $70,603 | $64,968 | $60,233 | $58,752 | $51,533 | $51,336 | $46,677 | $43,614 | $41,490 | $39,678 | $36,918 | $34,182 | $36,783 | $29,682 | $30,683 | $30,052 | $28,374 | $26,858 | $25,477 | $24,455 | $23,502 | $21,808 | $19,729 | $17,953 | $16,670 | $16,657 | $18,681 | $18,819 | $19,909 | $17,695 | $11,132 | $10,252 | $762 | $461 | $273 |
| Cost of revenue | ($55,892) | ($44,226) | ($41,925) | ($39,389) | ($37,056) | ($36,260) | ($8,369) | ($8,481) | ($7,724) | ($7,316) | ($6,933) | ($6,638) | ($6,262) | ($5,970) | – | – | – | ($4,868) | ($4,620) | ($4,395) | ($4,322) | ($4,126) | ($3,901) | – | – | – | – | – | – | – | – | – | – | ($3,512) | ($230) | ($135) | ($81) |
| Gross profit | $22,121 | $31,374 | $28,678 | $25,579 | $23,177 | $22,492 | $43,164 | $42,855 | $38,953 | $36,298 | $34,557 | $33,040 | $30,656 | $28,212 | – | – | – | $25,184 | $23,754 | $22,463 | $21,155 | $20,329 | $19,601 | – | – | – | – | – | – | – | – | – | – | $6,740 | $531 | $326 | $191 |
| Operating expenses | |||||||||||||||||||||||||||||||||||||
| Research and development | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Selling, general and administrative | ($8,715) | ($548) | ($421) | ($353) | ($307) | ($337) | ($416) | ($370) | ($344) | ($340) | ($343) | ($327) | ($285) | ($287) | ($248) | ($228) | ($182) | ($164) | ($11,440) | ($10,714) | ($10,409) | ($9,928) | ($9,419) | ($8,682) | ($7,952) | ($7,279) | ($6,639) | ($6,749) | ($7,811) | ($7,631) | ($7,205) | ($6,779) | – | ($4,757) | ($452) | ($283) | ($162) |
| Total operating expenses | ($10,048) | ($19,409) | ($18,131) | ($15,952) | ($14,124) | ($12,814) | ($35,902) | ($35,637) | ($32,311) | ($30,241) | ($28,359) | ($27,075) | ($25,091) | ($23,420) | – | – | – | ($21,383) | ($20,819) | ($19,511) | ($18,319) | ($17,425) | ($16,885) | – | – | – | – | – | – | – | – | – | – | ($5,356) | ($490) | ($306) | ($174) |
| Total costs and expenses | ($65,940) | ($63,635) | ($60,056) | ($55,341) | ($51,180) | ($49,074) | ($44,271) | ($44,118) | ($40,035) | ($37,557) | ($35,292) | ($33,713) | ($31,353) | ($29,390) | ($31,967) | ($25,344) | ($26,518) | ($26,251) | ($25,439) | ($23,906) | ($22,641) | ($21,551) | ($20,786) | ($19,011) | ($17,680) | ($15,728) | ($117) | ($220) | ($1,789) | ($17,648) | ($17,011) | ($15,051) | ($9,624) | ($8,868) | ($721) | ($441) | ($255) |
| Operating income | $12,073 | $11,965 | $10,547 | $9,627 | $9,053 | $9,678 | $7,262 | $7,218 | $6,642 | $6,057 | $6,198 | $5,965 | $5,565 | $4,792 | $4,816 | $4,338 | $4,165 | $3,801 | $2,935 | $2,952 | $2,836 | $2,904 | $2,716 | $2,797 | $2,049 | $2,225 | $16,553 | $16,437 | $16,892 | $1,171 | $2,898 | $2,644 | $1,508 | $1,384 | $41 | $20 | $17 |
| Earnings | |||||||||||||||||||||||||||||||||||||
| EBITDA | $15,747 | $15,488 | $13,859 | $12,704 | $12,022 | $12,531 | $9,983 | $9,814 | $8,920 | $8,188 | $8,164 | $7,869 | $7,385 | $6,545 | $6,495 | $5,803 | $5,586 | $5,226 | $4,351 | $4,378 | $4,227 | $4,278 | $3,966 | $3,909 | $3,059 | $3,273 | $17,586 | $17,531 | $18,139 | $2,409 | $4,053 | $3,625 | $2,117 | $785 | $2 | ($3) | $5 |
| Interest income | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Interest expense | ($2,316) | ($2,248) | ($2,061) | ($1,938) | ($1,741) | ($1,566) | ($1,584) | ($1,824) | ($1,755) | ($1,690) | ($1,707) | ($1,665) | ($1,743) | ($1,848) | ($1,798) | ($2,037) | ($2,097) | ($1,987) | ($2,021) | ($2,215) | ($955) | ($655) | ($563) | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Pre-tax income | $9,871 | $9,832 | $8,523 | $7,706 | $8,580 | $9,833 | $5,430 | $5,244 | $5,335 | $4,381 | $4,810 | $3,957 | $3,481 | $2,946 | $2,894 | $3,561 | $2,231 | $2,002 | $1,170 | $1,190 | $1,662 | $2,149 | $1,973 | $2,156 | $1,455 | $1,505 | $516 | $1,227 | $1,081 | $388 | $2,442 | $1,714 | $1,231 | $969 | $43 | $25 | $14 |
| Income tax expense | ($2,018) | ($2,050) | ($1,866) | ($1,615) | ($1,746) | ($2,112) | ($1,043) | ($1,099) | ($946) | ($1,638) | ($1,378) | ($1,261) | ($1,108) | ($950) | ($888) | ($719) | ($658) | ($627) | ($268) | ($316) | ($626) | ($725) | ($727) | ($824) | ($622) | ($602) | ($297) | ($570) | ($549) | ($206) | ($981) | ($689) | ($486) | ($394) | ($17) | ($10) | ($4) |
| Net income | $6,840 | $6,784 | $5,760 | $5,242 | $5,643 | $6,956 | $3,754 | $3,505 | $3,787 | $2,216 | $2,890 | $2,129 | $1,875 | $1,556 | $1,605 | $2,465 | $1,207 | $1,054 | $673 | $874 | $1,036 | $1,424 | $1,246 | $1,332 | $833 | $886 | $292 | $740 | $471 | ($305) | $1,505 | $961 | $630 | $507 | $26 | $15 | $10 |
| Per share | |||||||||||||||||||||||||||||||||||||
| Diluted EPS (GAAP) | $29.87 | $28.33 | $22.00 | $18.97 | $19.15 | $21.16 | $10.93 | $10.07 | $10.66 | $5.95 | $7.30 | $4.99 | $4.16 | $3.37 | $3.49 | $4.97 | $2.76 | $2.44 | $1.93 | $2.51 | $2.53 | $3.18 | $2.58 | $2.61 | $1.59 | $1.65 | $0.40 | $1.11 | $0.73 | ($0.46) | $2.22 | $1.43 | $1.80 | $1.03 | $0.78 | $0.61 | $0.55 |
| Basic EPS (GAAP) | $30.14 | $28.70 | $22.27 | $19.25 | $19.43 | $21.52 | $11.10 | $10.27 | $10.90 | $6.12 | $7.53 | $5.14 | $4.30 | $3.50 | $3.65 | $5.17 | $2.83 | $2.48 | $1.97 | $2.56 | $2.57 | $3.24 | $2.62 | $2.66 | $1.63 | $1.69 | $0.39 | $1.12 | $0.73 | ($0.46) | $2.24 | $1.44 | $1.80 | $1.05 | $0.78 | $0.61 | $0.55 |
| Basic shares outstanding | 227 | 236 | 259 | 272 | 290 | 323 | 338 | 341 | 347 | 362 | 384 | 414 | 436 | 445 | 440 | 477 | 426 | 426 | 342 | 342 | 403 | 440 | 476 | 501 | 511 | 524 | 548 | 661 | 645 | 663 | 672 | 667 | 517 | 483 | 33 | 25 | 18 |
| Margins | |||||||||||||||||||||||||||||||||||||
| Gross margin | 28.4% | 41.5% | 40.6% | 39.4% | 38.5% | 38.3% | 83.8% | 83.5% | 83.5% | 83.2% | 83.3% | 83.3% | 83.0% | 82.5% | – | – | – | 83.8% | 83.7% | 83.6% | 83.0% | 83.1% | 83.4% | – | – | – | – | – | – | – | – | – | – | 65.7% | 69.7% | 70.7% | 70.2% |
| Operating margin | 15.5% | 15.8% | 14.9% | 14.8% | 15.0% | 16.5% | 14.1% | 14.1% | 14.2% | 13.9% | 14.9% | 15.0% | 15.1% | 14.0% | 13.1% | 14.6% | 13.6% | 12.6% | 10.3% | 11.0% | 11.1% | 11.9% | 11.6% | 12.8% | 10.4% | 12.4% | 99.3% | 98.7% | 90.4% | 6.2% | 14.6% | 14.9% | 13.5% | 13.5% | 5.4% | 4.3% | 6.3% |
| Net margin | 8.8% | 9.0% | 8.2% | 8.1% | 9.4% | 11.8% | 7.3% | 6.8% | 8.1% | 5.1% | 7.0% | 5.4% | 5.1% | 4.6% | 4.4% | 8.3% | 3.9% | 3.5% | 2.4% | 3.3% | 4.1% | 5.8% | 5.3% | 6.1% | 4.2% | 4.9% | 1.8% | 4.4% | 2.5% | (1.6%) | 7.6% | 5.4% | 5.7% | 4.9% | 3.3% | 3.3% | 3.6% |