
| 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Valuation | |||||||||||||||||||||||||||||||||||||||
| Market cap | $72,931 | $54,718 | $61,044 | $54,314 | $61,279 | $38,210 | $19,266 | $15,140 | $27,842 | $19,369 | $7,825 | $24,264 | $37,815 | $32,456 | $34,840 | $55,006 | $33,236 | $9,336 | $34,932 | $10,646 | $9,699 | $6,966 | $6,566 | $2,427 | $1,929 | $1,318 | $3,456 | $1,831 | $3,100 | $5,797 | $5,748 | $5,041 | $4,855 | $4,562 | $4,447 | $4,201 | $4,161 | $5,055 | $5,055 |
| Enterprise value | $91,776 | $71,730 | $76,803 | $66,436 | $72,019 | $52,986 | $35,470 | $30,158 | $39,752 | $34,357 | $32,292 | $47,123 | $60,954 | $36,182 | $36,466 | $56,995 | $39,677 | $17,305 | $41,756 | $10,632 | $10,413 | $8,586 | $8,518 | $4,587 | $4,353 | $3,604 | $5,779 | $4,428 | $5,540 | $7,428 | $6,989 | $5,629 | $5,149 | $4,762 | $4,777 | $4,473 | $4,265 | $5,031 | $5,058 |
| P/E (TTM) at period end | 33.09× | 28.97× | 33.03× | 15.66× | 14.23× | 63.79× | – | 5.82× | 15.32× | – | – | – | 14.23× | 10.67× | 7.64× | 12.87× | 13.15× | – | 12.62× | 7.31× | 9.75× | 34.44× | 36.14× | 14.74× | 17.07× | 17.12× | 25.32× | 11.90× | 12.65× | 25.63× | 22.67× | 38.72× | 95.58× | 35.12× | 46.23× | 45.37× | 42.16× | 53.67× | 116.48× |
| P/S (TTM) at period end | 2.81× | 2.15× | 2.67× | 2.38× | 2.68× | 2.69× | 1.34× | 0.81× | 1.70× | 1.31× | 0.54× | 1.21× | 1.96× | 1.80× | 1.67× | 2.90× | 2.44× | 0.48× | 2.05× | 1.84× | 2.32× | 2.94× | 2.97× | 1.27× | 1.05× | 0.71× | 1.83× | 1.04× | 1.55× | 3.04× | 3.13× | 4.16× | 5.24× | 6.39× | 9.51× | 9.68× | 11.31× | 15.09× | 26.61× |
| P/B at period end | 3.86× | 3.11× | 3.66× | 3.49× | 4.38× | 3.76× | 2.07× | 1.55× | 3.49× | 3.20× | 1.00× | 1.33× | 1.81× | 1.85× | 2.23× | 4.40× | 3.64× | 1.62× | 1.92× | 4.35× | 5.26× | 5.99× | 8.46× | 9.10× | 18.47× | 2.57× | 5.05× | 3.03× | 3.98× | 4.93× | 4.16× | 3.37× | 4.11× | 7.06× | 25.78× | 20.11× | 28.95× | 36.11× | 52.12× |
| EV / EBITDA (TTM) | 10.47× | 7.88× | 9.26× | 7.34× | 6.95× | 13.36× | 14.17× | 4.63× | 7.36× | – | – | 13.22× | 8.00× | 5.17× | 3.59× | 5.64× | 5.19× | – | 5.34× | 3.43× | 4.27× | 10.33× | 7.96× | 5.03× | 5.26× | 4.63× | 6.59× | 5.20× | 6.31× | 9.15× | 9.75× | 17.44× | 23.10× | 13.92× | 22.12× | 18.64× | 18.69× | – | – |
| EV / Sales (TTM) | 3.54× | 2.82× | 3.36× | 2.92× | 3.15× | 3.73× | 2.46× | 1.62× | 2.42× | 2.32× | 2.21× | 2.36× | 3.15× | 2.01× | 1.75× | 3.00× | 2.91× | 0.90× | 2.46× | 1.84× | 2.49× | 3.62× | 3.85× | 2.40× | 2.37× | 1.93× | 3.06× | 2.52× | 2.77× | 3.90× | 3.81× | 4.64× | 5.56× | 6.67× | 10.22× | 10.30× | 11.59× | 15.02× | 26.62× |
| Returns | |||||||||||||||||||||||||||||||||||||||
| Return on equity | 11.7% | 10.7% | 11.1% | 22.3% | 30.8% | 5.9% | (2.6%) | 26.6% | 22.8% | (68.6%) | (156.3%) | (7.2%) | 12.7% | 17.3% | 29.2% | 34.2% | 27.7% | (196.4%) | 15.2% | 59.6% | 54.0% | 17.4% | 23.4% | 61.7% | 108.2% | 15.0% | 19.9% | 25.5% | 31.5% | 19.2% | 18.4% | 8.7% | 4.3% | 20.1% | 55.8% | 44.3% | 68.7% | 67.3% | 44.7% |
| Return on invested capital | 11.0% | 12.6% | 11.8% | 16.8% | 23.7% | 4.6% | – | 14.3% | 12.9% | (13.0%) | (36.1%) | (0.7%) | 7.6% | 19.8% | 34.4% | 40.6% | 25.2% | (72.7%) | 15.9% | 67.8% | 46.9% | 9.4% | 12.7% | 10.7% | 9.3% | 5.7% | 8.0% | 8.5% | 10.6% | 10.9% | 11.7% | 6.1% | 5.0% | 18.2% | 24.4% | 22.1% | 42.9% | 88.9% | 49.5% |
| Dividend yield | 1.2% | 1.6% | 1.4% | 1.6% | 0.5% | 0.2% | 1.5% | 1.4% | 0.0% | 0.0% | 7.7% | 5.4% | 6.0% | 3.5% | 4.1% | 1.6% | – | 7.4% | 1.2% | 8.6% | 4.7% | 2.9% | 1.2% | 1.5% | – | 7.9% | 1.5% | 4.6% | 8.2% | 4.7% | 4.0% | 3.4% | – | – | 2.3% | 2.8% | 2.3% | – | – |
| Financial health | |||||||||||||||||||||||||||||||||||||||
| Current ratio | 2.29× | 2.42× | 2.42× | 2.46× | 2.52× | 2.72× | 2.47× | 3.14× | 2.16× | 2.45× | 1.73× | 1.75× | 2.09× | 3.08× | 3.42× | 2.62× | 2.48× | 1.66× | 1.53× | 2.21× | 1.48× | 2.09× | 1.74× | 1.19× | 0.87× | 0.90× | 1.10× | 1.05× | 0.97× | 1.11× | 1.24× | 1.40× | 1.49× | 3.92× | 12.24× | 2.32× | 2.18× | 2.21× | 2.58× |
| Debt / equity | 0.50× | 0.51× | 0.56× | 0.68× | 0.68× | 0.95× | 1.06× | 1.14× | 1.66× | 2.65× | 2.60× | 1.03× | 0.99× | 0.20× | 0.23× | 0.38× | 0.70× | 1.27× | 0.40× | 0.27× | 0.68× | 1.68× | 2.87× | 7.64× | 22.39× | 4.27× | 3.14× | 4.07× | 3.07× | 1.33× | 0.84× | 0.37× | 0.22× | 0.85× | 2.30× | 1.46× | 0.97× | 0.29× | 0.41× |
| Effective tax rate | 34.9% | 36.5% | 37.8% | 33.8% | 30.0% | 52.5% | 166.7% | 25.5% | 30.4% | (10.7%) | 13.8% | (28.1%) | 30.5% | 27.5% | 35.0% | 35.0% | 39.7% | 21.4% | 39.3% | 42.5% | 44.9% | 57.6% | 57.9% | 59.4% | 56.6% | 67.5% | 58.9% | 52.6% | 48.6% | 52.2% | 48.0% | 48.7% | 52.7% | 44.4% | 30.9% | 48.0% | 47.7% | 48.5% | 36.1% |
| Share count | |||||||||||||||||||||||||||||||||||||||
| Diluted shares outstanding | 1,443 | 1,445 | 1,443 | 1,451 | 1,482 | 1,461 | 1,451 | 1,458 | 1,454 | 1,318 | 1,082 | 1,039 | 1,006 | 954 | 955 | 949 | 938 | 763 | 794 | 442 | 441 | 370 | 318 | 293 | 290 | 309 | 329 | 351 | 393 | 392 | 409 | 412 | 396 | 372 | 363 | 343 | 340 | 413 | 413 |
| 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Revenue and gross profit | ||||||||||||||||||||||||||||||||||||||||
| Revenue | $25,868 | $25,915 | $25,455 | $22,855 | $22,780 | $22,845 | $14,198 | $14,402 | $18,628 | $16,403 | $14,830 | $14,607 | $20,001 | $19,331 | $18,010 | $20,880 | $18,982 | $13,638 | $19,258 | $16,999 | $5,790 | $4,179 | $2,372 | $2,212 | $1,910 | $1,839 | $1,869 | $1,887 | $1,757 | $2,001 | $1,905 | $1,834 | $1,212 | $926 | $714 | $468 | $434 | $368 | $335 | $190 |
| Cost of revenue | ($18,868) | ($18,618) | ($17,795) | ($15,695) | ($15,089) | ($14,030) | ($11,655) | ($13,125) | ($13,466) | ($11,980) | ($17,534) | ($27,415) | ($18,494) | ($13,632) | ($11,561) | ($10,920) | ($9,371) | ($8,138) | ($13,235) | ($9,854) | ($2,765) | ($1,898) | ($1,665) | ($1,078) | ($942) | ($953) | ($1,020) | ($940) | ($818) | ($1,026) | ($952) | ($932) | ($781) | ($567) | ($292) | ($204) | ($160) | ($118) | ($99) | ($80) |
| Gross profit | $7,000 | $7,297 | $7,660 | $7,160 | $7,691 | $8,815 | $2,543 | $1,277 | $5,162 | $4,423 | ($2,704) | ($12,808) | $1,507 | $5,699 | $6,449 | $9,960 | $9,611 | $5,500 | $6,023 | $7,145 | $3,026 | $2,281 | $707 | $1,134 | $969 | $886 | $849 | $947 | $940 | $975 | $953 | $902 | $432 | $359 | $423 | $263 | $274 | $249 | $236 | $110 |
| Operating expenses | ||||||||||||||||||||||||||||||||||||||||
| Research and development | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | ($271) | – | ($90) | ($292) | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Selling, general and administrative | ($561) | ($545) | ($513) | ($479) | ($420) | ($383) | ($370) | ($394) | ($422) | ($477) | ($597) | ($558) | ($580) | ($645) | ($431) | ($415) | ($381) | ($321) | ($269) | ($466) | ($157) | ($104) | ($90) | ($80) | ($68) | ($59) | ($71) | ($71) | ($88) | ($97) | ($141) | ($185) | ($109) | ($136) | ($81) | ($47) | ($34) | ($21) | ($16) | ($10) |
| Total operating expenses | ($77) | ($779) | ($796) | ($935) | ($654) | ($449) | ($106) | ($186) | ($408) | ($733) | ($25) | ($704) | ($1,805) | ($879) | ($635) | ($820) | ($543) | $1,003 | ($18,733) | ($590) | ($157) | ($104) | ($90) | ($311) | ($329) | ($343) | ($355) | ($364) | ($365) | ($310) | ($315) | ($309) | ($184) | ($204) | ($146) | ($86) | ($70) | ($46) | ($36) | ($33) |
| Total costs and expenses | ($18,945) | ($19,397) | ($18,591) | ($16,630) | ($15,743) | ($14,479) | ($11,761) | ($13,311) | ($13,874) | ($12,713) | ($17,559) | ($28,119) | ($20,299) | ($14,511) | ($12,196) | ($11,740) | ($9,914) | ($7,135) | ($31,968) | ($10,444) | ($2,922) | ($2,002) | ($1,755) | ($1,389) | ($1,270) | ($1,296) | ($1,374) | ($1,304) | ($1,183) | ($1,337) | ($1,267) | ($1,242) | ($965) | ($771) | ($438) | ($290) | ($230) | ($164) | ($135) | ($113) |
| Operating income | $6,923 | $6,518 | $6,864 | $6,225 | $7,037 | $8,366 | $2,437 | $1,091 | $4,754 | $3,690 | ($2,729) | ($13,512) | ($298) | $4,820 | $5,814 | $9,140 | $9,068 | $6,503 | ($12,710) | $6,555 | $2,869 | $2,177 | $617 | $823 | $640 | $543 | $494 | $583 | $574 | $664 | $638 | $592 | $248 | $155 | $276 | $178 | $204 | $204 | $200 | $77 |
| Earnings | ||||||||||||||||||||||||||||||||||||||||
| EBITDA | $9,070 | $8,762 | $9,105 | $8,293 | $9,056 | $10,364 | $3,965 | $2,503 | $6,508 | $5,404 | ($119) | ($10,015) | $3,565 | $7,617 | $6,993 | $10,162 | $10,104 | $7,640 | ($10,839) | $7,819 | $3,102 | $2,437 | $831 | $1,070 | $913 | $827 | $778 | $876 | $852 | $878 | $812 | $717 | $323 | $223 | $342 | $216 | $240 | $228 | – | – |
| Interest income | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | $46 | $82 | $141 | $31 | $17 | $6 | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Interest expense | ($426) | ($369) | ($319) | ($515) | ($560) | ($602) | ($598) | ($620) | ($945) | ($801) | ($755) | ($617) | ($606) | ($518) | ($186) | ($312) | ($462) | ($586) | ($584) | ($513) | ($76) | ($132) | ($148) | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – | – |
| Pre-tax income | $6,654 | $6,372 | $6,907 | $6,006 | $6,715 | $7,659 | $1,797 | $306 | $3,892 | $2,902 | ($3,472) | ($14,128) | ($800) | $4,390 | $5,487 | $8,818 | $8,512 | $5,816 | ($13,309) | $6,111 | $2,826 | $2,037 | $574 | $584 | $413 | $359 | $237 | $332 | $324 | $476 | $473 | $488 | $254 | $128 | $234 | $148 | $178 | $189 | $183 | $68 |
| Income tax expense | ($2,068) | ($2,221) | ($2,523) | ($2,270) | ($2,267) | ($2,299) | ($944) | ($510) | ($991) | ($883) | ($371) | $1,951 | ($225) | ($1,340) | ($1,510) | ($3,087) | ($2,983) | ($2,307) | $2,844 | ($2,400) | ($1,201) | ($915) | ($331) | ($338) | ($246) | ($203) | ($160) | ($196) | ($171) | ($231) | ($247) | ($234) | ($123) | ($68) | ($104) | ($46) | ($86) | ($90) | ($89) | ($24) |
| Net income | $2,945 | $2,204 | $1,889 | $1,848 | $3,468 | $4,306 | $599 | ($189) | $2,602 | $1,817 | ($4,025) | ($12,089) | ($745) | $3,441 | $3,041 | $5,747 | $5,544 | $3,534 | ($10,450) | $3,779 | $1,457 | $995 | $202 | $182 | $165 | $113 | $77 | $136 | $154 | $245 | $226 | $254 | $130 | $51 | $130 | $96 | $93 | $99 | $94 | $43 |
| Per share | ||||||||||||||||||||||||||||||||||||||||
| Diluted EPS (GAAP) | $2.03 | $1.52 | $1.30 | $1.28 | $2.39 | $2.90 | $0.41 | ($0.17) | $1.78 | $1.25 | ($3.16) | ($11.31) | ($1.26) | $2.64 | $3.19 | $4.78 | $4.57 | $2.93 | ($14.86) | $3.75 | $3.31 | $2.33 | $0.425 | $0.49 | $0.44 | $0.27 | $0.13 | $0.31 | $0.34 | $0.53 | $0.45 | $0.49 | $0.19 | $0.055 | $0.33 | $0.27 | $0.27 | $0.29 | $0.23 | $0.11 |
| Basic EPS (GAAP) | $2.03 | $1.53 | $1.31 | $1.28 | $2.40 | $2.93 | $0.41 | ($0.17) | $1.79 | $1.25 | ($3.16) | ($11.31) | ($1.26) | $2.65 | $3.20 | $4.81 | $4.67 | $3.05 | ($14.86) | $4.06 | $3.66 | $2.59 | $0.43 | $0.50 | $0.44 | $0.27 | $0.13 | $0.31 | $0.34 | $0.53 | $0.45 | $0.49 | $0.19 | $0.055 | $0.33 | $0.27 | $0.27 | $0.29 | $0.23 | $0.11 |
| Basic shares outstanding | 1,439 | 1,437 | 1,438 | 1,434 | 1,441 | 1,466 | 1,453 | 1,451 | 1,449 | 1,447 | 1,318 | 1,082 | 1,039 | 1,002 | 949 | 947 | 915 | 829 | 763 | 682 | 382 | 361 | 365 | 312 | 289 | 288 | 308 | 327 | 351 | 393 | 388 | 409 | 412 | 396 | 372 | 363 | 343 | 340 | 413 | 413 |
| Margins | ||||||||||||||||||||||||||||||||||||||||
| Gross margin | 27.1% | 28.2% | 30.1% | 31.3% | 33.8% | 38.6% | 17.9% | 8.9% | 27.7% | 27.0% | (18.2%) | (87.7%) | 7.5% | 29.5% | 35.8% | 47.7% | 50.6% | 40.3% | 31.3% | 42.0% | 52.3% | 54.6% | 29.8% | 51.3% | 50.7% | 48.2% | 45.4% | 50.2% | 53.5% | 48.7% | 50.0% | 49.2% | 35.6% | 38.8% | 59.2% | 56.3% | 63.1% | 67.8% | 70.6% | 58.1% |
| Operating margin | 26.8% | 25.2% | 27.0% | 27.2% | 30.9% | 36.6% | 17.2% | 7.6% | 25.5% | 22.5% | (18.4%) | (92.5%) | (1.5%) | 24.9% | 32.3% | 43.8% | 47.8% | 47.7% | (66.0%) | 38.6% | 49.5% | 52.1% | 26.0% | 37.2% | 33.5% | 29.5% | 26.5% | 30.9% | 32.7% | 33.2% | 33.5% | 32.3% | 20.4% | 16.7% | 38.7% | 38.0% | 47.1% | 55.3% | 59.7% | 40.6% |
| Net margin | 11.4% | 8.5% | 7.4% | 8.1% | 15.2% | 18.8% | 4.2% | (1.3%) | 14.0% | 11.1% | (27.1%) | (82.8%) | (3.7%) | 17.8% | 16.9% | 27.5% | 29.2% | 25.9% | (54.3%) | 22.2% | 25.2% | 23.8% | 8.5% | 8.2% | 8.6% | 6.1% | 4.1% | 7.2% | 8.8% | 12.2% | 11.9% | 13.8% | 10.7% | 5.5% | 18.2% | 20.6% | 21.3% | 26.8% | 28.1% | 22.8% |