XML 30 R11.htm IDEA: XBRL DOCUMENT
v3.19.3.a.u2

Revenue Recognition | 12 Months Ended
--- | ---
Dec. 31, 2019
Revenue from Contract with Customer [Abstract] |
Revenue Recognition | NOTE 3 – REVENUE RECOGNITION Our revenues are derived primarily through contracts with customers whereby we install insulation and other complementary building products and are recognized when control of the promised goods or services is transferred to our customers, in an amount that reflects the consideration we expect to be entitled to in exchange for those goods or services. We account for a contract when it has approval and commitment from both parties, the rights of the parties are identified, payment terms are identified, the contract has commercial substance and collectability of consideration is probable. An insignificant portion of our sales, primarily retail sales, is accounted for on a point-in-time basis when the sale occurs, adjusted accordingly for any return provisions. We do offer assurance-type warranties on certain of our installed products and services that do not represent a separate performance obligation and, as such, do not impact the timing or extent of revenue recognition. For contracts that are not complete at the reporting date, we recognize revenue over time utilizing a cost-to-cost input method as we believe this represents the best measure of when goods and services are transferred to the customer. When this method is used, we estimate the costs to complete individual contracts and record as revenue that portion of the total contract price that is considered complete based on the relationship of costs incurred to date to total anticipated costs. Under the cost-to-cost method, the use of estimated costs to complete each contract is a significant variable in the process of determining recognized revenue, requires judgment and can change throughout the duration of a contract due to contract modifications and other factors impacting job completion. The costs of earned revenue include all direct material and labor costs and those indirect costs related to contract performance, such as indirect labor, supplies, tools and repairs. Provisions for estimated losses on uncompleted contracts are made in the period in which such losses are determined. Our long-term contracts can be subject to modification to account for changes in contract specifications and requirements. We consider contract modifications to exist when the modification either creates new, or changes the existing, enforceable rights and obligations. Most of our contract modifications are for goods or services that are not distinct from the existing contract due to the significant integration service provided in the context of the contract and are accounted for as if they were part of that existing contract. The effect of a contract modification on the transaction price and our measure of progress for the performance obligation to which it relates, is recognized as an adjustment to revenue (either as an increase in or a reduction of revenue) on a cumulative catch-up basis. Payment terms typically do not exceed 30 days for short-term contracts and typically do not exceed 60 days for long-term contracts with customers. All contracts are billed either contractually or as work is performed. Billing on our long-term contracts occurs primarily on a monthly basis throughout the contract period whereby we submit invoices for customer payment based on actual or estimated costs incurred during the billing period. On certain of our long-term contracts the customer may withhold payment on an invoice equal to a percentage of the invoice amount, which will be subsequently paid after satisfactory completion of each installation project. This amount is referred to as retainage and is common practice in the construction industry, as it allows for customers to ensure the quality of the service performed prior to full payment. Retainage receivables are classified as current or long-term assets based on the expected time to project completion. 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):
|  | Year ended December 31, |
|  | 2019 |  |  |  |  |  | 2018 |  |  |  |
Residential new construction |  | $ | 1,138,475 |  |  |  | 75 | % |  | $ | 1,026,473 |  |  |  | 77 | %
Repair and remodel |  |  | 98,771 |  |  |  | 7 | % |  |  | 89,977 |  |  |  | 7 | %
Commercial |  |  | 274,383 |  |  |  | 18 | % |  |  | 219,982 |  |  |  | 16 | %
Net revenues |  | $ | 1,511,629 |  |  |  | 100 | % |  | $ | 1,336,432 |  |  |  | 100 | %
|  | Year ended December 31, |
|  | 2019 |  |  |  |  |  | 2018 |  |  |  |
Insulation |  | $ | 970,070 |  |  |  | 64 | % |  | $ | 876,118 |  |  |  | 66 | %
Waterproofing |  |  | 112,075 |  |  |  | 7 | % |  |  | 97,683 |  |  |  | 7 | %
Shower doors, shelving and mirrors |  |  | 105,745 |  |  |  | 7 | % |  |  | 90,352 |  |  |  | 7 | %
Garage doors |  |  | 89,959 |  |  |  | 6 | % |  |  | 79,539 |  |  |  | 6 | %
Rain gutters |  |  | 49,788 |  |  |  | 3 | % |  |  | 44,203 |  |  |  | 3 | %
Window blinds |  |  | 41,641 |  |  |  | 3 | % |  |  | 28,981 |  |  |  | 2 | %
Other building products |  |  | 142,351 |  |  |  | 10 | % |  |  | 119,556 |  |  |  | 9 | %
Net revenues |  | $ | 1,511,629 |  |  |  | 100 | % |  | $ | 1,336,432 |  |  |  | 100 | %
Contract assets and liabilities related to our uncompleted contracts and customer deposits were as follows (in thousands):
|  | As of December 31, |
|  | 2019 |  |  | 2018 |
Contract assets |  | $ | 22,138 |  |  | $ | 15,092 |
Contract liabilities |  |  | (8,888 | ) |  |  | (7,468 | )
Uncompleted contracts were as follows (in thousands):
|  | As of December 31, |
|  | 2019 |  |  | 2018 |
Costs incurred on uncompleted contracts |  | $ | 110,818 |  |  | $ | 114,826 |
Estimated earnings |  |  | 61,185 |  |  |  | 58,952 |
Total |  |  | 172,003 |  |  |  | 173,778 |
Less: Billings to date |  |  | 155,599 |  |  |  | 163,112 |
Net under billings |  | $ | 16,404 |  |  | $ | 10,666 |
Net under billings were as follows (in thousands):
|  | As of December 31, |
|  | 2019 |  |  | 2018 |
Costs and estimated earnings in excess of billings on uncompleted contracts (contract assets) |  | $ | 22,138 |  |  | $ | 15,092 |
Billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities) |  |  | (5,734 | ) |  |  | (4,426 | )
Net under billings |  | $ | 16,404 |  |  | $ | 10,666 |
The difference between contract assets and contract liabilities as of December 31, 2019 compared to December 31, 2018 is primarily the result of timing differences between our performance of obligations under contracts and customer payments. During the year ended December 31, 2019, we recognized $7.2 million of revenue that was included in the contract liability balance at December 31, 2018. We did no t recognize any impairment losses on our receivables and contract assets during the years ended December 31, 2019 and 2018. 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, 2019, the aggregate amount of the transaction price allocated to remaining uncompleted contracts was $90.7 million. We expect to satisfy remaining performance obligations and recognize revenue on substantially all of these uncompleted contracts over the next 18 months. Practical Expedients and Exemptions We generally expense sales commissions and other incremental costs of obtaining a contract when incurred because the amortization period is usually one year or less. Sales commissions are recorded within selling expenses on the Consolidated Statements of Operations and Comprehensive Income. We do not disclose the value of unsatisfied performance obligations for contracts with an original expected length of one year or less.

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 + Details
Name: | us-gaap_RevenueFromContractWithCustomerTextBlock
Namespace Prefix: | us-gaap_
Data Type: | nonnum:textBlockItemType
Balance Type: | na
Period Type: | duration