v3.26.1
CONSOLIDATED STATEMENTS OF OPERATIONS - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2026
Jun. 30, 2025
Jun. 30, 2026
Jun. 30, 2025
Income Statement [Abstract]        
Revenue $ 35,313 $ 28,130 $ 69,199 $ 54,767
Cost of revenue 21,015 16,157 40,243 31,738
Gross profit 14,298 11,973 28,956 23,029
Operating expenses:        
Selling expense 4,497 3,829 8,717 8,376
Engineering and product development expense 2,501 2,245 5,089 4,693
General and administrative expense 6,208 5,760 12,332 11,576
Amortization of acquired intangible assets 699 850 1,477 1,663
Restructuring costs 30 216 774 529
Total operating expenses 13,935 12,900 28,389 26,837
Operating income (loss) 363 (927) 567 (3,808)
Interest expense (63) (119) (143) (271)
Other (expense) income (51) 463 52 707
Earnings (loss) before income tax benefit expense 249 (583) 476 (3,372)
Income tax benefit (225) (80) (181) (540)
Net earnings (loss) $ 474 $ (503) $ 657 $ (2,832)
Earnings (loss) per common share:        
Basic (in USD per share) $ 0.04 $ (0.04) $ 0.05 $ (0.23)
Diluted (in USD per share) $ 0.04 $ (0.04) $ 0.05 $ (0.23)
Weighted average common shares outstanding:        
Basic (in shares) 12,314,633 12,215,258 12,284,334 12,197,338
Diluted (in shares) 12,582,221 12,215,258 12,501,783 12,197,338