|
Concept
|
2025 | 2024 | 2023 | 2022 | 2021 |
|---|---|---|---|---|---|
| Revenue |
$143.4M
6.36%
YoY
|
$134.9M
7.22%
YoY
|
$125.8M
14.44%
YoY
|
$109.9M
7.36%
YoY
|
$102.4M
5.13%
YoY
|
| Cost Of Revenue |
$63.14M
-2.04%
YoY
|
$64.46M
2.84%
YoY
|
$62.68M
32.39%
YoY
|
$47.34M
12.23%
YoY
|
$42.19M
9.21%
YoY
|
| Gross Profit |
$80.30M
14.05%
YoY
|
$70.40M
11.56%
YoY
|
$63.11M
0.86%
YoY
|
$62.57M
3.94%
YoY
|
$60.20M
2.45%
YoY
|
| Selling, General & Admin |
$67.46M
7.89%
YoY
|
$62.52M
7.74%
YoY
|
$58.03M
-0.52%
YoY
|
$58.34M
9.99%
YoY
|
$53.04M
18.24%
YoY
|
| Research & Development |
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Depreciation & Amortization |
$12.37M
7.53%
YoY
|
$11.51M
-0.09%
YoY
|
$11.52M
6.0%
YoY
|
$10.87M
4.85%
YoY
|
$10.36M
6.4%
YoY
|
| Operating Expenses |
$68.38M
7.66%
YoY
|
$63.51M
7.61%
YoY
|
$59.02M
-3.11%
YoY
|
$60.92M
6.17%
YoY
|
$57.38M
14.91%
YoY
|
| Operating Profit |
$11.92M
72.98%
YoY
|
$6.891M
68.57%
YoY
|
$4.088M
147.16%
YoY
|
$1.654M
-41.35%
YoY
|
$2.820M
-68.05%
YoY
|
| Interest Expense |
-$1.299M
-26.9%
YoY
|
-$1.777M
-181.89%
YoY
|
$2.170M
54.78%
YoY
|
$1.402M
1.82%
YoY
|
$1.377M
9.72%
YoY
|
| Other Income/Expense, Net |
$2.000K
-103.64%
YoY
|
-$55.00K
-17.91%
YoY
|
-$67.00K
-45.08%
YoY
|
-$122.0K
-34.41%
YoY
|
-$186.0K
541.38%
YoY
|
| Pretax Income |
$10.62M
109.98%
YoY
|
$5.059M
173.31%
YoY
|
$1.851M
1323.85%
YoY
|
$130.0K
-89.66%
YoY
|
$1.257M
-83.34%
YoY
|
| Income Tax |
$3.996M
47.24%
YoY
|
$2.714M
177.22%
YoY
|
$979.0K
774.11%
YoY
|
$112.0K
-168.71%
YoY
|
-$163.0K
-98.33%
YoY
|
| Net Earnings |
$6.627M
182.6%
YoY
|
$2.345M
168.92%
YoY
|
$872.0K
4744.44%
YoY
|
$18.00K
-98.73%
YoY
|
$1.420M
-91.81%
YoY
|
| Basic Earnings Per Share |
$0.32
190.91%
YoY
|
$0.11
175.0%
YoY
|
$0.04
N/A
|
$0.00
-100.0%
YoY
|
$0.07
-91.86%
YoY
|
| Diluted Earnings Per Share |
$0.31
181.82%
YoY
|
$0.11
175.0%
YoY
|
$0.04
N/A
|
$0.00
-100.0%
YoY
|
$0.06
-92.5%
YoY
|
| COMMON SHARES |
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Basic Shares Outstanding |
20.66M shares
-2.89%
YoY
|
21.27M shares
1.18%
YoY
|
21.02M shares
1.82%
YoY
|
20.65M shares
0.63%
YoY
|
20.52M shares
2.05%
YoY
|
| Diluted Shares Outstanding |
21.10M shares
-2.81%
YoY
|
21.71M shares
0.28%
YoY
|
21.65M shares
0.46%
YoY
|
21.55M shares
-2.28%
YoY
|
22.05M shares
1.53%
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 |
$33.68M
-2.97%
YoY
|
$36.23M
7.04%
YoY
|
$36.49M
3.31%
YoY
|
$36.00M
6.84%
YoY
|
$34.72M
8.5%
YoY
|
$33.85M
6.54%
YoY
|
$35.32M
10.69%
YoY
|
$33.70M
6.19%
YoY
|
$32.00M
5.35%
YoY
|
$31.77M
10.2%
YoY
|
$31.91M
16.97%
YoY
|
$31.74M
17.35%
YoY
|
$30.37M
13.48%
YoY
|
$28.83M
8.71%
YoY
|
$27.28M
2.68%
YoY
|
$27.04M
8.89%
YoY
|
$26.76M
9.4%
YoY
|
$26.52M
7.32%
YoY
|
$26.57M
5.74%
YoY
|
| Cost Of Revenue |
$14.00M
-9.95%
YoY
|
$15.80M
1.04%
YoY
|
$15.67M
-3.73%
YoY
|
$16.13M
-5.3%
YoY
|
$15.55M
0.18%
YoY
|
$15.63M
-7.45%
YoY
|
$16.28M
3.91%
YoY
|
$17.03M
11.36%
YoY
|
$15.52M
4.66%
YoY
|
$16.89M
32.51%
YoY
|
$15.66M
41.62%
YoY
|
$15.29M
25.96%
YoY
|
$14.83M
30.13%
YoY
|
$12.75M
13.74%
YoY
|
$11.06M
-2.19%
YoY
|
$12.14M
24.09%
YoY
|
$11.40M
15.26%
YoY
|
$11.21M
15.35%
YoY
|
$11.31M
13.05%
YoY
|
| Gross Profit |
$19.68M
2.69%
YoY
|
$20.44M
12.18%
YoY
|
$20.82M
9.32%
YoY
|
$19.87M
19.23%
YoY
|
$19.17M
16.35%
YoY
|
$18.22M
22.41%
YoY
|
$19.05M
17.23%
YoY
|
$16.67M
1.37%
YoY
|
$16.47M
6.01%
YoY
|
$14.88M
-7.48%
YoY
|
$16.25M
0.17%
YoY
|
$16.44M
10.34%
YoY
|
$15.54M
1.13%
YoY
|
$16.08M
5.03%
YoY
|
$16.22M
6.3%
YoY
|
$14.90M
-0.99%
YoY
|
$15.37M
5.43%
YoY
|
$15.31M
2.11%
YoY
|
$15.26M
0.9%
YoY
|
| Selling, General & Admin |
$17.88M
-2.28%
YoY
|
$16.51M
10.42%
YoY
|
$16.80M
8.13%
YoY
|
$15.85M
8.82%
YoY
|
$18.30M
7.21%
YoY
|
$14.95M
14.28%
YoY
|
$15.53M
7.34%
YoY
|
$14.57M
-2.98%
YoY
|
$17.07M
11.68%
YoY
|
$13.08M
-10.91%
YoY
|
$14.47M
-1.31%
YoY
|
$15.01M
7.06%
YoY
|
$15.29M
0.99%
YoY
|
$14.69M
17.37%
YoY
|
$14.66M
1.3%
YoY
|
$14.02M
5.47%
YoY
|
$15.14M
18.89%
YoY
|
$12.51M
-1.48%
YoY
|
$14.47M
34.23%
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 |
$3.044M
-0.91%
YoY
|
$3.349M
-2.1%
YoY
|
$3.284M
4.42%
YoY
|
$3.341M
10.15%
YoY
|
$3.072M
15.84%
YoY
|
$3.421M
8.81%
YoY
|
$3.145M
2.51%
YoY
|
$3.033M
-1.94%
YoY
|
$2.652M
-10.25%
YoY
|
$3.144M
1.29%
YoY
|
$3.068M
-10.81%
YoY
|
$3.093M
-9.03%
YoY
|
$2.955M
9.2%
YoY
|
$3.104M
-15.1%
YoY
|
$3.440M
-8.02%
YoY
|
$3.400M
-7.08%
YoY
|
$2.706M
7.08%
YoY
|
$3.656M
3.48%
YoY
|
$3.740M
5.06%
YoY
|
| Operating Expenses |
$18.09M
-2.46%
YoY
|
$16.72M
7.19%
YoY
|
$17.01M
7.79%
YoY
|
$16.10M
8.67%
YoY
|
$18.55M
7.1%
YoY
|
$15.60M
14.45%
YoY
|
$15.78M
8.46%
YoY
|
$14.81M
-2.51%
YoY
|
$17.32M
10.69%
YoY
|
$13.63M
-9.46%
YoY
|
$14.55M
-4.76%
YoY
|
$15.19M
3.4%
YoY
|
$15.65M
-1.54%
YoY
|
$15.05M
9.8%
YoY
|
$15.28M
-2.13%
YoY
|
$14.69M
2.37%
YoY
|
$15.89M
15.97%
YoY
|
$13.71M
-1.79%
YoY
|
$15.61M
31.51%
YoY
|
| Operating Profit |
$1.590M
157.28%
YoY
|
$3.714M
41.97%
YoY
|
$3.811M
16.72%
YoY
|
$3.777M
103.61%
YoY
|
$618.0K
-173.14%
YoY
|
$2.616M
109.28%
YoY
|
$3.265M
92.4%
YoY
|
$1.855M
48.64%
YoY
|
-$845.0K
689.72%
YoY
|
$1.250M
21.48%
YoY
|
$1.697M
79.96%
YoY
|
$1.248M
502.9%
YoY
|
-$107.0K
-79.62%
YoY
|
$1.029M
-35.77%
YoY
|
$943.0K
-368.66%
YoY
|
$207.0K
-70.26%
YoY
|
-$525.0K
-160.14%
YoY
|
$1.602M
54.78%
YoY
|
-$351.0K
-110.79%
YoY
|
| Interest Expense |
N/A
|
-$260.0K
-27.98%
YoY
|
-$330.0K
-30.67%
YoY
|
-$373.0K
-22.93%
YoY
|
-$336.0K
-173.68%
YoY
|
-$361.0K
-28.23%
YoY
|
-$476.0K
-184.55%
YoY
|
-$484.0K
-178.06%
YoY
|
$456.0K
-5.79%
YoY
|
-$503.0K
18.08%
YoY
|
$563.0K
46.23%
YoY
|
$620.0K
97.45%
YoY
|
$484.0K
74.73%
YoY
|
-$426.0K
-8.97%
YoY
|
$385.0K
42.59%
YoY
|
$314.0K
-0.95%
YoY
|
$277.0K
-13.98%
YoY
|
-$468.0K
97.47%
YoY
|
$270.0K
-4.59%
YoY
|
| Other Income/Expense, Net |
$82.00K
-382.76%
YoY
|
$43.00K
377.78%
YoY
|
-$54.00K
1250.0%
YoY
|
$42.00K
-166.67%
YoY
|
-$29.00K
-1066.67%
YoY
|
$9.000K
-145.0%
YoY
|
-$4.000K
-71.43%
YoY
|
-$63.00K
-3250.0%
YoY
|
$3.000K
-108.57%
YoY
|
-$20.00K
-62.26%
YoY
|
-$14.00K
27.27%
YoY
|
$2.000K
-106.67%
YoY
|
-$35.00K
25.0%
YoY
|
-$53.00K
47.22%
YoY
|
-$11.00K
-75.0%
YoY
|
-$30.00K
-18.92%
YoY
|
-$28.00K
-59.42%
YoY
|
-$36.00K
300.0%
YoY
|
-$44.00K
-650.0%
YoY
|
| Pretax Income |
$1.417M
460.08%
YoY
|
$3.497M
54.46%
YoY
|
$3.427M
22.39%
YoY
|
$3.446M
163.46%
YoY
|
$253.0K
-119.49%
YoY
|
$2.264M
211.42%
YoY
|
$2.800M
150.0%
YoY
|
$1.308M
107.62%
YoY
|
-$1.298M
107.35%
YoY
|
$727.0K
32.18%
YoY
|
$1.120M
104.75%
YoY
|
$630.0K
-559.85%
YoY
|
-$626.0K
-24.58%
YoY
|
$550.0K
-49.91%
YoY
|
$547.0K
-182.26%
YoY
|
-$137.0K
-140.06%
YoY
|
-$830.0K
-272.2%
YoY
|
$1.098M
39.16%
YoY
|
-$665.0K
-122.33%
YoY
|
| Income Tax |
$400.0K
-20.0%
YoY
|
$1.461M
9.77%
YoY
|
$1.200M
20.0%
YoY
|
$800.0K
33.33%
YoY
|
$500.0K
-350.0%
YoY
|
$1.331M
103.21%
YoY
|
$1.000M
132.02%
YoY
|
$600.0K
207.69%
YoY
|
-$200.0K
-33.77%
YoY
|
$655.0K
47.86%
YoY
|
$431.0K
314.42%
YoY
|
$195.0K
622.22%
YoY
|
-$302.0K
-34.63%
YoY
|
$443.0K
-37.69%
YoY
|
$104.0K
-147.93%
YoY
|
$27.00K
-105.65%
YoY
|
-$462.0K
158.1%
YoY
|
$711.0K
-107.2%
YoY
|
-$217.0K
-671.05%
YoY
|
| Net Earnings |
$1.017M
-480.9%
YoY
|
$2.036M
118.22%
YoY
|
$2.259M
25.01%
YoY
|
$2.599M
262.48%
YoY
|
-$267.0K
-75.99%
YoY
|
$933.0K
1195.83%
YoY
|
$1.807M
162.26%
YoY
|
$717.0K
64.83%
YoY
|
-$1.112M
243.21%
YoY
|
$72.00K
-32.71%
YoY
|
$689.0K
55.53%
YoY
|
$435.0K
-365.24%
YoY
|
-$324.0K
-11.96%
YoY
|
$107.0K
-72.35%
YoY
|
$443.0K
-198.88%
YoY
|
-$164.0K
-120.0%
YoY
|
-$368.0K
-155.67%
YoY
|
$387.0K
-96.37%
YoY
|
-$448.0K
-115.24%
YoY
|
| Basic Earnings Per Share |
$0.05
-600.0%
YoY
|
N/A
|
$0.11
37.5%
YoY
|
$0.12
300.0%
YoY
|
-$0.01
-80.0%
YoY
|
N/A
|
$0.08
166.67%
YoY
|
$0.03
50.0%
YoY
|
-$0.05
150.0%
YoY
|
N/A
|
$0.03
50.0%
YoY
|
$0.02
-300.0%
YoY
|
-$0.02
0.0%
YoY
|
N/A
|
$0.02
-200.0%
YoY
|
-$0.01
-125.0%
YoY
|
-$0.02
-166.67%
YoY
|
N/A
|
-$0.02
-113.33%
YoY
|
| Diluted Earnings Per Share |
$0.05
-600.0%
YoY
|
$0.10
116.28%
YoY
|
$0.11
37.5%
YoY
|
$0.12
300.0%
YoY
|
-$0.01
-80.0%
YoY
|
$0.04
1199.09%
YoY
|
$0.08
166.67%
YoY
|
$0.03
50.0%
YoY
|
-$0.05
150.0%
YoY
|
$0.00
-33.8%
YoY
|
$0.03
50.0%
YoY
|
$0.02
-300.0%
YoY
|
-$0.02
0.0%
YoY
|
$0.01
-100.0%
YoY
|
$0.02
-200.0%
YoY
|
-$0.01
-125.0%
YoY
|
-$0.02
-166.67%
YoY
|
$17.42K
-96.41%
YoY
|
-$0.02
-114.29%
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 |
20.22M shares
-3.78%
YoY
|
20.34M shares
-4.36%
YoY
|
20.43M shares
-4.17%
YoY
|
20.98M shares
-1.36%
YoY
|
21.01M shares
-1.02%
YoY
|
21.26M shares
0.38%
YoY
|
21.32M shares
1.24%
YoY
|
21.26M shares
1.59%
YoY
|
21.23M shares
1.59%
YoY
|
21.18M shares
2.55%
YoY
|
21.05M shares
1.74%
YoY
|
20.93M shares
1.69%
YoY
|
20.89M shares
1.38%
YoY
|
20.66M shares
0.03%
YoY
|
20.69M shares
0.57%
YoY
|
20.58M shares
0.47%
YoY
|
20.61M shares
1.33%
YoY
|
20.65M shares
2.04%
YoY
|
20.58M shares
1.98%
YoY
|
| Diluted Shares Outstanding |
20.89M shares
-1.09%
YoY
|
N/A
|
20.95M shares
-3.26%
YoY
|
21.06M shares
-3.02%
YoY
|
21.13M shares
-0.47%
YoY
|
N/A
|
21.65M shares
-0.31%
YoY
|
21.71M shares
0.51%
YoY
|
21.23M shares
1.79%
YoY
|
N/A
|
21.72M shares
1.24%
YoY
|
21.60M shares
4.94%
YoY
|
20.85M shares
1.18%
YoY
|
N/A
|
21.45M shares
4.25%
YoY
|
20.58M shares
-6.71%
YoY
|
20.61M shares
-6.05%
YoY
|
N/A
|
20.58M shares
-5.01%
YoY
|
Loading...