
| 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 | $30,806 | $30,550 | $56,361 | $64,843 | $59,622 | $52,734 | $47,110 | $36,823 | $31,886 | $26,225 | $22,945 | $22,146 | $16,257 | $11,083 | $14,492 | $9,184 | $7,346 | $6,232 | $12,567 | $9,077 | $8,775 | $4,751 | $3,626 | $1,679 | $1,946 | $2,543 | $1,374 | $2,983 | $3,391 | $3,088 | $4,443 | $3,621 | $2,821 | $3,267 | $5,105 | $3,102 |
| Enterprise value | $23,920 | $22,445 | $47,366 | $57,713 | $56,284 | $42,651 | $38,198 | $30,523 | $23,207 | $18,845 | $17,200 | $16,438 | $9,629 | $4,387 | $7,031 | $2,307 | $1,221 | $1,996 | $12,214 | $8,606 | $8,858 | $2,854 | $1,879 | $252 | $636 | $1,076 | $114 | $1,971 | $2,743 | $1,729 | $3,355 | $2,823 | $2,520 | $3,970 | $5,877 | $3,754 |
| P/E (TTM) at period end | 25.93× | 25.31× | 22.64× | 23.11× | 20.33× | 15.66× | 17.40× | 21.88× | 13.03× | 42.71× | 17.98× | 19.31× | 13.21× | 9.07× | 10.21× | 8.36× | 7.06× | 9.63× | 15.07× | 18.62× | 28.45× | 16.97× | 16.21× | 11.76× | 16.61× | 28.24× | – | 23.13× | 19.60× | 257.34× | 23.38× | 20.57× | 31.70× | 26.62× | 14.38× | 10.02× |
| P/S (TTM) at period end | 0.24× | 0.26× | 0.53× | 0.70× | 0.72× | 0.68× | 0.73× | 0.65× | 0.59× | 0.48× | 0.42× | 0.46× | 0.39× | 0.28× | 0.39× | 0.27× | 0.24× | 0.22× | 0.50× | 0.42× | 0.61× | 0.36× | 0.30× | 0.15× | 0.19× | 0.24× | 0.13× | 0.30× | 0.42× | 0.45× | 0.94× | 0.99× | 0.90× | 0.81× | 0.87× | 0.64× |
| P/B at period end | 1.74× | 1.87× | 3.47× | 4.24× | 3.71× | 3.84× | 3.91× | 3.62× | 3.24× | 2.45× | 2.22× | 2.30× | 1.75× | 1.25× | 1.80× | 1.33× | 1.27× | 1.40× | 3.12× | 2.97× | 3.55× | 2.27× | 1.97× | 1.05× | 1.29× | 1.87× | 1.08× | 1.77× | 2.26× | 2.39× | 3.45× | 3.42× | 3.17× | 1.62× | 2.54× | 1.77× |
| EV / EBITDA (TTM) | 6.88× | 6.47× | 9.74× | 12.69× | 14.86× | 7.73× | 10.33× | 8.61× | 4.97× | 8.85× | 6.37× | 6.11× | 4.06× | 1.86× | 2.66× | 1.09× | 0.62× | 1.54× | 7.92× | 8.84× | 15.02× | 5.12× | 4.06× | 0.78× | 1.80× | 4.12× | – | 5.95× | 0.39× | 0.30× | 0.80× | 9.19× | 0.91× | 1.10× | 1.06× | 0.83× |
| EV / Sales (TTM) | 0.18× | 0.19× | 0.45× | 0.62× | 0.68× | 0.55× | 0.59× | 0.54× | 0.43× | 0.35× | 0.32× | 0.34× | 0.23× | 0.11× | 0.19× | 0.07× | 0.04× | 0.07× | 0.48× | 0.40× | 0.61× | 0.22× | 0.15× | 0.02× | 0.06× | 0.10× | 0.01× | 0.20× | 0.34× | 0.25× | 0.71× | 0.77× | 0.80× | 0.98× | 1.00× | 0.77× |
| Returns | ||||||||||||||||||||||||||||||||||||
| Return on equity | 6.7% | 7.4% | 15.3% | 18.3% | 18.2% | 24.5% | 22.5% | 16.6% | 24.9% | 5.7% | 12.3% | 11.9% | 13.2% | 13.8% | 17.6% | 15.9% | 18.0% | 14.5% | 20.7% | 16.0% | 12.5% | 13.4% | 12.2% | 8.9% | 7.8% | 6.6% | (30.2%) | 7.6% | 11.5% | 0.9% | 14.8% | 16.6% | 10.0% | 6.1% | 17.7% | 17.7% |
| Return on invested capital | 8.6% | 7.4% | 12.6% | 13.5% | 10.4% | 22.0% | 17.6% | 18.1% | 24.2% | 6.3% | 10.4% | 10.8% | 12.3% | 12.7% | 17.8% | 16.8% | 19.0% | 15.8% | 23.9% | 20.4% | 13.2% | 12.6% | 12.7% | 8.6% | 7.4% | 6.9% | (25.2%) | 5.7% | 292.4% | 480.4% | 304.1% | 20.3% | 461.7% | 123.7% | 190.1% | 178.3% |
| Dividend yield | 1.4% | 1.4% | 0.8% | 0.6% | 0.6% | 0.6% | 0.6% | 0.7% | 0.7% | 0.7% | 0.7% | 0.8% | 1.0% | 1.5% | 0.6% | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | 4.4% | 2.5% | 3.5% |
| Financial health | ||||||||||||||||||||||||||||||||||||
| Current ratio | 2.00× | 1.76× | 1.59× | 1.52× | 1.62× | 1.77× | 1.82× | 1.68× | 1.85× | 2.07× | 1.93× | 2.08× | 1.95× | 1.84× | 1.85× | 1.76× | 1.76× | 1.62× | 1.02× | 1.00× | 1.34× | 1.67× | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Debt / equity | 0.70× | 0.72× | 0.72× | 0.73× | 0.78× | 0.49× | 0.47× | 0.60× | 0.50× | 0.38× | 0.40× | 0.40× | 0.28× | 0.30× | 0.21× | 0.24× | 0.29× | 0.43× | 0.42× | 0.42× | 0.33× | 0.40× | 0.47× | 0.44× | 0.48× | 0.55× | 0.97× | 0.89× | 0.99× | 0.17× | 0.19× | 0.08× | 0.08× | 0.35× | 0.42× | 0.43× |
| Effective tax rate | 16.1% | 24.0% | 24.7% | 21.4% | 14.5% | 28.4% | 22.1% | 19.0% | 39.1% | 60.4% | 47.5% | 47.1% | 35.9% | 36.1% | 36.5% | 37.2% | 35.1% | 34.8% | 35.3% | 36.0% | 26.9% | 32.7% | 33.5% | 33.0% | 36.0% | 21.0% | 5.5% | 36.4% | – | – | – | 31.5% | – | – | – | – |
| Share count | ||||||||||||||||||||||||||||||||||||
| Diluted shares outstanding | 121 | 121 | 124 | 127 | 129 | 133 | 135 | 138 | 146 | 151 | 151 | 156 | 159 | 163 | 168 | 170 | 169 | 169 | 170 | 168 | 165 | 163 | 162 | 172 | 167 | 167 | 168 | 167 | 166 | 165 | 165 | 161 | 162 | 159 | 157 | 101 |
| 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 | $145,679 | $129,664 | $117,761 | $106,374 | $92,870 | $83,064 | $77,155 | $64,888 | $56,912 | $53,767 | $54,379 | $54,289 | $48,500 | $41,313 | $39,126 | $36,832 | $33,596 | $30,743 | $28,753 | $25,290 | $21,417 | $14,418 | $13,104 | $12,226 | $11,261 | $10,195 | $10,596 | $10,212 | $9,866 | $8,036 | $6,788 | $4,702 | $3,654 | $3,137 | $4,043 | $5,865 | $4,852 |
| Cost of revenue | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Gross profit | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Operating expenses | |||||||||||||||||||||||||||||||||||||
| Research and development | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Selling, general and administrative | ($16,525) | ($15,450) | ($13,696) | ($13,188) | ($12,671) | ($10,121) | ($10,052) | ($7,381) | ($7,525) | ($6,567) | ($7,173) | ($7,295) | ($7,639) | ($6,355) | ($5,830) | ($5,395) | ($4,380) | ($4,014) | ($3,740) | ($3,476) | – | – | ($1,878) | ($1,867) | ($1,781) | ($1,545) | ($1,525) | ($1,466) | ($1,413) | ($1,116) | ($940) | ($571) | ($436) | ($368) | ($371) | ($226) | ($226) |
| Total operating expenses | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Total costs and expenses | ($142,973) | ($126,960) | ($115,199) | ($102,361) | ($89,070) | ($79,916) | ($72,169) | ($61,696) | ($53,812) | ($49,505) | ($52,638) | ($51,942) | ($46,138) | ($39,252) | ($37,110) | ($34,488) | ($31,742) | ($29,035) | ($27,680) | ($23,932) | ($20,591) | ($13,957) | ($12,665) | ($11,890) | ($11,058) | ($10,012) | ($10,482) | ($10,616) | ($9,663) | ($1,136) | ($1,047) | ($582) | ($3,397) | ($422) | ($680) | ($579) | ($569) |
| Operating income | $2,706 | $2,704 | $2,562 | $4,013 | $3,800 | $3,148 | $4,986 | $3,192 | $3,100 | $4,262 | $1,741 | $2,347 | $2,362 | $2,061 | $2,016 | $2,344 | $1,854 | $1,708 | $1,073 | $1,358 | $825 | $461 | $439 | $336 | $204 | $183 | $114 | ($405) | $203 | $6,900 | $5,741 | $4,120 | $257 | $2,715 | $3,363 | $5,286 | $4,283 |
| Earnings | |||||||||||||||||||||||||||||||||||||
| EBITDA | $3,446 | $3,477 | $3,470 | $4,863 | $4,549 | $3,788 | $5,514 | $3,697 | $3,544 | $4,672 | $2,129 | $2,701 | $2,690 | $2,370 | $2,354 | $2,647 | $2,117 | $1,958 | $1,293 | $1,543 | $974 | $590 | $557 | $463 | $324 | $354 | $261 | ($278) | $331 | $7,008 | $5,839 | $4,190 | $307 | $2,762 | $3,601 | $5,542 | $4,514 |
| Interest income | – | $1,006 | $1,226 | $1,069 | $382 | $187 | $1,154 | $501 | $514 | $405 | $389 | $474 | $377 | $375 | $391 | $366 | $329 | $296 | $220 | $314 | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Interest expense | ($704) | ($631) | ($660) | ($493) | ($401) | ($326) | ($283) | ($242) | ($218) | ($242) | ($189) | ($186) | ($192) | ($140) | ($105) | ($109) | ($105) | ($106) | ($80) | ($69) | ($63) | ($39) | ($23) | ($17) | ($17) | ($25) | ($29) | ($33) | ($47) | ($20) | ($11) | ($11) | ($25) | ($7) | ($71) | ($97) | ($111) |
| Pre-tax income | $1,670 | $1,555 | $1,721 | $3,383 | $3,568 | $3,354 | $4,600 | $3,456 | $2,063 | $4,020 | $1,552 | $2,431 | $2,170 | $1,921 | $1,911 | $2,235 | $1,749 | $1,602 | $993 | $1,289 | $762 | $422 | $416 | $336 | $204 | $183 | $114 | ($405) | $203 | – | – | – | $257 | – | – | – | – |
| Income tax expense | ($298) | ($250) | ($413) | ($836) | ($762) | ($485) | ($1,307) | ($763) | ($391) | ($1,572) | ($938) | ($1,155) | ($1,023) | ($690) | ($689) | ($816) | ($650) | ($562) | ($346) | ($456) | ($275) | ($113) | ($136) | ($112) | ($67) | ($66) | ($24) | $22 | ($74) | ($97) | ($6) | ($98) | ($81) | ($54) | ($109) | ($200) | ($180) |
| Net income | $1,279 | $1,188 | $1,207 | $2,489 | $2,806 | $2,933 | $3,367 | $2,707 | $1,683 | $2,448 | $614 | $1,276 | $1,147 | $1,231 | $1,222 | $1,419 | $1,099 | $1,040 | $647 | $834 | $487 | $308 | $280 | $224 | $143 | $117 | $90 | ($382) | $129 | $173 | $12 | $190 | $176 | $89 | $123 | $355 | $310 |
| Per share | |||||||||||||||||||||||||||||||||||||
| Diluted EPS (GAAP) | $10.57 | $9.84 | $9.98 | $20.00 | $22.08 | $22.67 | $25.31 | $20.10 | $12.16 | $16.81 | $4.07 | $8.44 | $7.36 | $7.73 | $7.47 | $8.46 | $6.47 | $6.15 | $3.83 | $4.91 | $2.90 | $1.87 | $1.72 | $1.38 | $0.83 | $0.70 | $0.54 | ($2.28) | $0.77 | $1.05 | $0.07 | $1.16 | $1.10 | $0.55 | $0.77 | $2.26 | $3.00 |
| Basic EPS (GAAP) | $10.64 | $9.87 | $10.01 | $20.09 | $22.20 | $22.79 | $25.47 | $20.20 | $12.24 | $16.94 | $4.11 | $8.54 | $7.44 | $7.81 | $7.56 | $8.58 | $6.55 | $6.21 | $3.87 | $5.00 | $2.97 | $1.91 | $1.75 | $1.41 | $0.85 | $0.71 | $0.54 | ($2.28) | $0.77 | $1.06 | $0.07 | $1.17 | $1.10 | $0.56 | $0.77 | $2.26 | $3.00 |
| Basic shares outstanding | 120 | 120 | 121 | 124 | 126 | 129 | 132 | 134 | 137 | 144 | 149 | 149 | 154 | 158 | 161 | 165 | 168 | 167 | 167 | 167 | 164 | 162 | 160 | 159 | 168 | 165 | 167 | 168 | 167 | 163 | 163 | 162 | 160 | 159 | 159 | 157 | 101 |
| Margins | |||||||||||||||||||||||||||||||||||||
| Gross margin | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Operating margin | 1.9% | 2.1% | 2.2% | 3.8% | 4.1% | 3.8% | 6.5% | 4.9% | 5.4% | 7.9% | 3.2% | 4.3% | 4.9% | 5.0% | 5.2% | 6.4% | 5.5% | 5.6% | 3.7% | 5.4% | 3.9% | 3.2% | 3.4% | 2.7% | 1.8% | 1.8% | 1.1% | (4.0%) | 2.1% | 85.9% | 84.6% | 87.6% | 7.0% | 86.5% | 83.2% | 90.1% | 88.3% |
| Net margin | 0.9% | 0.9% | 1.0% | 2.3% | 3.0% | 3.5% | 4.4% | 4.2% | 3.0% | 4.6% | 1.1% | 2.4% | 2.4% | 3.0% | 3.1% | 3.9% | 3.3% | 3.4% | 2.3% | 3.3% | 2.3% | 2.1% | 2.1% | 1.8% | 1.3% | 1.1% | 0.8% | (3.7%) | 1.3% | 2.2% | 0.2% | 4.0% | 4.8% | 2.8% | 3.0% | 6.1% | 6.4% |