Revenue Recognition
Disaggregated Revenue
The following table presents the Company’s revenue disaggregated by the major types of goods and services sold to our customers (in thousands) (See Note 20 for further information regarding net sales by market):
Years Ended December 31,
202520242023
Net sales of:
Products$591,355 $491,382 $391,460 
Tooling and Machinery4,501 8,320 3,468 
Engineering services6,941 4,719 5,144 
Total net sales$602,797 $504,421 $400,072 
Contract balances
The timing of revenue recognition may differ from the timing of invoicing to customers. When invoicing occurs prior to revenue recognition, the Company has deferred revenue (contract liabilities) included within “deferred revenue” on the consolidated balance sheet. The following table presents opening and closing balances of contract liabilities for the years ended December 31, 2025, and 2024 (in thousands):
Contract Liabilities
Years Ended
December 31,
20252024
Deferred revenue - beginning of period$4,667 $6,616 
Acquired in business combinations661 
Increases due to consideration received from customers6,796 4,439 
Revenue recognized(7,884)(6,396)
Deferred revenue - end of period$4,240 $4,667 
Revenue recognized during the years ended December 31, 2025 and 2024 from amounts included in deferred revenue at the beginning of the period was approximately $2.7 million and $4.6 million, respectively.
When invoicing occurs after revenue recognition, the Company has unbilled receivables (contract assets) included within “receivables” on the consolidated balance sheet. The following table presents opening and closing balances of contract assets for the years ended December 31, 2025 and 2024 (in thousands):
Contract Assets
Years Ended
December 31,
20252024
Unbilled Receivables - beginning of period$192 $114 
Increases due to revenue recognized, not invoiced to customers4,149 2,135 
Decreases due to customer invoicing(3,950)(2,057)
Unbilled Receivables - end of period$391 $192 

Historical Timeline

Fiscal YearFiled
2025Feb 27, 2026Showing above
2024Mar 3, 2025
2023Feb 29, 2024
2022Mar 16, 2023
2021Mar 14, 2022
2020Mar 12, 2021
2019Mar 13, 2020
2018Mar 15, 2019

About Revenue Disclosures

Revenue disclosures under ASC 606 explain how a company identifies performance obligations, allocates transaction prices, and determines when revenue is recognized. This section is essential for understanding whether reported revenue reflects genuine economic activity or aggressive accounting choices. Analysts examine the mix of point-in-time versus over-time recognition, which directly affects revenue timing and comparability.

Key signals: rising contract liabilities (deferred revenue) suggest strong future revenue visibility, while declining contract assets may indicate slowing project milestones. Watch for variable consideration estimates — rebates, returns, and performance bonuses that require management judgment. Significant changes in disaggregated revenue by geography or product line can reveal shifting business mix before it appears in headline numbers. Compare revenue growth against contract liability growth to assess sustainability, and scrutinize any changes in the timing of recognition that coincide with earnings pressure.