XML 21 R10.htm IDEA: XBRL DOCUMENT
v3.21.2

Revenue from Contracts with Customers | 9 Months Ended
--- | ---
Sep. 30, 2021
Revenue from Contract with Customers |
Revenue from Contracts with Customers | 3. Revenue from Contracts with Customers ​ Revenue is recognized when control of the promised goods or services is transferred to our customers, in an amount that reflects the consideration to which we expect to be entitled in exchange for those goods or services. Sales-based taxes are excluded from revenue. ​ We provide mechanical and electrical contracting services. Our mechanical segment principally includes HVAC, plumbing, piping and controls, as well as off-site construction, monitoring and fire protection. Our electrical segment includes installation and servicing of electrical systems. We install, maintain, repair and replace products and systems throughout the United States. All of our revenue is recognized over time as we deliver goods and services to our customers. Revenue can be earned based on an agreed-upon fixed price or based on actual costs incurred, marked up at an agreed-upon percentage. ​ We account for a contract when: (i) it has approval and commitment from both parties, (ii) the rights of the parties are identified, (iii) payment terms are identified, (iv) the contract has commercial substance, and (v) collectability of consideration is probable. We consider the start of a project to be when the above criteria have been met and we either have written authorization from the customer to proceed or an executed contract. ​ We generally do not incur significant incremental costs related to obtaining or fulfilling a contract prior to the start of a project. On rare occasions, when significant pre-contract costs are incurred, they are capitalized and amortized on a percentage of completion basis over the life of the contract. We do not currently have any capitalized obtainment or fulfillment costs on our Balance Sheet and have not incurred any impairment loss on such costs in the current year. ​ Due to the nature of the work required to be performed on many of our performance obligations, the estimation of total revenue and cost at completion (the process described below in more detail) is complex, subject to many variables and requires significant judgment. The consideration to which we are entitled on our long-term contracts may include both fixed and variable amounts. Variable amounts can either increase or decrease the transaction price. A common example of variable amounts that can either increase or decrease contract value are pending change orders that represent contract modifications for which a change in scope has been authorized or acknowledged by our customer, but the final adjustment to contract price is yet to be negotiated. Other examples of positive variable revenue include amounts awarded upon achievement of certain performance metrics, program milestones or cost of completion date targets and can be based upon customer discretion. Variable amounts can result in a deduction from contract revenue if we fail to meet stated performance requirements, such as complying with the construction schedule. ​ Contracts are often modified 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 performance obligation(s). 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 or decrease) on a cumulative catchup basis. ​ We have a Company-wide policy requiring periodic review of the Estimate at Completion in which management reviews the progress and execution of our performance obligations and estimated remaining obligations. As part of this process, management reviews information including, but not limited to, any outstanding key contract matters, progress towards completion and the related program schedule, identified risks and opportunities and the related changes in estimates of revenue and costs. The risks and opportunities include management's judgment about the ability and cost to achieve the schedule (e.g., the number and type of milestone events), technical requirements (e.g., a newly developed product versus a mature product) and other contract requirements. Management must make assumptions and estimates regarding labor productivity and availability, the complexity of the work to be performed, the availability of materials, the length of time to complete the performance obligation (e.g., to estimate increases in wages and prices for materials and related support cost allocations), execution by our subcontractors, the availability and timing of funding from our customer, and overhead cost rates, among other variables. ​ Based on this analysis, any adjustments to revenue, cost of services, and the related impact to operating income are recognized as necessary in the quarter when they become known. These adjustments may result from positive program performance if we determine we will be successful in mitigating risks surrounding the technical, schedule and cost aspects of those performance obligations or realizing related opportunities and may result in an increase in operating income during the performance of individual performance obligations. Likewise, if we determine we will not be successful in mitigating these risks or realizing related opportunities, these adjustments may result in a decrease in operating income. Changes in estimates of revenue, cost of services and the related impact to operating income are recognized quarterly on a cumulative catchup basis, meaning we recognize in the current period the cumulative effect of the changes on current and prior periods based on a performance obligation's percentage of completion. A significant change in one or more of these estimates could affect the profitability of one or more of our performance obligations. For projects in which estimates of total costs to be incurred on a performance obligation exceed total estimates of revenue to be earned, a provision for the entire loss on the performance obligation is recognized in the period the loss is determined. ​ In the first nine months of 2021 and 2020, net revenue recognized from our performance obligations satisfied in previous periods was not material. ​ Disaggregation of Revenue ​ Our consolidated 2021 revenue was derived from contracts to provide service activities in the mechanical and electrical services segments we serve. Refer to Note 11 “Segment Information” for additional information on our reportable segments. We disaggregate our revenue from contracts with customers by activity, customer type and service provided, as we believe it best depicts how the nature, amount, timing and uncertainty of our revenue and cash flows are affected by economic factors. See details in the following tables (dollars in thousands): ​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | Three Months Ended September 30, | ​ | ​ | Nine Months Ended September 30,
Revenue by Service Provided |  | 2021 | ​ |  | 2020 | ​ |  | 2021 | ​ |  | 2020 | ​
Mechanical Services | ​ | $ | 690,680 |  | 82.8 | % | ​ | $ | 625,660 |  | 87.6 | % | ​ | $ | 1,868,096 |  | 84.2 | % | ​ | $ | 1,823,117 |  | 84.5 | %
Electrical Services | ​ | ​ | 143,216 | ​ | 17.2 | % | ​ | ​ | 88,439 | ​ | 12.4 | % | ​ | ​ | 349,456 | ​ | 15.8 | % | ​ | ​ | 334,581 | ​ | 15.5 | %
Total | ​ | $ | 833,896 | ​ | 100.0 | % | ​ | $ | 714,099 | ​ | 100.0 | % | ​ | $ | 2,217,552 | ​ | 100.0 | % | ​ | $ | 2,157,698 | ​ | 100.0 | %
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | Three Months Ended September 30, | ​ | ​ | Nine Months Ended September 30,
Revenue by Type of Customer | ​ | 2021 | ​ | ​ | 2020 |  | ​ | 2021 | ​ | ​ | 2020 |
Industrial | ​ | $ | 379,605 | ​ | 45.5 | % | ​ | $ | 268,651 | ​ | 37.6 | % | ​ | $ | 960,263 | ​ | 43.3 | % | ​ | $ | 844,719 | ​ | 39.1 | %
Education | ​ | ​ | 115,536 | ​ | 13.9 | % | ​ | ​ | 135,992 | ​ | 19.0 | % | ​ | ​ | 300,374 | ​ | 13.5 | % | ​ | ​ | 375,580 | ​ | 17.4 | %
Office Buildings | ​ | ​ | 77,806 | ​ | 9.3 | % | ​ | ​ | 81,183 | ​ | 11.4 | % | ​ | ​ | 229,816 | ​ | 10.4 | % | ​ | ​ | 232,349 | ​ | 10.8 | %
Healthcare | ​ | ​ | 101,446 | ​ | 12.2 | % | ​ | ​ | 86,061 | ​ | 12.1 | % | ​ | ​ | 292,541 | ​ | 13.2 | % | ​ | ​ | 281,370 | ​ | 13.0 | %
Government | ​ | ​ | 40,268 | ​ | 4.8 | % | ​ | ​ | 40,631 | ​ | 5.7 | % | ​ | ​ | 125,939 | ​ | 5.7 | % | ​ | ​ | 119,444 | ​ | 5.5 | %
Retail, Restaurants and Entertainment | ​ | ​ | 62,365 | ​ | 7.5 | % | ​ | ​ | 64,212 | ​ | 9.0 | % | ​ | ​ | 155,874 | ​ | 7.0 | % | ​ | ​ | 190,043 | ​ | 8.8 | %
Multi-Family and Residential | ​ | ​ | 29,741 | ​ | 3.6 | % | ​ | ​ | 21,776 | ​ | 3.0 | % | ​ | ​ | 82,742 | ​ | 3.7 | % | ​ | ​ | 61,062 | ​ | 2.8 | %
Other | ​ | ​ | 27,129 | ​ | 3.2 | % | ​ | ​ | 15,593 | ​ | 2.2 | % | ​ | ​ | 70,003 | ​ | 3.2 | % | ​ | ​ | 53,131 | ​ | 2.6 | %
Total | ​ | $ | 833,896 | ​ | 100.0 | % | ​ | $ | 714,099 | ​ | 100.0 | % | ​ | $ | 2,217,552 | ​ | 100.0 | % | ​ | $ | 2,157,698 | ​ | 100.0 | %
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | Three Months Ended September 30, | ​ | ​ | Nine Months Ended September 30,
Revenue by Activity Type | ​ | 2021 | ​ | ​ | 2020 |  | ​ | 2021 | ​ | ​ | 2020 |
New Construction | ​ | $ | 397,446 | ​ | 47.6 | % | ​ | $ | 310,000 | ​ | 43.4 | % | ​ | $ | 1,029,397 | ​ | 46.4 | % | ​ | $ | 1,034,833 | ​ | 48.0 | %
Existing Building Construction | ​ | ​ | 250,893 | ​ | 30.1 | % | ​ | ​ | 235,798 | ​ | 33.0 | % | ​ | ​ | 682,811 | ​ | 30.8 | % | ​ | ​ | 668,067 | ​ | 30.9 | %
Service Projects | ​ | ​ | 75,525 | ​ | 9.1 | % | ​ | ​ | 69,162 | ​ | 9.7 | % | ​ | ​ | 201,848 | ​ | 9.1 | % | ​ | ​ | 179,188 | ​ | 8.3 | %
Service Calls, Maintenance and Monitoring | ​ | ​ | 110,032 | ​ | 13.2 | % | ​ | ​ | 99,139 | ​ | 13.9 | % | ​ | ​ | 303,496 | ​ | 13.7 | % | ​ | ​ | 275,610 | ​ | 12.8 | %
Total | ​ | $ | 833,896 | ​ | 100.0 | % | ​ | $ | 714,099 | ​ | 100.0 | % | ​ | $ | 2,217,552 | ​ | 100.0 | % | ​ | $ | 2,157,698 | ​ | 100.0 | %
​ Contract Assets and Liabilities ​ Project contracts typically provide for a schedule of billings or invoices to the customer based on our job-to-date percentage of completion of specific tasks inherent in the fulfillment of our performance obligation(s). The schedules for such billings usually do not precisely match the schedule on which costs are incurred. Contract assets include unbilled amounts typically resulting from sales under long term contracts when the cost to cost method of revenue recognition is used, revenue recognized exceeds the amount billed to the customer and right to payment is conditional or subject to completing a milestone, such as a phase of the project. Contract assets are generally classified as current. ​ Contract liabilities consist of advance payments and billings in excess of revenue recognized. Our contract assets and liabilities are reported in a net position on a contract by contract basis at the end of each reporting period. We classify advance payments and billings in excess of revenue recognized as current. It is very unusual for us to have advanced payments with a term of greater than one year; therefore, our contract assets and liabilities are usually all current. If we have advanced payments with a term greater than one year, the noncurrent portion of advanced payments would be included in other long-term liabilities in our consolidated Balance Sheets. ​ The following table presents the changes in contract assets and contract liabilities (in thousands): ​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | Nine Months Ended September 30, | ​ | ​ | Year Ended December 31,
​ | 2021 | ​ | 2020
​ | Contract |  | Contract | ​ | Contract |  | Contract
​ | Assets | ​ | Liabilities | ​ | Assets | ​ | Liabilities
Balance at beginning of period | $ | 18,622 | ​ | $ | 226,237 | ​ | $ | 2,736 | ​ | $ | 166,918
Change due to acquisitions / disposals | ​ | 2,378 | ​ | ​ | 18,084 | ​ | ​ | 9,509 | ​ | ​ | 39,885
Change related to credit allowance | ​ | 45 | ​ | ​ | — | ​ | ​ | (79) | ​ | ​ | —
Other changes in the period | ​ | (6,073) | ​ | ​ | 257 | ​ | ​ | 6,456 | ​ | ​ | 19,434
Balance at end of period | $ | 14,972 | ​ | $ | 244,578 | ​ | $ | 18,622 |  | $ | 226,237
​ In the first nine months of 2021 and 2020, we recognized revenue of $204.6 million and $164.4 million related to our contract liabilities at January 1, 2021 and January 1, 2020, respectively. ​ We did not have any impairment losses recognized on our receivables or contract assets in the first nine months of 2021 and 2020. ​ Remaining Performance Obligations ​ Remaining construction performance obligations represent the remaining transaction price of firm orders for which work has not been performed and exclude unexercised contract options. As of September 30, 2021, the aggregate amount of the transaction price allocated to remaining performance obligations was $1.94 billion. The Company expects to recognize revenue on approximately 80-85% of the remaining performance obligations over the next 12 months, with the remaining recognized thereafter. Our service maintenance agreements are generally one-year renewable agreements. We have adopted the practical expedient that allows us to not include service maintenance contracts with a total term of one year or less; therefore, we do not report unfulfilled performance obligations for service maintenance agreements.

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