|
Concept
|
2025 | 2024 | 2023 | 2022 | 2021 |
|---|---|---|---|---|---|
| Revenue |
$476.2M
13.27%
YoY
|
$420.4M
6.08%
YoY
|
$396.3M
22.32%
YoY
|
$324.0M
24.97%
YoY
|
$259.3M
63.14%
YoY
|
| Cost Of Revenue |
$275.2M
13.22%
YoY
|
$243.0M
3.92%
YoY
|
$233.9M
19.03%
YoY
|
$196.5M
17.95%
YoY
|
$166.6M
58.81%
YoY
|
| Gross Profit |
$201.0M
13.34%
YoY
|
$177.4M
9.2%
YoY
|
$162.4M
27.37%
YoY
|
$127.5M
37.59%
YoY
|
$92.68M
71.54%
YoY
|
| Selling, General & Admin |
$138.4M
17.05%
YoY
|
$118.2M
23.86%
YoY
|
$95.44M
29.72%
YoY
|
$73.58M
39.98%
YoY
|
$52.56M
71.46%
YoY
|
| Research & Development |
$2.900M
0.0%
YoY
|
$2.900M
0.0%
YoY
|
$2.900M
625.0%
YoY
|
$400.0K
8.1%
YoY
|
$370.0K
157.73%
YoY
|
| Depreciation & Amortization |
$6.300M
8.62%
YoY
|
$5.800M
28.89%
YoY
|
$4.500M
32.35%
YoY
|
$3.400M
80.18%
YoY
|
$1.887M
48.11%
YoY
|
| Operating Expenses |
$138.4M
17.05%
YoY
|
$118.2M
23.86%
YoY
|
$95.44M
29.72%
YoY
|
$73.58M
39.98%
YoY
|
$52.56M
71.46%
YoY
|
| Operating Profit |
$62.65M
5.92%
YoY
|
$59.15M
-11.68%
YoY
|
$66.97M
24.17%
YoY
|
$53.94M
34.45%
YoY
|
$40.12M
71.65%
YoY
|
| Interest Expense |
$1.412M
-159.6%
YoY
|
-$2.369M
-289.82%
YoY
|
$1.248M
-11.49%
YoY
|
$1.410M
365.85%
YoY
|
$302.7K
21.32%
YoY
|
| Other Income/Expense, Net |
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Pretax Income |
$64.06M
12.83%
YoY
|
$56.78M
-14.01%
YoY
|
$66.03M
27.07%
YoY
|
$51.97M
31.76%
YoY
|
$39.44M
72.95%
YoY
|
| Income Tax |
$12.47M
10.48%
YoY
|
$11.29M
-14.68%
YoY
|
$13.23M
25.01%
YoY
|
$10.58M
34.43%
YoY
|
$7.873M
74.08%
YoY
|
| Net Earnings |
$51.23M
12.61%
YoY
|
$45.49M
-13.85%
YoY
|
$52.80M
27.59%
YoY
|
$41.38M
31.09%
YoY
|
$31.57M
72.67%
YoY
|
| Basic Earnings Per Share |
$1.85
12.12%
YoY
|
$1.65
-13.61%
YoY
|
$1.91
27.33%
YoY
|
$1.50
31.58%
YoY
|
$1.14
72.73%
YoY
|
| Diluted Earnings Per Share |
$1.85
12.12%
YoY
|
$1.65
-13.61%
YoY
|
$1.91
27.33%
YoY
|
$1.50
31.58%
YoY
|
$1.14
72.73%
YoY
|
| COMMON SHARES |
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Basic Shares Outstanding |
27.66M shares
0.07%
YoY
|
27.64M shares
0.06%
YoY
|
27.62M shares
0.03%
YoY
|
27.61M shares
0.01%
YoY
|
27.61M shares
0.0%
YoY
|
| Diluted Shares Outstanding |
27.68M shares
0.14%
YoY
|
27.64M shares
0.03%
YoY
|
27.63M shares
0.07%
YoY
|
27.62M shares
0.01%
YoY
|
27.61M shares
0.0%
YoY
|
|
Concept
|
2026 Q1 | 2025 Q4 | 2025 Q3 | 2025 Q2 | 2025 Q1 | 2024 Q4 | 2024 Q3 | 2024 Q2 | 2024 Q1 | 2023 Q4 | 2023 Q3 | 2023 Q2 | 2023 Q1 | 2022 Q4 | 2022 Q3 | 2022 Q2 | 2022 Q1 | 2021 Q4 | 2021 Q3 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Revenue |
$117.4M
13.05%
YoY
|
$122.3M
13.71%
YoY
|
$125.4M
11.13%
YoY
|
$124.7M
13.46%
YoY
|
$103.8M
15.21%
YoY
|
$107.5M
1.88%
YoY
|
$112.9M
9.91%
YoY
|
$109.9M
7.51%
YoY
|
$90.10M
4.96%
YoY
|
$105.5M
34.48%
YoY
|
$102.7M
14.39%
YoY
|
$102.2M
21.87%
YoY
|
$85.84M
19.45%
YoY
|
$78.48M
11.9%
YoY
|
$89.76M
30.98%
YoY
|
$83.89M
22.05%
YoY
|
$71.86M
38.56%
YoY
|
$70.13M
44.27%
YoY
|
$68.53M
48.58%
YoY
|
| Cost Of Revenue |
$66.12M
10.37%
YoY
|
$71.08M
11.38%
YoY
|
$72.99M
12.4%
YoY
|
$71.20M
14.74%
YoY
|
$59.91M
14.71%
YoY
|
$63.82M
-1.21%
YoY
|
$64.94M
6.19%
YoY
|
$62.05M
6.54%
YoY
|
$52.23M
4.7%
YoY
|
$64.61M
36.2%
YoY
|
$61.15M
13.25%
YoY
|
$58.24M
14.41%
YoY
|
$49.88M
12.99%
YoY
|
$47.44M
4.38%
YoY
|
$53.99M
22.5%
YoY
|
$50.91M
17.06%
YoY
|
$44.15M
31.47%
YoY
|
$45.44M
39.18%
YoY
|
$44.07M
46.46%
YoY
|
| Gross Profit |
$51.23M
16.71%
YoY
|
$51.18M
17.12%
YoY
|
$52.42M
9.41%
YoY
|
$53.52M
11.81%
YoY
|
$43.90M
15.89%
YoY
|
$43.70M
6.77%
YoY
|
$47.92M
15.38%
YoY
|
$47.87M
8.8%
YoY
|
$37.88M
5.33%
YoY
|
$40.93M
31.84%
YoY
|
$41.53M
16.11%
YoY
|
$43.99M
33.38%
YoY
|
$35.96M
29.74%
YoY
|
$31.05M
25.75%
YoY
|
$35.77M
46.25%
YoY
|
$32.98M
30.64%
YoY
|
$27.72M
51.57%
YoY
|
$24.69M
54.69%
YoY
|
$24.45M
52.56%
YoY
|
| Selling, General & Admin |
$38.22M
16.61%
YoY
|
$35.70M
13.86%
YoY
|
$35.67M
20.81%
YoY
|
$34.22M
19.32%
YoY
|
$32.78M
14.41%
YoY
|
$31.36M
17.41%
YoY
|
$29.53M
23.55%
YoY
|
$28.68M
20.48%
YoY
|
$28.65M
36.23%
YoY
|
$26.71M
32.21%
YoY
|
$23.90M
29.48%
YoY
|
$23.80M
38.12%
YoY
|
$21.03M
18.94%
YoY
|
$20.20M
25.01%
YoY
|
$18.46M
31.03%
YoY
|
$17.23M
37.05%
YoY
|
$17.68M
81.54%
YoY
|
$16.16M
87.25%
YoY
|
$14.09M
84.97%
YoY
|
| Research & Development |
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Depreciation & Amortization |
$1.623M
8.2%
YoY
|
$3.799M
24.07%
YoY
|
$1.600M
6.67%
YoY
|
$1.600M
6.67%
YoY
|
$1.500M
15.38%
YoY
|
$3.062M
13.24%
YoY
|
$1.500M
25.0%
YoY
|
$1.500M
36.36%
YoY
|
$1.300M
30.0%
YoY
|
$2.704M
28.76%
YoY
|
$1.200M
33.33%
YoY
|
$1.100M
37.5%
YoY
|
$1.000M
32.21%
YoY
|
$2.100M
22.89%
YoY
|
$900.0K
97.46%
YoY
|
$800.0K
100.0%
YoY
|
$756.3K
97.43%
YoY
|
$1.709M
171.24%
YoY
|
$455.8K
39.97%
YoY
|
| Operating Expenses |
$38.22M
16.61%
YoY
|
$35.70M
13.86%
YoY
|
$35.67M
20.81%
YoY
|
$34.22M
19.32%
YoY
|
$32.78M
14.41%
YoY
|
$31.36M
17.41%
YoY
|
$29.53M
23.55%
YoY
|
$28.68M
20.48%
YoY
|
$28.65M
36.23%
YoY
|
$26.71M
32.21%
YoY
|
$23.90M
29.48%
YoY
|
$23.80M
38.12%
YoY
|
$21.03M
18.94%
YoY
|
$20.20M
25.01%
YoY
|
$18.46M
31.03%
YoY
|
$17.23M
37.05%
YoY
|
$17.68M
81.54%
YoY
|
$16.16M
87.25%
YoY
|
$14.09M
84.97%
YoY
|
| Operating Profit |
$13.01M
17.01%
YoY
|
$15.48M
25.39%
YoY
|
$16.75M
-8.9%
YoY
|
$19.30M
0.58%
YoY
|
$11.12M
20.49%
YoY
|
$12.35M
-13.21%
YoY
|
$18.39M
4.3%
YoY
|
$19.19M
-4.98%
YoY
|
$9.229M
-38.19%
YoY
|
$14.22M
31.16%
YoY
|
$17.63M
1.86%
YoY
|
$20.19M
28.2%
YoY
|
$14.93M
48.78%
YoY
|
$10.85M
27.16%
YoY
|
$17.31M
66.94%
YoY
|
$15.75M
24.28%
YoY
|
$10.04M
17.42%
YoY
|
$8.529M
16.36%
YoY
|
$10.37M
23.22%
YoY
|
| Interest Expense |
N/A
|
$331.0K
-127.79%
YoY
|
-$111.0K
-147.23%
YoY
|
$1.032M
-254.72%
YoY
|
$160.0K
-66.17%
YoY
|
-$1.191M
-380.9%
YoY
|
$235.0K
176.47%
YoY
|
-$667.0K
-297.34%
YoY
|
$473.0K
-9.56%
YoY
|
$424.0K
-305.83%
YoY
|
$85.00K
-78.26%
YoY
|
$338.0K
4.97%
YoY
|
$523.0K
138.02%
YoY
|
-$206.0K
-49.88%
YoY
|
$391.0K
742.07%
YoY
|
$322.0K
631.82%
YoY
|
$219.7K
316.79%
YoY
|
-$411.0K
-1470.07%
YoY
|
$46.43K
-32.08%
YoY
|
| Other Income/Expense, Net |
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Pretax Income |
$13.29M
17.79%
YoY
|
$15.81M
41.75%
YoY
|
$16.64M
-10.64%
YoY
|
$20.33M
9.78%
YoY
|
$11.28M
32.96%
YoY
|
$11.15M
-23.85%
YoY
|
$18.62M
8.61%
YoY
|
$18.52M
-6.57%
YoY
|
$8.484M
-41.15%
YoY
|
$14.65M
37.68%
YoY
|
$17.15M
3.64%
YoY
|
$19.82M
32.4%
YoY
|
$14.42M
46.95%
YoY
|
$10.64M
31.06%
YoY
|
$16.54M
62.64%
YoY
|
$14.97M
17.96%
YoY
|
$9.811M
15.99%
YoY
|
$8.118M
10.3%
YoY
|
$10.17M
21.9%
YoY
|
| Income Tax |
$2.782M
3.27%
YoY
|
$2.151M
-4.65%
YoY
|
$3.505M
-6.03%
YoY
|
$4.122M
18.24%
YoY
|
$2.694M
48.18%
YoY
|
$2.256M
-15.76%
YoY
|
$3.730M
6.88%
YoY
|
$3.486M
-14.56%
YoY
|
$1.818M
-39.08%
YoY
|
$2.678M
17.35%
YoY
|
$3.490M
8.18%
YoY
|
$4.080M
32.99%
YoY
|
$2.984M
48.61%
YoY
|
$2.282M
19.2%
YoY
|
$3.226M
75.21%
YoY
|
$3.068M
22.48%
YoY
|
$2.008M
24.58%
YoY
|
$1.914M
50.74%
YoY
|
$1.841M
6.04%
YoY
|
| Net Earnings |
$10.35M
20.49%
YoY
|
$13.41M
50.71%
YoY
|
$12.94M
-13.11%
YoY
|
$16.29M
8.36%
YoY
|
$8.586M
28.8%
YoY
|
$8.898M
-25.66%
YoY
|
$14.89M
9.05%
YoY
|
$15.03M
-4.5%
YoY
|
$6.666M
-41.7%
YoY
|
$11.97M
43.23%
YoY
|
$13.66M
2.54%
YoY
|
$15.74M
32.26%
YoY
|
$11.43M
46.52%
YoY
|
$8.357M
34.71%
YoY
|
$13.32M
59.87%
YoY
|
$11.90M
16.85%
YoY
|
$7.803M
13.96%
YoY
|
$6.203M
1.86%
YoY
|
$8.331M
26.07%
YoY
|
| Basic Earnings Per Share |
$0.37
19.35%
YoY
|
N/A
|
$0.47
-12.96%
YoY
|
$0.59
9.26%
YoY
|
$0.31
29.17%
YoY
|
N/A
|
$0.54
10.2%
YoY
|
$0.54
-5.26%
YoY
|
$0.24
-41.46%
YoY
|
N/A
|
$0.49
2.08%
YoY
|
$0.57
32.56%
YoY
|
$0.41
46.43%
YoY
|
N/A
|
$0.48
60.0%
YoY
|
$0.43
16.22%
YoY
|
$0.28
12.0%
YoY
|
N/A
|
$0.30
25.0%
YoY
|
| Diluted Earnings Per Share |
$0.37
19.35%
YoY
|
$0.48
49.72%
YoY
|
$0.47
-12.96%
YoY
|
$0.59
9.26%
YoY
|
$0.31
29.17%
YoY
|
$0.32
-25.71%
YoY
|
$0.54
10.2%
YoY
|
$0.54
-5.26%
YoY
|
$0.24
-41.46%
YoY
|
$0.43
43.16%
YoY
|
$0.49
2.08%
YoY
|
$0.57
32.56%
YoY
|
$0.41
46.43%
YoY
|
$0.30
-100.0%
YoY
|
$0.48
60.0%
YoY
|
$0.43
16.22%
YoY
|
$0.28
12.0%
YoY
|
$224.7K
1.85%
YoY
|
$0.30
25.0%
YoY
|
| COMMON SHARES |
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Basic Shares Outstanding |
27.60M shares
-0.17%
YoY
|
27.68M shares
0.11%
YoY
|
27.67M shares
0.12%
YoY
|
27.66M shares
0.11%
YoY
|
27.65M shares
0.08%
YoY
|
27.65M shares
0.07%
YoY
|
27.64M shares
0.06%
YoY
|
27.63M shares
0.06%
YoY
|
27.63M shares
0.05%
YoY
|
27.63M shares
0.05%
YoY
|
27.62M shares
0.02%
YoY
|
27.62M shares
0.02%
YoY
|
27.62M shares
0.01%
YoY
|
27.62M shares
0.01%
YoY
|
27.62M shares
0.01%
YoY
|
27.61M shares
0.0%
YoY
|
27.61M shares
0.0%
YoY
|
27.61M shares
0.0%
YoY
|
27.61M shares
0.0%
YoY
|
| Diluted Shares Outstanding |
27.67M shares
-0.04%
YoY
|
N/A
|
27.70M shares
0.21%
YoY
|
27.67M shares
0.13%
YoY
|
27.68M shares
0.14%
YoY
|
N/A
|
27.64M shares
0.0%
YoY
|
27.64M shares
0.02%
YoY
|
27.64M shares
0.04%
YoY
|
N/A
|
27.64M shares
0.09%
YoY
|
27.63M shares
0.07%
YoY
|
27.63M shares
0.05%
YoY
|
N/A
|
27.62M shares
0.02%
YoY
|
27.61M shares
0.0%
YoY
|
27.61M shares
0.0%
YoY
|
N/A
|
27.61M shares
0.0%
YoY
|
Loading...