v3.25.2
Revenue Recognition
6 Months Ended
Jun. 30, 2025
Revenue from Contract with Customer [Abstract]  
Revenue Recognition REVENUE RECOGNITION
We disaggregate our revenue from contracts with customers for our Installation segment by end market and product, as we believe it best depicts how the nature, amount, timing and uncertainty of our revenue and cash flows are affected by economic factors. Revenues for distribution and manufacturing operations are included in the Other category and are presented net of intercompany sales in the tables below. The following tables present our net revenues disaggregated by end market and product (in millions):
Three months ended June 30,Six months ended June 30,
2025202420252024
Installation:
Residential new construction$548.8 72 %$542.4 74 %$1,043.2 72 %$1,045.2 73 %
Repair and remodel43.2 %42.5 %85.6 %82.6 %
Commercial123.6 16 %112.4 15 %234.0 16 %225.4 16 %
Net revenue, Installation$715.6 94 %$697.3 95 %$1,362.8 94 %$1,353.2 95 %
Other44.7 %40.3 %82.3 %77.3 %
Net revenue, as reported$760.3 100 %$737.6 100 %$1,445.1 100 %$1,430.5 100 %
 Three months ended June 30,Six months ended June 30,
2025202420252024
Installation:
Insulation$446.5 59 %$447.8 61 %$861.0 60 %$875.7 61 %
Shower doors, shelving and mirrors56.9 %53.4 %108.0 %102.3 %
Garage doors44.2 %43.2 %86.6 %85.9 %
Waterproofing40.9 %34.5 %74.9 %65.2 %
Rain gutters31.9 %32.1 %58.4 %59.5 %
Fireproofing/firestopping27.2 %22.4 %47.7 %43.1 %
Window blinds20.8 %20.2 %38.1 %37.2 %
Other building products47.2 %43.7 %88.1 %84.3 %
Net revenue, Installation$715.6 94 %$697.3 95 %$1,362.8 94 %$1,353.2 95 %
Other44.7 %40.3 %82.3 %77.3 %
Net revenue, as reported$760.3 100 %$737.6 100 %$1,445.1 100 %$1,430.5 100 %
Contract Assets and Liabilities
Our contract assets consist of unbilled amounts typically resulting from sales under contracts when the cost-to-cost method of revenue recognition is utilized and revenue recognized, based on costs incurred, exceeds the amount billed to the customer. Our contract assets are recorded in other current assets in our Condensed Consolidated Balance Sheets. Our contract liabilities consist of customer deposits and billings in excess of revenue recognized, based on costs incurred and are included in other current liabilities in our Condensed Consolidated Balance Sheets.
Contract assets and liabilities related to our uncompleted contracts and customer deposits were as follows (in millions):
 June 30, 2025December 31, 2024
Contract assets$33.5 $33.2 
Contract liabilities(19.2)(19.7)
Uncompleted contracts were as follows (in millions):
 June 30, 2025December 31, 2024
Costs incurred on uncompleted contracts$215.1 $248.4 
Estimated earnings133.4 128.5 
Total348.5 376.9 
Less: Billings to date324.5 352.9 
Net under billings$24.0 $24.0 
Net under billings were as follows (in millions):
 June 30, 2025December 31, 2024
Costs and estimated earnings in excess of billings on uncompleted contracts (contract assets)$33.5 $33.2 
Billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities)(9.5)(9.2)
Net under billings$24.0 $24.0 
The difference between contract assets and contract liabilities as of June 30, 2025 compared to December 31, 2024 is primarily the result of timing differences between our performance of obligations under contracts and customer payments and billings. During the three and six months ended June 30, 2025, we recognized $1.6 million and $18.3 million of revenue that was included in the contract liability balance at December 31, 2024. We did not recognize any impairment losses on our contract assets during the three and six months ended June 30, 2025 or 2024.
Remaining performance obligations represent the transaction price of contracts for which work has not been performed and excludes unexercised contract options and potential modifications. As of June 30, 2025, the aggregate amount of the transaction price allocated to remaining uncompleted contracts was $161.4 million. We expect to satisfy remaining performance obligations and recognize revenue on substantially all of these uncompleted contracts over the next 18 months.