REVENUE RECOGNITION
We conduct our operations in three reportable segments: Contractor Solutions, Engineered Building Solutions and Specialized Reliability Solutions. With the adoption of ASC Topic 606, we have concluded that the disaggregation of revenues that would be most useful in understanding the nature, timing and extent of revenue recognition is the breakout of build-to-order and book-and-ship, as defined below:
Build-to-order products are architecturally-specified building products generally sold into the construction industry. Revenue generated from sales of products under build-to-order transactions are currently reflected in the results of our Engineered Building Solutions segment. Occasionally, our built-to-order business lines enter into arrangements for the delivery of a customer-specified product and the provision of installation services. These orders are generally negotiated as a package and are commonly subject to retainage by the customer, which means the final 10% of the transaction price, when applicable, is not collectible until the overall construction project into which our products are incorporated is complete. The lead times for transfer to the customer can be up to 12 weeks. Revenue for goods is recognized at a point in time, but installation services are recognized over time as those services are performed, using an appropriate input measure, i.e. costs and labor hours incurred in relation to total estimates. Installation services represented approximately 2% of total consolidated revenue for the year ended March 31, 2025.
Book-and-ship products are sold across all of our end markets. Revenue generated from sales of products under book-and-ship transactions have historically been presented in the Contractor Solutions, Specialized Reliability Solutions and Engineered Building Solutions segments. These sales are typically priced on a product-by-product basis using price lists provided to our customers. The lead times for transfer to the customer is usually one week or less as these items are generally built to stock. Revenue for products sold under these arrangements is recognized at a point in time.
Disaggregation of revenues reconciled to our reportable segments is as follows (in thousands):
| | | | | | | | | | | | | | | | | | | | | | | | | | |
| | Year Ended March 31, 2025 |
| | Contractor Solutions | | Specialized Reliability Solutions | | Engineered Building Solutions | | Total |
| Build-to-order | | $ | — | | | $ | — | | | $ | 106,562 | | | $ | 106,562 | |
| Book-and-ship | | 609,706 | | | 147,476 | | | 14,557 | | | 771,739 | |
| Net revenues | | $ | 609,706 | | | $ | 147,476 | | | $ | 121,119 | | | $ | 878,301 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | |
| | Year Ended March 31, 2024 |
| | Contractor Solutions | | Specialized Reliability Solutions | | Engineered Building Solutions | | Total |
| Build-to-order | | $ | — | | | $ | — | | | $ | 99,760 | | | $ | 99,760 | |
| Book-and-ship | | 528,641 | | | 149,458 | | | 14,981 | | | 693,080 | |
| Net revenues | | $ | 528,641 | | | $ | 149,458 | | | $ | 114,741 | | | $ | 792,840 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | |
| | Year Ended March 31, 2023 |
| | Contractor Solutions | | Specialized Reliability Solutions | | Engineered Building Solutions | | Total |
| Build-to-order | | $ | — | | | $ | — | | | $ | 89,964 | | | $ | 89,964 | |
| Book-and-ship | | 506,634 | | | 147,301 | | | 14,005 | | | 667,940 | |
| Net revenues | | $ | 506,634 | | | $ | 147,301 | | | $ | 103,969 | | | $ | 757,904 | |
As of March 31, 2025, 2024 and 2023 accounts receivable balances, net of an allowance for credit losses, were $155.7 million, $142.7 million and $122.8 million, respectively. The following table summarizes the activity in the allowance for credit losses (in thousands):
| | | | | | | | | | | | | | |
| | March 31, 2025 | | March 31, 2024 |
| Balance at beginning of the year: | | $ | 908 | | | $ | 1,365 | |
| Reserve | | 1,408 | | | 814 | |
| Write offs, net of recoveries | | (1,166) | | | (1,336) | |
| Currency translation | | (13) | | | 65 | |
| Ending balance | | $ | 1,137 | | | $ | 908 | |
Contract Balances
We receive payment from customers based on a contractual billing schedule and specific performance requirements as established in our contracts. We record billings as accounts receivable when an unconditional right to consideration exists. Contract liability represents our contractual billings in advance of revenue recognized for a contract and is included in accrued and other current liabilities in our consolidated balance sheets were as follows (in thousands):
| | | | | | | | | | | | | | |
| | March 31, 2025 | | March 31, 2024 |
| Balance at beginning of the year: | | $ | 548 | | | $ | 637 | |
| Revenue recognized | | (436) | | | (607) | |
| | | | |
| New contracts and revenue added to existing contracts | | 820 | | | 518 | |
| Ending balance | | $ | 932 | | | $ | 548 | |
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.