
| 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 | FY1989 | FY1988 | FY1987 | FY1986 | FY1985 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Valuation | |||||||||||||||||||||||||||||||||||||||||
| Market cap | $85,049 | $70,297 | $60,379 | $66,285 | $102,360 | $100,723 | $101,663 | $109,799 | $135,633 | $102,901 | $86,807 | $89,187 | $79,960 | $53,867 | $48,412 | $51,493 | $48,419 | $33,639 | $50,640 | $48,707 | $49,566 | $53,558 | $55,649 | $40,201 | $38,973 | $39,863 | $32,942 | $23,980 | $28,319 | $29,023 | $23,299 | $18,874 | $19,743 | $18,430 | $17,472 | $15,837 | $14,786 | $11,730 | $12,295 | $11,172 | $8,591 |
| Enterprise value | $92,097 | $76,280 | $71,208 | $79,295 | $115,976 | $115,502 | $120,553 | $121,315 | $145,572 | $111,963 | $95,773 | $92,754 | $83,136 | $55,873 | $50,419 | $52,915 | $50,990 | $38,617 | $53,154 | $50,407 | $50,934 | $53,693 | $56,820 | $42,962 | $41,777 | $42,744 | $35,482 | $27,028 | $30,717 | $30,620 | $25,035 | $20,791 | $20,962 | $19,474 | $18,687 | $17,291 | $16,583 | $11,586 | $12,400 | $11,474 | $9,289 |
| P/E (TTM) at period end | 26.17× | 16.85× | – | 11.47× | 17.29× | 18.48× | 22.51× | 20.53× | 27.92× | 20.38× | 17.96× | 18.00× | 17.16× | 12.12× | 11.30× | 12.61× | 15.16× | 9.72× | 12.36× | 12.65× | 15.76× | 17.91× | 23.16× | 20.37× | 27.25× | 22.37× | 18.68× | 20.41× | 13.35× | 19.02× | 23.87× | 14.28× | 15.63× | 14.91× | 15.14× | 12.11× | 11.89× | 10.16× | 13.39× | 14.34× | 12.94× |
| P/S (TTM) at period end | 3.41× | 2.86× | 2.45× | 2.53× | 2.90× | 3.13× | 3.16× | 3.35× | 4.28× | 3.42× | 2.87× | 2.80× | 2.59× | 1.80× | 1.63× | 1.93× | 2.09× | 1.33× | 2.07× | 2.12× | 2.34× | 2.68× | 3.05× | 2.46× | 2.42× | 2.38× | 2.10× | 1.60× | 1.88× | 2.04× | 1.73× | 1.25× | 1.41× | 1.33× | 1.31× | 1.22× | 1.23× | 1.11× | 1.30× | 1.30× | 1.09× |
| P/B at period end | 18.09× | 18.30× | 12.56× | 4.50× | 6.80× | 7.83× | 10.10× | 11.21× | 11.73× | 9.99× | 7.60× | 6.80× | 4.57× | 3.07× | 3.14× | 3.29× | 3.79× | 3.40× | 4.31× | 4.89× | 4.77× | 5.16× | 7.06× | 6.71× | 6.40× | 6.10× | 5.24× | 4.04× | 4.78× | 4.62× | 3.38× | 2.80× | 3.03× | 2.79× | 2.78× | 2.59× | 2.75× | 2.13× | 2.43× | 2.50× | 2.14× |
| EV / EBITDA (TTM) | 15.51× | 12.33× | – | 12.79× | 12.49× | 12.73× | 15.52× | 13.95× | 15.76× | 13.17× | 11.38× | 10.86× | 10.34× | 7.19× | 6.80× | 7.52× | 8.54× | 6.06× | 7.32× | 8.08× | 8.68× | 9.63× | 12.15× | 10.74× | 12.43× | 10.47× | 9.20× | 9.30× | 8.67× | 9.08× | 8.13× | 6.20× | 6.91× | 6.32× | 6.38× | 5.82× | 5.82× | – | – | – | – |
| EV / Sales (TTM) | 3.69× | 3.10× | 2.89× | 3.03× | 3.28× | 3.59× | 3.75× | 3.70× | 4.60× | 3.72× | 3.16× | 2.91× | 2.69× | 1.87× | 1.70× | 1.98× | 2.21× | 1.53× | 2.17× | 2.20× | 2.41× | 2.68× | 3.12× | 2.63× | 2.60× | 2.56× | 2.27× | 1.80× | 2.04× | 2.15× | 1.86× | 1.38× | 1.50× | 1.40× | 1.40× | 1.33× | 1.38× | 1.09× | 1.32× | 1.33× | 1.18× |
| Returns | |||||||||||||||||||||||||||||||||||||||||
| Return on equity | 69.1% | 108.6% | (145.5%) | 39.2% | 39.4% | 42.3% | 44.9% | 54.6% | 42.0% | 49.0% | 42.3% | 37.8% | 26.6% | 25.3% | 27.8% | 26.1% | 25.0% | 35.0% | 34.9% | 38.7% | 30.3% | 28.8% | 30.5% | 32.9% | 23.5% | 27.3% | 28.0% | 19.8% | 35.8% | 24.3% | 14.2% | 19.6% | 19.4% | 18.7% | 18.3% | 21.4% | 23.1% | 20.9% | 18.1% | 17.5% | 16.6% |
| Return on invested capital | 28.3% | 33.6% | (50.8%) | 15.2% | 21.0% | 20.5% | 17.1% | 25.5% | 22.0% | 25.7% | 24.1% | 28.5% | 22.7% | 21.7% | 23.6% | 23.5% | 21.0% | 23.6% | 27.7% | 28.8% | 27.5% | 29.2% | 27.5% | 23.6% | 17.4% | 21.3% | 21.4% | 14.4% | 20.0% | 19.5% | 15.6% | 16.1% | 15.5% | 16.8% | 16.3% | 18.0% | 18.0% | 21.5% | 17.9% | 17.1% | 14.8% |
| Dividend yield | 1.8% | 2.8% | 5.5% | 5.1% | 3.3% | 3.4% | 3.3% | 2.9% | 2.1% | 2.6% | 3.0% | 2.5% | 2.2% | 3.0% | 3.2% | 2.9% | 3.0% | 4.2% | 2.7% | 2.8% | 2.6% | 2.1% | 1.9% | 2.4% | 2.4% | 2.3% | 2.7% | 3.7% | 3.1% | 2.8% | 3.4% | 3.9% | 3.7% | 3.8% | 3.9% | 4.1% | 3.9% | – | – | – | – |
| Financial health | |||||||||||||||||||||||||||||||||||||||||
| Current ratio | 1.71× | 1.41× | 1.07× | 1.54× | 1.70× | 1.89× | 1.41× | 1.89× | 1.86× | 1.89× | 1.54× | 2.06× | 1.70× | 2.20× | 2.25× | 2.01× | 2.20× | 1.64× | 1.83× | 1.22× | 1.36× | 1.44× | 1.52× | 1.36× | 1.40× | 1.34× | 1.59× | 1.44× | 1.55× | 1.71× | 1.72× | 1.92× | 1.94× | 1.92× | 1.73× | 1.72× | 1.98× | 2.00× | 2.19× | 2.17× | 2.20× |
| Debt / equity | 2.68× | 3.40× | 3.34× | 1.08× | 1.15× | 1.46× | 2.02× | 1.49× | 1.21× | 1.13× | 0.94× | 0.52× | 0.34× | 0.34× | 0.34× | 0.35× | 0.45× | 0.68× | 0.42× | 0.36× | 0.23× | 0.27× | 0.37× | 0.56× | 0.48× | 0.43× | 0.42× | 0.52× | 0.42× | 0.31× | 0.29× | 0.29× | 0.23× | 0.22× | 0.23× | 0.24× | 0.42× | 0.14× | 0.14× | 0.19× | 0.22× |
| Effective tax rate | 23.8% | 16.7% | 25.4% | 2.9% | 17.8% | 19.7% | 19.5% | 23.4% | 35.5% | 28.3% | 29.0% | 28.9% | 28.1% | 29.0% | 27.8% | 27.7% | 30.0% | 31.1% | 32.1% | 30.6% | 33.7% | 33.0% | 32.9% | 32.1% | 32.1% | 34.5% | 35.8% | 35.1% | 36.1% | 36.9% | 37.5% | 36.8% | 35.9% | 35.7% | 37.5% | 37.9% | 39.9% | 38.7% | 41.3% | 42.2% | 39.5% |
| Share count | |||||||||||||||||||||||||||||||||||||||||
| Diluted shares outstanding | 541 | 552 | 554 | 568 | 585 | 582 | 585 | 602 | 613 | 619 | 637 | 662 | 694 | 703 | 719 | 726 | 707 | 707 | 732 | 761 | 777 | 796 | 795 | 791 | 800 | 800 | 813 | 816 | 838 | 852 | 848 | 856 | 869 | 876 | 878 | 884 | 889 | 905 | 913 | 916 | 916 |
| 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 | FY1989 | FY1988 | FY1987 | FY1986 | FY1985 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Revenue and gross profit | ||||||||||||||||||||||||||||||||||||||||||
| Revenue | $25,247 | $24,948 | $24,575 | $24,610 | $26,161 | $35,355 | $32,184 | $32,136 | $32,765 | $31,657 | $30,109 | $30,274 | $31,821 | $30,871 | $29,904 | $29,611 | $26,662 | $23,123 | $25,269 | $24,462 | $22,923 | $21,167 | $20,011 | $18,232 | $16,332 | $16,079 | $16,724 | $15,659 | $15,021 | $15,070 | $14,236 | $13,460 | $15,079 | $14,020 | $13,883 | $13,340 | $13,021 | $11,990 | $10,581 | $9,429 | $8,602 | $7,846 |
| Cost of revenue | ($15,267) | ($14,991) | ($14,447) | ($14,983) | ($15,853) | ($18,795) | ($16,605) | ($17,136) | ($16,682) | ($16,055) | ($15,118) | ($15,351) | ($16,447) | ($16,106) | ($15,685) | ($15,693) | ($13,831) | ($12,109) | ($13,379) | ($12,735) | ($11,586) | ($10,408) | ($9,958) | ($9,285) | ($8,496) | ($8,749) | ($8,787) | ($8,852) | ($8,705) | ($8,580) | ($8,099) | ($7,720) | ($8,995) | ($7,453) | ($7,259) | ($7,089) | ($6,875) | ($6,246) | ($8,066) | ($4,949) | ($4,567) | ($4,302) |
| Gross profit | $9,980 | $9,957 | $10,128 | $9,627 | $10,308 | $16,560 | $15,579 | $15,000 | $16,083 | $15,602 | $14,991 | $14,923 | $15,374 | $14,765 | $14,219 | $13,918 | $12,831 | $11,014 | $11,890 | $11,727 | $11,337 | $10,759 | $10,053 | $8,947 | $7,836 | $7,330 | $7,937 | $6,807 | $6,316 | $6,490 | $6,137 | $5,740 | $6,084 | $6,567 | $6,624 | $6,251 | $6,146 | $5,744 | $2,515 | $4,480 | $4,035 | $3,544 |
| Operating expenses | ||||||||||||||||||||||||||||||||||||||||||
| Research and development | ($1,213) | ($1,169) | ($700) | ($700) | ($800) | ($1,200) | ($1,100) | ($1,253) | ($1,253) | ($1,352) | ($1,248) | ($1,220) | ($1,193) | ($1,150) | ($1,079) | ($1,036) | ($919) | ($838) | ($851) | ($1,372) | ($1,352) | ($1,274) | ($1,143) | ($1,102) | ($1,070) | ($1,084) | ($1,101) | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Selling, general and administrative | ($3,691) | ($3,997) | ($4,221) | ($19,198) | ($7,232) | ($7,197) | ($6,929) | ($7,029) | ($7,602) | ($6,626) | ($6,311) | ($6,233) | ($6,469) | ($6,384) | ($6,102) | ($6,170) | ($5,479) | ($4,907) | ($5,245) | ($5,015) | ($4,828) | ($4,601) | ($4,332) | ($4,039) | ($3,720) | ($4,061) | ($3,963) | ($3,879) | ($3,784) | ($3,815) | ($3,646) | ($3,440) | ($3,833) | ($3,535) | ($3,543) | ($3,323) | ($3,174) | ($2,894) | – | ($2,338) | ($2,118) | ($1,950) |
| Total operating expenses | ($5,245) | ($5,328) | ($5,306) | ($20,316) | ($5,939) | ($9,191) | ($8,418) | ($8,826) | ($8,876) | ($7,910) | ($7,964) | ($7,943) | ($8,239) | ($8,099) | ($7,736) | ($7,740) | ($6,913) | ($6,200) | ($6,672) | ($5,534) | ($6,180) | ($5,875) | ($5,475) | ($5,234) | ($4,790) | ($5,057) | ($4,879) | ($3,851) | ($4,277) | ($3,815) | ($3,646) | ($3,519) | ($3,833) | ($4,611) | ($4,630) | ($4,292) | ($3,955) | ($3,594) | ($632) | ($2,902) | ($2,625) | ($2,394) |
| Total costs and expenses | ($20,512) | ($20,319) | ($19,753) | ($35,299) | ($21,792) | ($27,986) | ($25,023) | ($25,962) | ($25,558) | ($23,965) | ($23,082) | ($23,294) | ($24,686) | ($24,205) | ($23,421) | ($23,433) | ($20,744) | ($18,309) | ($20,051) | ($18,269) | ($17,766) | ($16,283) | ($15,433) | ($14,519) | ($13,286) | ($13,806) | ($13,666) | ($12,703) | ($12,982) | ($12,395) | ($11,745) | ($11,239) | ($12,828) | ($12,064) | ($11,889) | ($11,381) | ($10,830) | ($9,840) | ($8,698) | ($7,851) | ($7,192) | ($6,696) |
| Operating income | $4,735 | $4,629 | $4,822 | ($10,689) | $4,369 | $7,369 | $7,161 | $6,174 | $7,207 | $7,692 | $7,027 | $6,980 | $7,135 | $6,666 | $6,483 | $6,178 | $5,918 | $4,814 | $5,218 | $6,193 | $5,157 | $4,884 | $4,578 | $3,713 | $3,046 | $2,273 | $3,058 | $2,956 | $2,039 | $2,675 | $2,491 | $2,221 | $2,251 | $1,956 | $1,994 | $1,959 | $2,191 | $2,150 | $1,883 | $1,578 | $1,410 | $1,150 |
| Earnings | ||||||||||||||||||||||||||||||||||||||||||
| EBITDA | $6,162 | $5,937 | $6,185 | ($8,702) | $6,200 | $9,284 | $9,072 | $7,767 | $8,695 | $9,236 | $8,501 | $8,415 | $8,543 | $8,037 | $7,771 | $7,414 | $7,038 | $5,971 | $6,371 | $7,265 | $6,236 | $5,870 | $5,577 | $4,677 | $4,000 | $3,362 | $4,083 | $3,856 | $2,905 | $3,545 | $3,374 | $3,080 | $3,352 | $3,032 | $3,081 | $2,928 | $2,972 | $2,850 | – | – | – | – |
| Interest income | $184 | $232 | $452 | $250 | $65 | $26 | $29 | $80 | $70 | $50 | $29 | $26 | $33 | $41 | $39 | $39 | $38 | $37 | $105 | $132 | $51 | $56 | $46 | $28 | $39 | $37 | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Interest expense | ($855) | ($946) | ($1,191) | ($942) | ($462) | ($488) | ($529) | ($448) | ($350) | ($322) | ($199) | ($149) | ($142) | ($145) | ($171) | ($186) | ($201) | ($219) | ($215) | ($210) | ($122) | ($82) | ($69) | ($84) | ($80) | ($124) | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Pre-tax income | $4,426 | $4,213 | $4,819 | ($11,271) | $6,392 | $7,204 | $6,795 | $5,712 | $7,000 | $7,548 | $7,053 | $6,823 | $7,026 | $6,562 | $6,351 | $6,031 | $5,755 | $4,632 | $5,108 | $6,115 | $5,625 | $4,828 | $4,555 | $3,657 | $3,005 | $2,186 | $2,974 | $2,880 | $1,952 | $3,440 | $2,402 | $2,091 | $2,093 | $1,970 | $1,923 | $1,845 | $2,106 | $2,069 | $1,882 | $1,565 | $1,348 | $1,097 |
| Income tax expense | ($850) | ($1,003) | ($804) | $2,867 | ($188) | ($1,285) | ($1,337) | ($1,114) | ($1,637) | ($2,679) | ($1,995) | ($1,982) | ($2,028) | ($1,841) | ($1,840) | ($1,674) | ($1,592) | ($1,388) | ($1,588) | ($1,964) | ($1,723) | ($1,627) | ($1,503) | ($1,202) | ($966) | ($702) | ($1,025) | ($1,032) | ($685) | ($1,241) | ($886) | ($785) | ($771) | ($707) | ($687) | ($691) | ($798) | ($825) | ($728) | ($647) | ($569) | ($433) |
| Net income | $3,536 | $3,250 | $4,173 | ($6,995) | $5,777 | $5,921 | $5,449 | $4,517 | $5,349 | $4,858 | $5,050 | $4,833 | $4,956 | $4,659 | $4,444 | $4,283 | $4,085 | $3,193 | $3,460 | $4,096 | $3,851 | $3,146 | $2,990 | $2,403 | $1,974 | $1,430 | $1,782 | $1,763 | $1,175 | $2,121 | $1,526 | $976 | $1,322 | $1,263 | $1,236 | $1,154 | $1,308 | $1,244 | $1,154 | $918 | $779 | $664 |
| Per share | ||||||||||||||||||||||||||||||||||||||||||
| Diluted EPS (GAAP) | $6.71 | $6.00 | $7.55 | ($12.63) | $10.18 | $10.12 | $9.36 | $7.72 | $8.89 | $7.93 | $8.16 | $7.58 | $7.49 | $6.72 | $6.32 | $5.96 | $5.63 | $4.52 | $4.89 | $5.60 | $5.06 | $4.12 | $3.75 | $3.02 | $2.50 | $1.79 | $2.23 | $2.17 | $1.44 | $2.53 | $1.79 | $1.15 | $1.54 | $1.45 | $1.41 | $1.31 | $1.48 | $1.40 | $1.28 | $1.00 | $0.85 | $0.72 |
| Basic EPS (GAAP) | $6.75 | $6.05 | $7.58 | ($12.63) | $10.21 | $10.23 | $9.43 | $7.83 | $9.09 | $8.13 | $8.35 | $7.72 | $7.63 | $6.83 | $6.40 | $6.05 | $5.72 | $4.56 | $4.95 | $5.70 | $5.15 | $4.18 | $3.83 | $3.07 | $2.53 | $1.81 | $2.25 | $2.19 | $1.46 | $2.57 | $1.82 | $1.16 | $1.56 | $1.45 | $1.41 | $1.31 | $1.48 | $1.40 | $1.28 | $1.00 | $0.85 | $0.72 |
| Basic shares outstanding | 525 | 537 | 551 | 554 | 566 | 579 | 578 | 577 | 588 | 598 | 605 | 626 | 649 | 682 | 694 | 708 | 714 | 700 | 699 | 718 | 748 | 765 | 780 | 783 | 780 | 789 | 791 | 805 | 807 | 825 | 836 | 840 | 846 | 869 | 876 | 878 | 884 | 889 | 905 | 913 | 916 | 916 |
| Margins | ||||||||||||||||||||||||||||||||||||||||||
| Gross margin | 39.5% | 39.9% | 41.2% | 39.1% | 39.4% | 46.8% | 48.4% | 46.7% | 49.1% | 49.3% | 49.8% | 49.3% | 48.3% | 47.8% | 47.5% | 47.0% | 48.1% | 47.6% | 47.1% | 47.9% | 49.5% | 50.8% | 50.2% | 49.1% | 48.0% | 45.6% | 47.5% | 43.5% | 42.0% | 43.1% | 43.1% | 42.6% | 40.3% | 46.8% | 47.7% | 46.9% | 47.2% | 47.9% | 23.8% | 47.5% | 46.9% | 45.2% |
| Operating margin | 18.8% | 18.6% | 19.6% | (43.4%) | 16.7% | 20.8% | 22.3% | 19.2% | 22.0% | 24.3% | 23.3% | 23.1% | 22.4% | 21.6% | 21.7% | 20.9% | 22.2% | 20.8% | 20.6% | 25.3% | 22.5% | 23.1% | 22.9% | 20.4% | 18.7% | 14.1% | 18.3% | 18.9% | 13.6% | 17.8% | 17.5% | 16.5% | 14.9% | 14.0% | 14.4% | 14.7% | 16.8% | 17.9% | 17.8% | 16.7% | 16.4% | 14.7% |
| Net margin | 14.0% | 13.0% | 17.0% | (28.4%) | 22.1% | 16.7% | 16.9% | 14.1% | 16.3% | 15.3% | 16.8% | 16.0% | 15.6% | 15.1% | 14.9% | 14.5% | 15.3% | 13.8% | 13.7% | 16.7% | 16.8% | 14.9% | 14.9% | 13.2% | 12.1% | 8.9% | 10.7% | 11.3% | 7.8% | 14.1% | 10.7% | 7.3% | 8.8% | 9.0% | 8.9% | 8.7% | 10.0% | 10.4% | 10.9% | 9.7% | 9.1% | 8.5% |