XML 26 R13.htm IDEA: XBRL DOCUMENT
v3.22.0.1

Revenue Recognition | 12 Months Ended
--- | ---
Dec. 31, 2021
Revenue from Contract with Customer [Abstract] |
Revenue Recognition | REVENUE RECOGNITION We disaggregate our revenue from contracts with customers 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. The following tables present our revenues disaggregated by end market and product (in thousands):
| Years ended December 31,
| 2021 |  |  |  | 2020 |  |  |  | 2019 |  |
Residential new construction | $ | 1,500,750 |  |  | 76 | % |  | $ | 1,243,498 |  |  | 75 | % |  | $ | 1,138,475 |  |  | 75 | %
Repair and remodel | 133,986 |  |  | 7 | % |  | 106,784 |  |  | 7 | % |  | 98,771 |  |  | 7 | %
Commercial | 333,914 |  |  | 17 | % |  | 302,943 |  |  | 18 | % |  | 274,383 |  |  | 18 | %
Net revenues | $ | 1,968,650 |  |  | 100 | % |  | $ | 1,653,225 |  |  | 100 | % |  | $ | 1,511,629 |  |  | 100 | %
| Years ended December 31,
| 2021 |  |  |  | 2020 |  |  |  | 2019 |  |
Insulation | $ | 1,262,628 |  |  | 64 | % |  | $ | 1,058,316 |  |  | 64 | % |  | $ | 970,070 |  |  | 64 | %
Shower doors, shelving and mirrors | 138,797 |  |  | 7 | % |  | 117,131 |  |  | 7 | % |  | 105,745 |  |  | 7 | %
Waterproofing | 130,924 |  |  | 7 | % |  | 122,962 |  |  | 7 | % |  | 112,075 |  |  | 7 | %
Garage doors | 108,675 |  |  | 5 | % |  | 93,516 |  |  | 6 | % |  | 89,959 |  |  | 6 | %
Rain gutters | 86,406 |  |  | 4 | % |  | 62,672 |  |  | 4 | % |  | 49,788 |  |  | 3 | %
Fireproofing/firestopping | 59,381 |  |  | 3 | % |  | 49,648 |  |  | 3 | % |  | 41,845 |  |  | 3 | %
Window blinds | 50,255 |  |  | 3 | % |  | 46,984 |  |  | 3 | % |  | 41,641 |  |  | 3 | %
Other building products | 131,584 |  |  | 7 | % |  | 101,996 |  |  | 6 | % |  | 100,506 |  |  | 7 | %
Net revenues | $ | 1,968,650 |  |  | 100 | % |  | $ | 1,653,225 |  |  | 100 | % |  | $ | 1,511,629 |  |  | 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 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 Consolidated Balance Sheets. Contract assets and liabilities related to our uncompleted contracts and customer deposits were as follows (in thousands):
| As of December 31,
| 2021 |  | 2020
Contract assets | $ | 32,679 |  |  | $ | 24,334 |
Contract liabilities | (14,153) |  |  | (8,965) |
Uncompleted contracts were as follows (in thousands):
| As of December 31,
| 2021 |  | 2020
Costs incurred on uncompleted contracts | $ | 206,050 |  |  | $ | 169,544 |
Estimated earnings | 106,163 |  |  | 90,737 |
Total | 312,213 |  |  | 260,281 |
Less: Billings to date | 285,978 |  |  | 240,665 |
Net under billings | $ | 26,235 |  |  | $ | 19,616 |
Net under billings were as follows (in thousands):
| As of December 31,
| 2021 |  | 2020
Costs and estimated earnings in excess of billings on uncompleted contracts (contract assets) | $ | 32,679 |  |  | $ | 24,334 |
Billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities) | (6,444) |  |  | (4,718) |
Net under billings | $ | 26,235 |  |  | $ | 19,616 |
The difference between contract assets and contract liabilities as of December 31, 2021 compared to December 31, 2020 is primarily the result of timing differences between our performance of obligations under contracts and customer payments and billings. During the year ended December 31, 2021, we recognized $8.7 million of revenue that was included in the contract liability balance at December 31, 2020. We did not recognize any impairment losses on our receivables and contract assets during the years ended December 31, 2021 and 2020. 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 December 31, 2021, the aggregate amount of the transaction price allocated to remaining uncompleted contracts was $143.2 million. We expect to satisfy remaining performance obligations and recognize revenue on substantially all of these uncompleted contracts over the next 18 months.

X
- References No definition available. + Details
Name: | us-gaap_RevenueFromContractWithCustomerAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -URI http://asc.fasb.org/topic&trid=49130388 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 10 -URI http://asc.fasb.org/extlink&oid=123351226&loc=SL49130551-203045 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 13 -Subparagraph (b)(2) -URI http://asc.fasb.org/extlink&oid=123351226&loc=SL49130556-203045 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 12 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=123351226&loc=SL49130554-203045 Reference 5: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 9 -URI http://asc.fasb.org/extlink&oid=123351226&loc=SL49130550-203045 Reference 6: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 12 -Subparagraph (e) -URI http://asc.fasb.org/extlink&oid=123351226&loc=SL49130554-203045 Reference 7: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 12 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=123351226&loc=SL49130554-203045 Reference 8: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 12 -Subparagraph (d) -URI http://asc.fasb.org/extlink&oid=123351226&loc=SL49130554-203045 Reference 9: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 15 -URI http://asc.fasb.org/extlink&oid=123351226&loc=SL49130558-203045 Reference 10: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 12 -Subparagraph (c) -URI http://asc.fasb.org/extlink&oid=123351226&loc=SL49130554-203045 + Details
Name: | us-gaap_RevenueFromContractWithCustomerTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration