|
Concept
|
2023 | 2022 | 2021 | 2020 | 2019 |
|---|---|---|---|---|---|
| Revenue |
$256.2M
0.98%
YoY
|
$253.7M
15.51%
YoY
|
$219.6M
9.03%
YoY
|
$201.5M
-11.65%
YoY
|
$228.0M
5.41%
YoY
|
| Cost Of Revenue |
$173.7M
2.5%
YoY
|
$169.5M
15.83%
YoY
|
$146.3M
5.07%
YoY
|
$139.2M
-9.04%
YoY
|
$153.1M
4.3%
YoY
|
| Gross Profit |
$82.49M
-2.08%
YoY
|
$84.25M
14.87%
YoY
|
$73.34M
17.89%
YoY
|
$62.21M
-16.99%
YoY
|
$74.94M
7.74%
YoY
|
| Selling, General & Admin |
$63.32M
1.71%
YoY
|
$62.26M
10.55%
YoY
|
$56.32M
-5.25%
YoY
|
$59.44M
-6.72%
YoY
|
$63.72M
-0.5%
YoY
|
| Research & Development |
$3.700M
5.71%
YoY
|
$3.500M
16.67%
YoY
|
$3.000M
-21.05%
YoY
|
$3.800M
2.7%
YoY
|
$3.700M
2.78%
YoY
|
| Depreciation & Amortization |
$5.200M
-21.57%
YoY
|
$6.630M
5.37%
YoY
|
$6.292M
-12.55%
YoY
|
$7.195M
-1.95%
YoY
|
$7.338M
-2.3%
YoY
|
| Operating Expenses |
$67.02M
1.92%
YoY
|
$65.76M
10.86%
YoY
|
$59.32M
-6.2%
YoY
|
$63.24M
-6.2%
YoY
|
$67.42M
-0.32%
YoY
|
| Operating Profit |
$18.92M
-12.24%
YoY
|
$21.56M
30.12%
YoY
|
$16.57M
-412.39%
YoY
|
-$5.303M
-147.26%
YoY
|
$11.22M
103.35%
YoY
|
| Interest Expense |
$1.408M
11.3%
YoY
|
$1.265M
26.63%
YoY
|
$999.0K
2.46%
YoY
|
$975.0K
-0.1%
YoY
|
$976.0K
15.5%
YoY
|
| Other Income/Expense, Net |
$7.000M
N/A
|
$0.00
-100.0%
YoY
|
$900.0K
-106.12%
YoY
|
-$14.69M
812.1%
YoY
|
-$1.611M
146.71%
YoY
|
| Pretax Income |
$25.90M
20.37%
YoY
|
$21.52M
23.49%
YoY
|
$17.43M
-187.14%
YoY
|
-$20.00M
-308.09%
YoY
|
$9.610M
97.53%
YoY
|
| Income Tax |
$2.814M
-57.63%
YoY
|
$6.641M
250.82%
YoY
|
$1.893M
2.77%
YoY
|
$1.842M
-47.83%
YoY
|
$3.531M
-58.45%
YoY
|
| Net Earnings |
$23.09M
55.18%
YoY
|
$14.88M
-4.22%
YoY
|
$15.53M
-171.13%
YoY
|
-$21.84M
-459.25%
YoY
|
$6.079M
-267.33%
YoY
|
| Basic Earnings Per Share |
$3.12
51.46%
YoY
|
$2.06
-6.36%
YoY
|
$2.20
-170.06%
YoY
|
-$3.14
-460.92%
YoY
|
$0.87
-267.31%
YoY
|
| Diluted Earnings Per Share |
$3.06
53.0%
YoY
|
$2.00
-5.21%
YoY
|
$2.11
-167.2%
YoY
|
-$3.14
-460.92%
YoY
|
$0.87
-100.0%
YoY
|
| COMMON SHARES |
N/A
|
N/A
|
N/A
|
N/A
|
N/A
|
| Basic Shares Outstanding |
7.391M shares
2.28%
YoY
|
7.226M shares
2.21%
YoY
|
7.070M shares
1.74%
YoY
|
6.949M shares
-0.11%
YoY
|
6.957M shares
-0.81%
YoY
|
| Diluted Shares Outstanding |
7.555M shares
1.59%
YoY
|
7.437M shares
0.95%
YoY
|
7.367M shares
6.02%
YoY
|
6.949M shares
-1.1%
YoY
|
7.026M shares
0.17%
YoY
|
|
Concept
|
2024 Q1 | 2023 Q4 | 2023 Q3 | 2023 Q2 | 2023 Q1 | 2022 Q4 | 2022 Q3 | 2022 Q2 | 2022 Q1 | 2021 Q4 | 2021 Q3 | 2021 Q2 | 2021 Q1 | 2020 Q4 | 2020 Q3 | 2020 Q2 | 2020 Q1 | 2019 Q4 | 2019 Q3 | 2019 Q2 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Revenue |
$60.77M
-1.48%
YoY
|
$62.08M
-7.04%
YoY
|
$60.64M
0.29%
YoY
|
$67.27M
-4.43%
YoY
|
$61.68M
1.98%
YoY
|
$66.78M
8.9%
YoY
|
$60.46M
-1.71%
YoY
|
$70.39M
14.95%
YoY
|
$60.48M
10.07%
YoY
|
$61.32M
13.44%
YoY
|
$61.51M
24.49%
YoY
|
$61.24M
44.17%
YoY
|
$54.94M
9.89%
YoY
|
$54.05M
-4.94%
YoY
|
$49.41M
-5.19%
YoY
|
$42.48M
-30.47%
YoY
|
$50.00M
-14.53%
YoY
|
$56.86M
0.59%
YoY
|
$52.11M
0.41%
YoY
|
$61.09M
6.15%
YoY
|
| Cost Of Revenue |
$43.19M
1.72%
YoY
|
$43.11M
-4.62%
YoY
|
$41.10M
2.08%
YoY
|
$45.78M
-1.03%
YoY
|
$42.46M
7.59%
YoY
|
$45.20M
6.68%
YoY
|
$40.26M
-2.68%
YoY
|
$46.26M
17.94%
YoY
|
$39.46M
7.24%
YoY
|
$42.37M
16.24%
YoY
|
$41.37M
22.25%
YoY
|
$39.22M
24.71%
YoY
|
$36.80M
4.67%
YoY
|
$36.45M
-4.65%
YoY
|
$33.84M
-1.66%
YoY
|
$31.45M
-21.63%
YoY
|
$35.15M
-10.65%
YoY
|
$38.23M
0.64%
YoY
|
$34.41M
-2.36%
YoY
|
$40.13M
2.58%
YoY
|
| Gross Profit |
$17.58M
-8.55%
YoY
|
$18.96M
-12.11%
YoY
|
$19.54M
-3.29%
YoY
|
$21.49M
-10.94%
YoY
|
$19.22M
-8.55%
YoY
|
$21.58M
13.86%
YoY
|
$20.20M
0.27%
YoY
|
$24.13M
9.61%
YoY
|
$21.02M
15.82%
YoY
|
$18.95M
7.64%
YoY
|
$20.15M
29.37%
YoY
|
$22.02M
103.34%
YoY
|
$18.15M
22.26%
YoY
|
$17.61M
-6.54%
YoY
|
$15.57M
-12.04%
YoY
|
$10.83M
-47.39%
YoY
|
$14.84M
-22.51%
YoY
|
$18.84M
1.55%
YoY
|
$17.70M
6.27%
YoY
|
$20.58M
10.76%
YoY
|
| Selling, General & Admin |
$16.87M
11.66%
YoY
|
$16.47M
5.84%
YoY
|
$17.08M
4.81%
YoY
|
$16.36M
-0.91%
YoY
|
$15.11M
0.81%
YoY
|
$15.56M
5.51%
YoY
|
$16.29M
1.76%
YoY
|
$16.51M
8.69%
YoY
|
$14.99M
10.93%
YoY
|
$14.75M
3.69%
YoY
|
$16.01M
19.57%
YoY
|
$15.19M
21.23%
YoY
|
$13.51M
-8.59%
YoY
|
$14.22M
-10.39%
YoY
|
$13.39M
-17.63%
YoY
|
$12.53M
-26.68%
YoY
|
$14.78M
-5.78%
YoY
|
$15.87M
5.13%
YoY
|
$16.26M
3.4%
YoY
|
$17.09M
1.61%
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
|
N/A
|
| Depreciation & Amortization |
N/A
|
$1.664M
0.6%
YoY
|
$1.377M
6.91%
YoY
|
$1.560M
-11.36%
YoY
|
$1.577M
-4.02%
YoY
|
$1.654M
1.47%
YoY
|
$1.288M
2.06%
YoY
|
$1.760M
19.57%
YoY
|
$1.643M
7.39%
YoY
|
$1.630M
0.0%
YoY
|
$1.262M
-7.21%
YoY
|
$1.472M
-23.33%
YoY
|
$1.530M
-12.07%
YoY
|
$1.630M
-6.86%
YoY
|
$1.360M
12.21%
YoY
|
$1.920M
3.78%
YoY
|
$1.740M
-1.69%
YoY
|
$1.750M
-6.91%
YoY
|
$1.212M
-3.81%
YoY
|
$1.850M
-0.54%
YoY
|
| Operating Expenses |
$16.87M
11.66%
YoY
|
$16.47M
5.84%
YoY
|
$17.08M
4.81%
YoY
|
$16.36M
-0.91%
YoY
|
$15.11M
0.81%
YoY
|
$15.56M
5.51%
YoY
|
$16.29M
1.76%
YoY
|
$16.51M
8.69%
YoY
|
$14.99M
10.93%
YoY
|
$14.75M
3.69%
YoY
|
$16.01M
19.57%
YoY
|
$15.19M
21.33%
YoY
|
$13.51M
-8.59%
YoY
|
$14.22M
-10.39%
YoY
|
$13.39M
-17.63%
YoY
|
$12.52M
-26.74%
YoY
|
$14.78M
-5.78%
YoY
|
$15.87M
5.13%
YoY
|
$16.26M
3.4%
YoY
|
$17.09M
1.67%
YoY
|
| Operating Profit |
$710.0K
-82.74%
YoY
|
$2.494M
-58.16%
YoY
|
$2.459M
-33.83%
YoY
|
$5.130M
-32.5%
YoY
|
$4.114M
-23.45%
YoY
|
$5.961M
41.89%
YoY
|
$3.716M
-10.09%
YoY
|
$7.600M
61.7%
YoY
|
$5.374M
39.58%
YoY
|
$4.201M
-32.25%
YoY
|
$4.133M
125.23%
YoY
|
$4.700M
67.86%
YoY
|
$3.850M
5915.63%
YoY
|
$6.201M
124.51%
YoY
|
$1.835M
26.99%
YoY
|
$2.800M
-19.75%
YoY
|
$64.00K
-98.15%
YoY
|
$2.762M
-19.9%
YoY
|
$1.445M
54.38%
YoY
|
$3.489M
97.23%
YoY
|
| Interest Expense |
N/A
|
N/A
|
$100.0K
N/A
|
-$1.000M
N/A
|
-$400.0K
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
|
| Other Income/Expense, Net |
-$17.00K
-97.18%
YoY
|
-$526.0K
-53.08%
YoY
|
-$365.0K
-46.01%
YoY
|
$10.39M
-3745.61%
YoY
|
-$602.0K
-188.01%
YoY
|
-$1.121M
69.34%
YoY
|
-$676.0K
-399.12%
YoY
|
-$285.0K
-145.67%
YoY
|
$684.0K
3.17%
YoY
|
-$662.0K
55.4%
YoY
|
$226.0K
-22700.0%
YoY
|
$624.0K
-104.5%
YoY
|
$663.0K
197.31%
YoY
|
-$426.0K
-51.97%
YoY
|
-$1.000K
-99.41%
YoY
|
-$13.86M
1017.74%
YoY
|
$223.0K
-152.72%
YoY
|
-$887.0K
94.09%
YoY
|
-$169.0K
-2916.67%
YoY
|
-$1.240M
49.4%
YoY
|
| Pretax Income |
$700.0K
-80.0%
YoY
|
$2.000M
-58.33%
YoY
|
$2.100M
-30.0%
YoY
|
$14.51M
91.86%
YoY
|
$3.500M
-42.23%
YoY
|
$4.800M
35.63%
YoY
|
$3.000M
-31.18%
YoY
|
$7.563M
42.59%
YoY
|
$6.058M
34.23%
YoY
|
$3.539M
-38.72%
YoY
|
$4.359M
137.68%
YoY
|
$5.304M
-122.63%
YoY
|
$4.513M
1472.47%
YoY
|
$5.775M
208.0%
YoY
|
$1.834M
43.73%
YoY
|
-$23.44M
-990.39%
YoY
|
$287.0K
-90.57%
YoY
|
$1.875M
-37.31%
YoY
|
$1.276M
35.46%
YoY
|
$2.632M
232.74%
YoY
|
| Income Tax |
$100.0K
-102.5%
YoY
|
$2.400M
41.18%
YoY
|
$200.0K
-80.0%
YoY
|
$4.080M
49.45%
YoY
|
-$4.000M
-322.22%
YoY
|
$1.700M
70.0%
YoY
|
$1.000M
-9.09%
YoY
|
$2.730M
258.74%
YoY
|
$1.800M
20.0%
YoY
|
$1.000M
-47.37%
YoY
|
$1.100M
-147.83%
YoY
|
$761.0K
-28.21%
YoY
|
$1.500M
-600.0%
YoY
|
$1.900M
216.67%
YoY
|
-$2.300M
-560.0%
YoY
|
$1.060M
-7.83%
YoY
|
-$300.0K
-131.35%
YoY
|
$600.0K
-43.66%
YoY
|
$500.0K
39.66%
YoY
|
$1.150M
-3933.33%
YoY
|
| Net Earnings |
$638.0K
-91.46%
YoY
|
-$394.0K
-112.58%
YoY
|
$1.920M
-6.61%
YoY
|
$10.43M
115.76%
YoY
|
$7.473M
74.44%
YoY
|
$3.131M
23.85%
YoY
|
$2.056M
-36.39%
YoY
|
$4.834M
6.41%
YoY
|
$4.284M
42.0%
YoY
|
$2.528M
-34.46%
YoY
|
$3.232M
-21.48%
YoY
|
$4.543M
-118.55%
YoY
|
$3.017M
392.17%
YoY
|
$3.857M
206.11%
YoY
|
$4.116M
429.05%
YoY
|
-$24.49M
-1753.61%
YoY
|
$613.0K
-70.64%
YoY
|
$1.260M
-34.58%
YoY
|
$778.0K
33.22%
YoY
|
$1.481M
79.52%
YoY
|
| Basic Earnings Per Share |
$0.09
-91.09%
YoY
|
-$0.05
-111.9%
YoY
|
$0.26
-7.14%
YoY
|
N/A
|
$1.01
71.19%
YoY
|
$0.42
20.0%
YoY
|
$0.28
-37.78%
YoY
|
$0.67
3.08%
YoY
|
$0.59
40.48%
YoY
|
$0.35
-35.19%
YoY
|
$0.45
-23.73%
YoY
|
$0.65
-118.47%
YoY
|
$0.42
366.67%
YoY
|
$0.54
200.0%
YoY
|
$0.59
436.36%
YoY
|
-$3.52
-1700.0%
YoY
|
$0.09
-70.0%
YoY
|
$0.18
-33.33%
YoY
|
$0.11
37.5%
YoY
|
$0.22
83.33%
YoY
|
| Diluted Earnings Per Share |
$0.08
-91.92%
YoY
|
-$0.05
-111.9%
YoY
|
$0.25
-7.41%
YoY
|
$1.37
110.77%
YoY
|
$0.99
73.68%
YoY
|
$0.42
23.53%
YoY
|
$0.27
-38.64%
YoY
|
$0.65
8.33%
YoY
|
$0.57
39.02%
YoY
|
$0.34
-35.85%
YoY
|
$0.44
-22.81%
YoY
|
$0.60
-117.05%
YoY
|
$0.41
355.56%
YoY
|
$0.53
194.44%
YoY
|
$0.57
418.18%
YoY
|
-$3.52
-100.0%
YoY
|
$0.09
-70.0%
YoY
|
$0.18
-33.33%
YoY
|
$0.11
37.5%
YoY
|
$212.0K
79.34%
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
|
N/A
|
| Basic Shares Outstanding |
7.505M shares
1.05%
YoY
|
7.501M shares
1.3%
YoY
|
7.437M shares
1.82%
YoY
|
N/A
|
7.427M shares
2.36%
YoY
|
7.405M shares
2.24%
YoY
|
7.304M shares
2.5%
YoY
|
N/A
|
7.256M shares
2.14%
YoY
|
7.243M shares
2.29%
YoY
|
7.126M shares
1.97%
YoY
|
N/A
|
7.104M shares
2.04%
YoY
|
7.081M shares
1.81%
YoY
|
6.988M shares
1.22%
YoY
|
N/A
|
6.962M shares
1.02%
YoY
|
6.955M shares
-0.9%
YoY
|
6.904M shares
-1.72%
YoY
|
N/A
|
| Diluted Shares Outstanding |
7.657M shares
1.06%
YoY
|
7.501M shares
-0.53%
YoY
|
7.608M shares
1.37%
YoY
|
N/A
|
7.577M shares
1.13%
YoY
|
7.541M shares
0.65%
YoY
|
7.505M shares
1.47%
YoY
|
N/A
|
7.492M shares
1.38%
YoY
|
7.492M shares
2.71%
YoY
|
7.396M shares
2.08%
YoY
|
N/A
|
7.390M shares
5.24%
YoY
|
7.294M shares
3.98%
YoY
|
7.245M shares
3.41%
YoY
|
N/A
|
7.022M shares
0.91%
YoY
|
7.015M shares
-0.74%
YoY
|
7.006M shares
-1.09%
YoY
|
N/A
|
Loading...