|
Concept
|
2025 | 2024 | 2023 | 2022 | 2021 |
|---|---|---|---|---|---|
| Revenue |
$558.3M
9.77%
YoY
|
$508.6M
-2.78%
YoY
|
$523.1M
5.99%
YoY
|
$493.6M
11.25%
YoY
|
$443.7M
9.52%
YoY
|
| Cost Of Revenue |
$385.7M
25.37%
YoY
|
$307.6M
-17.96%
YoY
|
$375.0M
0.27%
YoY
|
$374.0M
11.57%
YoY
|
$335.2M
N/A
|
| Gross Profit |
$172.6M
-14.11%
YoY
|
$200.9M
35.65%
YoY
|
$148.1M
24.6%
YoY
|
$118.9M
9.97%
YoY
|
$108.1M
N/A
|
| Selling, General & Admin |
$108.7M
16.74%
YoY
|
$93.14M
5.05%
YoY
|
$88.66M
-75.16%
YoY
|
$356.9M
-3.59%
YoY
|
$370.2M
6.47%
YoY
|
| Research & Development |
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Depreciation & Amortization |
$17.23M
-11.45%
YoY
|
$19.46M
2.51%
YoY
|
$18.99M
-44.45%
YoY
|
$34.18M
21.22%
YoY
|
$28.20M
15.23%
YoY
|
| Operating Expenses |
$108.7M
16.74%
YoY
|
$93.14M
5.05%
YoY
|
$88.66M
-80.98%
YoY
|
$466.1M
11.18%
YoY
|
$419.2M
8.72%
YoY
|
| Operating Profit |
$46.61M
18.22%
YoY
|
$39.43M
-2.59%
YoY
|
$40.48M
96.26%
YoY
|
$20.63M
21.0%
YoY
|
$17.05M
N/A
|
| Interest Expense |
-$679.0K
-143.61%
YoY
|
$1.557M
-1124.34%
YoY
|
-$152.0K
-97.66%
YoY
|
-$6.487M
-65.06%
YoY
|
-$18.57M
108.61%
YoY
|
| Other Income/Expense, Net |
N/A
|
N/A
|
N/A
|
-$255.0K
27.5%
YoY
|
-$200.0K
-60.0%
YoY
|
| Pretax Income |
$45.93M
12.07%
YoY
|
$40.99M
1.64%
YoY
|
$40.33M
92.0%
YoY
|
$21.00M
340.78%
YoY
|
$4.765M
-52.82%
YoY
|
| Income Tax |
$9.068M
23.69%
YoY
|
$7.331M
-16.16%
YoY
|
$8.744M
-540.06%
YoY
|
-$1.987M
-203.6%
YoY
|
$1.918M
-16.61%
YoY
|
| Net Earnings |
$36.86M
9.53%
YoY
|
$33.66M
6.56%
YoY
|
$31.58M
37.37%
YoY
|
$22.99M
707.52%
YoY
|
$2.847M
-63.5%
YoY
|
| Basic Earnings Per Share |
$2.51
32.11%
YoY
|
$1.90
9.2%
YoY
|
$1.74
47.46%
YoY
|
$1.18
59.46%
YoY
|
$0.74
N/A
|
| Diluted Earnings Per Share |
$2.36
28.26%
YoY
|
$1.84
10.18%
YoY
|
$1.67
-100.0%
YoY
|
$1.229M
693.87%
YoY
|
$154.9K
-65.26%
YoY
|
| COMMON SHARES |
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Basic Shares Outstanding |
14.68M shares
-17.09%
YoY
|
17.70M shares
-2.73%
YoY
|
18.20M shares
-0.18%
YoY
|
18.23M shares
3.3%
YoY
|
17.65M shares
N/A
|
| Diluted Shares Outstanding |
15.73M shares
-13.86%
YoY
|
18.26M shares
-3.38%
YoY
|
18.89M shares
0.9%
YoY
|
18.72M shares
1.99%
YoY
|
18.36M shares
N/A
|
|
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 |
$164.4M
16.82%
YoY
|
$164.2M
16.73%
YoY
|
$151.2M
16.55%
YoY
|
$147.1M
18.15%
YoY
|
$140.7M
10.99%
YoY
|
$140.7M
6.07%
YoY
|
$129.7M
4.1%
YoY
|
$124.5M
0.08%
YoY
|
$126.8M
-3.65%
YoY
|
$132.6M
-4.85%
YoY
|
$124.6M
-2.55%
YoY
|
$124.4M
0.59%
YoY
|
$131.6M
1.93%
YoY
|
$139.4M
5.45%
YoY
|
$127.9M
17.78%
YoY
|
$123.7M
13.62%
YoY
|
$129.1M
18.67%
YoY
|
$132.2M
12.78%
YoY
|
$108.6M
-0.21%
YoY
|
| Cost Of Revenue |
$115.6M
20.41%
YoY
|
$116.6M
18.09%
YoY
|
$106.6M
18.36%
YoY
|
$100.9M
18.15%
YoY
|
$96.02M
10.26%
YoY
|
$98.76M
3.0%
YoY
|
$90.04M
2.09%
YoY
|
$85.37M
-2.27%
YoY
|
$87.08M
-69.72%
YoY
|
$95.88M
N/A
|
$88.20M
-8.32%
YoY
|
$87.36M
N/A
|
$287.6M
N/A
|
N/A
|
$96.20M
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Gross Profit |
$48.79M
9.11%
YoY
|
$47.59M
13.53%
YoY
|
$44.60M
12.42%
YoY
|
$46.27M
18.15%
YoY
|
$44.72M
12.61%
YoY
|
$41.92M
14.07%
YoY
|
$39.68M
9.0%
YoY
|
$39.16M
5.62%
YoY
|
$39.71M
-64.24%
YoY
|
$36.75M
N/A
|
$36.40M
14.83%
YoY
|
$37.08M
N/A
|
$111.1M
N/A
|
N/A
|
$31.70M
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Selling, General & Admin |
$27.47M
1.5%
YoY
|
$27.56M
7.19%
YoY
|
$26.53M
1.18%
YoY
|
$27.73M
30.14%
YoY
|
$27.06M
14.84%
YoY
|
$25.71M
3.42%
YoY
|
$26.22M
13.78%
YoY
|
$21.31M
-10.17%
YoY
|
$23.57M
-73.68%
YoY
|
$24.86M
-74.23%
YoY
|
$23.04M
-74.79%
YoY
|
$23.72M
-73.37%
YoY
|
$89.52M
-3.45%
YoY
|
$96.46M
1.41%
YoY
|
$91.39M
14.25%
YoY
|
$89.06M
16.15%
YoY
|
$92.72M
22.49%
YoY
|
$95.12M
14.61%
YoY
|
$79.99M
1.9%
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 |
$5.170M
19.43%
YoY
|
$4.750M
10.83%
YoY
|
$4.378M
0.21%
YoY
|
$4.248M
-7.81%
YoY
|
$4.329M
-11.02%
YoY
|
$4.286M
-13.34%
YoY
|
$4.369M
-13.35%
YoY
|
$4.608M
-164.4%
YoY
|
$4.865M
-44.08%
YoY
|
$4.946M
-43.51%
YoY
|
$5.042M
-41.95%
YoY
|
-$7.155M
-176.84%
YoY
|
$8.700M
1.69%
YoY
|
$8.755M
0.99%
YoY
|
$8.685M
13.63%
YoY
|
$9.312M
23.88%
YoY
|
$8.555M
17.84%
YoY
|
$8.669M
24.2%
YoY
|
$7.643M
18.68%
YoY
|
| Operating Expenses |
$27.47M
1.5%
YoY
|
$27.56M
7.19%
YoY
|
$26.53M
1.18%
YoY
|
$31.98M
23.39%
YoY
|
$27.06M
14.84%
YoY
|
$25.71M
3.42%
YoY
|
$26.22M
13.78%
YoY
|
$25.91M
-9.92%
YoY
|
$23.57M
-79.86%
YoY
|
$24.86M
-80.34%
YoY
|
$23.04M
-80.55%
YoY
|
$28.77M
-75.27%
YoY
|
$117.0M
-2.38%
YoY
|
$126.4M
1.73%
YoY
|
$118.4M
12.11%
YoY
|
$116.3M
12.56%
YoY
|
$119.8M
17.49%
YoY
|
$124.3M
12.14%
YoY
|
$105.7M
-3.69%
YoY
|
| Operating Profit |
$16.16M
21.21%
YoY
|
$15.29M
28.16%
YoY
|
$13.70M
50.67%
YoY
|
$14.29M
7.91%
YoY
|
$13.33M
18.14%
YoY
|
$11.93M
71.7%
YoY
|
$9.092M
9.13%
YoY
|
$13.24M
59.45%
YoY
|
$11.28M
-13.55%
YoY
|
$6.947M
-39.33%
YoY
|
$8.331M
8.62%
YoY
|
$8.306M
N/A
|
$13.05M
N/A
|
$11.45M
N/A
|
$7.670M
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Interest Expense |
-$187.0K
-49.73%
YoY
|
-$189.0K
-38.83%
YoY
|
-$187.0K
-144.42%
YoY
|
-$419.0K
-214.17%
YoY
|
-$372.0K
-221.17%
YoY
|
-$309.0K
-177.06%
YoY
|
$421.0K
-15.8%
YoY
|
$367.0K
3570.0%
YoY
|
$307.0K
-130.73%
YoY
|
$401.0K
-104.43%
YoY
|
$500.0K
-112.39%
YoY
|
$10.00K
-100.29%
YoY
|
-$999.0K
-82.01%
YoY
|
-$9.056M
-582.47%
YoY
|
-$4.034M
-684.64%
YoY
|
-$3.500M
110.21%
YoY
|
-$5.554M
-17.1%
YoY
|
$1.877M
-178.21%
YoY
|
$690.0K
-131.36%
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 |
$15.97M
23.25%
YoY
|
$15.10M
29.94%
YoY
|
$13.51M
42.04%
YoY
|
$11.84M
-10.52%
YoY
|
$12.96M
11.8%
YoY
|
$11.62M
58.12%
YoY
|
$9.513M
7.94%
YoY
|
$13.24M
59.16%
YoY
|
$11.59M
-14.83%
YoY
|
$7.348M
86.97%
YoY
|
$8.813M
63.32%
YoY
|
$8.316M
114.39%
YoY
|
$13.61M
266.57%
YoY
|
$3.930M
-59.92%
YoY
|
$5.396M
49.6%
YoY
|
$3.879M
0.41%
YoY
|
$3.712M
3612.0%
YoY
|
$9.805M
145.13%
YoY
|
$3.607M
-212.72%
YoY
|
| Income Tax |
$2.600M
4.5%
YoY
|
$2.900M
23.35%
YoY
|
$1.500M
-25.0%
YoY
|
$2.247M
-33.74%
YoY
|
$2.488M
91.38%
YoY
|
$2.351M
80.85%
YoY
|
$2.000M
42.86%
YoY
|
$3.391M
-10.9%
YoY
|
$1.300M
-31.83%
YoY
|
$1.300M
-37.05%
YoY
|
$1.400M
28.44%
YoY
|
$3.806M
-468.09%
YoY
|
$1.907M
-166.08%
YoY
|
$2.065M
54.1%
YoY
|
$1.090M
83.81%
YoY
|
-$1.034M
530.49%
YoY
|
-$2.886M
-1062.0%
YoY
|
$1.340M
-10.67%
YoY
|
$593.0K
97.67%
YoY
|
| Net Earnings |
$13.33M
27.28%
YoY
|
$12.22M
31.82%
YoY
|
$12.04M
59.9%
YoY
|
$9.596M
-2.53%
YoY
|
$10.47M
1.54%
YoY
|
$9.268M
52.56%
YoY
|
$7.531M
1.43%
YoY
|
$9.845M
118.29%
YoY
|
$10.31M
-11.88%
YoY
|
$6.075M
225.74%
YoY
|
$7.425M
72.43%
YoY
|
$4.510M
-8.2%
YoY
|
$11.70M
77.33%
YoY
|
$1.865M
-77.97%
YoY
|
$4.306M
42.87%
YoY
|
$4.913M
22.0%
YoY
|
$6.598M
-3399.0%
YoY
|
$8.465M
238.6%
YoY
|
$3.014M
-188.65%
YoY
|
| Basic Earnings Per Share |
$0.99
25.32%
YoY
|
$0.91
49.18%
YoY
|
$0.90
100.0%
YoY
|
N/A
|
$0.79
33.9%
YoY
|
$0.61
79.41%
YoY
|
$0.45
9.76%
YoY
|
N/A
|
$0.59
-4.84%
YoY
|
$0.34
-33.33%
YoY
|
$0.41
13.89%
YoY
|
$0.25
N/A
|
$0.62
N/A
|
$0.51
N/A
|
$0.36
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Diluted Earnings Per Share |
$0.89
21.92%
YoY
|
$0.83
45.61%
YoY
|
$0.82
90.7%
YoY
|
$0.66
17.92%
YoY
|
$0.73
28.07%
YoY
|
$0.57
72.73%
YoY
|
$0.43
10.26%
YoY
|
$0.56
132.47%
YoY
|
$0.57
-7.2%
YoY
|
$0.33
233.7%
YoY
|
$0.39
-100.0%
YoY
|
$0.24
-100.0%
YoY
|
$0.61
-100.0%
YoY
|
$0.10
-100.0%
YoY
|
$231.0K
44.46%
YoY
|
$264.8K
38.82%
YoY
|
$353.1K
-3295.57%
YoY
|
$449.9K
236.53%
YoY
|
$159.9K
-177.13%
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 |
13.41M shares
1.62%
YoY
|
13.47M shares
-19.67%
YoY
|
13.32M shares
-20.76%
YoY
|
13.37M shares
-22.32%
YoY
|
13.19M shares
-24.93%
YoY
|
16.76M shares
-6.54%
YoY
|
16.80M shares
-8.2%
YoY
|
17.21M shares
N/A
|
17.57M shares
-3.61%
YoY
|
17.94M shares
-1.16%
YoY
|
18.30M shares
0.9%
YoY
|
N/A
|
18.23M shares
N/A
|
18.15M shares
N/A
|
18.14M shares
N/A
|
18.25M
N/A
|
N/A
|
N/A
|
N/A
|
| Diluted Shares Outstanding |
14.99M shares
4.1%
YoY
|
14.74M shares
-10.45%
YoY
|
14.61M shares
-16.47%
YoY
|
N/A
|
14.40M shares
-20.14%
YoY
|
16.46M shares
-10.76%
YoY
|
17.49M shares
-7.45%
YoY
|
N/A
|
18.04M shares
-5.4%
YoY
|
18.44M shares
-2.23%
YoY
|
18.90M shares
1.38%
YoY
|
N/A
|
19.07M shares
N/A
|
18.86M shares
N/A
|
18.64M shares
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
Loading...