Note 14. Revenue recognition

Contract Assets and Contract Liabilities

The Company has contract assets and contract liabilities, which are included in tooling in progress and other current liabilities on the Consolidated Balance Sheets, respectively. Contract assets primarily consist of capitalized costs related to customer-owned tooling contracts, wherein the Company has not yet met performance obligations. Contract liabilities include deferred tooling revenue, where the performance obligation was not met. The performance obligation is satisfied when the tooling is completed and the

customer signs off through the Product Part Approval Process or other documented customer acceptance, either at a point in time or over a period of time is when revenue is recognized. Cost of goods sold is recognized and released from the balance sheet when control of the tooling promised under contract is transferred to the customer.

The Company’s contracts with customers are short-term in nature; therefore, revenue is typically recognized, billed and collected within a 12-month period. The following table reflects the changes in our contract assets and liabilities during the twelve months ended December 31, 2025, 2024 and 2023.

Contract

Contract

  ​ ​ ​

Assets

  ​ ​ ​

Liabilities

As of December 31, 2022

$

7,938

6,141

Net activity

(2,481)

(2,506)

As of December 31, 2023

5,457

3,635

Net activity

(696)

(173)

As of December 31, 2024

$

4,761

$

3,462

Net activity

(15)

(147)

As of December 31, 2025

$

4,746

$

3,315

Revenue recognized from deferred revenue that was recorded as a contract liability at the beginning of the fiscal year was $2,883, $2,559 and $4,856 in 2025, 2024 and 2023, respectively.

Disaggregated Revenue

The following tables represents a disaggregation of revenue by product category and end market:

Twelve Months Ended

December 31, 

Product Category

  ​ ​ ​

2025

  ​ ​ ​

2024

  ​ ​ ​

2023

Outdoor sports

$

7,418

$

7,904

$

9,017

Fabrication

281,868

307,548

342,689

Performance structures

168,123

172,923

136,819

Tube

71,176

70,004

76,322

Tank

33,244

44,171

43,947

Total

561,829

602,550

608,794

Intercompany sales elimination

(15,342)

(20,946)

(20,369)

Total, net sales

$

546,487

$

581,604

$

588,425

Twelve Months Ended

December 31, 

End Market

2025

2024

2023

Commercial vehicle

177,663

219,911

225,252

Construction & access

 

81,033

92,757

105,228

Powersports

 

85,706

99,616

97,788

Data center & critical power

52,143

17,468

7,716

Agriculture

 

35,941

 

47,615

57,231

Military

30,936

28,906

37,311

Other

83,065

75,331

57,899

Total, net sales

$

546,487

$

581,604

588,425

In connection with the acquisition of Accu-Fab, the Company added a new end market category, data center & critical power to its revenue disaggregation. As a result, revenue previously reported within other has been reclassified to data center & critical power for all periods presented. Specifically $17,468 and $7,716 of revenue for the twelve months ended December 31, 2024 and 2023, respectively, were reclassified from other to data center & critical power to conform to the current period presentation.

Historical Timeline

Fiscal YearFiled
2025Mar 4, 2026Showing above
2024Mar 6, 2025
2023Mar 6, 2024
2022Mar 1, 2023
2021Mar 2, 2022
2020Mar 5, 2021
2019Mar 2, 2020

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.