Quarterly report pursuant to Section 13 or 15(d)

Revenue Recognition - Disaggregation (Details)

v3.21.2
Revenue Recognition - Disaggregation (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
Revenue Recognition        
Net sales $ 834,255 $ 646,099 $ 1,577,053 $ 1,299,327
Insulation and accessories        
Revenue Recognition        
Net sales 661,140 507,010 1,255,704 1,027,196
Glass and windows        
Revenue Recognition        
Net sales 47,167 39,371 90,214 80,690
Gutters        
Revenue Recognition        
Net sales 53,003 41,869 92,894 75,402
All other        
Revenue Recognition        
Net sales 72,945 57,849 138,241 116,039
Residential        
Revenue Recognition        
Net sales 652,610 505,534 1,229,394 1,012,266
Commercial        
Revenue Recognition        
Net sales 181,645 140,565 347,659 287,061
Operating Segment | Installation        
Revenue Recognition        
Net sales 605,625 466,569 1,138,378 942,442
Operating Segment | Installation | Insulation and accessories        
Revenue Recognition        
Net sales 478,076 360,999 895,673 730,995
Operating Segment | Installation | Glass and windows        
Revenue Recognition        
Net sales 47,167 39,371 90,214 80,690
Operating Segment | Installation | Gutters        
Revenue Recognition        
Net sales 22,416 21,577 41,774 40,506
Operating Segment | Installation | All other        
Revenue Recognition        
Net sales 57,966 44,622 110,717 90,251
Operating Segment | Installation | Residential        
Revenue Recognition        
Net sales 486,266 370,969 904,343 744,250
Operating Segment | Installation | Commercial        
Revenue Recognition        
Net sales 119,359 95,600 234,035 198,192
Operating Segment | Distribution        
Revenue Recognition        
Net sales 273,364 216,336 524,965 430,558
Operating Segment | Distribution | Insulation and accessories        
Revenue Recognition        
Net sales 220,257 175,559 431,751 355,808
Operating Segment | Distribution | Gutters        
Revenue Recognition        
Net sales 36,851 25,979 62,689 45,970
Operating Segment | Distribution | All other        
Revenue Recognition        
Net sales 16,256 14,798 30,525 28,780
Operating Segment | Distribution | Residential        
Revenue Recognition        
Net sales 203,063 163,615 395,108 326,071
Operating Segment | Distribution | Commercial        
Revenue Recognition        
Net sales 70,301 52,721 129,857 104,487
Intercompany Eliminations and Other Adjustments        
Revenue Recognition        
Net sales (44,734) (36,806) (86,290) (73,673)
Intercompany Eliminations and Other Adjustments | Insulation and accessories        
Revenue Recognition        
Net sales (37,193) (29,548) (71,720) (59,607)
Intercompany Eliminations and Other Adjustments | Gutters        
Revenue Recognition        
Net sales (6,264) (5,687) (11,569) (11,074)
Intercompany Eliminations and Other Adjustments | All other        
Revenue Recognition        
Net sales (1,277) (1,571) (3,001) (2,992)
Intercompany Eliminations and Other Adjustments | Residential        
Revenue Recognition        
Net sales (36,719) (29,050) (70,057) (58,055)
Intercompany Eliminations and Other Adjustments | Commercial        
Revenue Recognition        
Net sales $ (8,015) $ (7,756) $ (16,233) $ (15,618)