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

Revenue from Contracts with Customers | 6 Months Ended
--- | ---
Jun. 30, 2025
Revenue from Contract with Customer [Abstract] |
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 build, 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 over the life of the contract using a cost-to-cost input method to measure progress towards contract completion. We do not currently have any capitalized obtainment or fulfillment costs in our Consolidated 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. ​ We include estimated amounts of variable consideration in the contract price to the extent it is probable that a significant reversal of cumulative revenue recognized will not occur when the uncertainty associated with the variable consideration is resolved. Our estimates of variable consideration and determination of whether to include estimated amounts in the contract price are based largely on an assessment of our anticipated performance and all information (historical, current and forecasted) that is reasonably available to us. We reassess the amount of variable consideration each accounting period until the uncertainty associated with the variable consideration is resolved. Changes in the assessed amount of variable consideration are accounted for prospectively as a cumulative adjustment to revenue recognized in the current period. ​ 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 catch-up 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 catch-up basis, meaning we recognize in the current period the cumulative effect of the changes on current and prior periods based on our progress towards complete satisfaction of a performance obligation. 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. ​ During the three months ended June 30, 2025 and 2024, net revenue recognized from our performance obligations partially satisfied in the previous period positively impacted revenue by 4.4% and 2.4%, respectively, as a result of changes in estimates associated with performance obligations on contracts. During the six months ended June 30, 2025 and 2024, net revenue recognized from our performance obligations partially satisfied in the previous period positively impacted revenue by 5.0% and 3.2%, respectively, as a result of changes in estimates associated with performance obligations on contracts. ​ Disaggregation of Revenue ​ Our consolidated 2025 revenue was derived from contracts to provide service activities in the mechanical and electrical 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 service provided, customer type and activity type, 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 June 30, | ​ | ​ | Six Months Ended June 30,
Revenue by Service Provided |  | 2025 | ​ |  | 2024 | ​ |  | 2025 | ​ |  | 2024 | ​
Mechanical Segment | ​ | $ | 1,638,672 |  | 75.4 | % | ​ | $ | 1,451,679 |  | 80.2 | % | ​ | $ | 3,040,887 |  | 75.9 | % | ​ | $ | 2,636,688 |  | 78.8 | %
Electrical Segment | ​ | ​ | 534,647 | ​ | 24.6 | % | ​ | ​ | 358,611 | ​ | 19.8 | % | ​ | ​ | 963,718 | ​ | 24.1 | % | ​ | ​ | 710,618 | ​ | 21.2 | %
Total | ​ | $ | 2,173,319 | ​ | 100.0 | % | ​ | $ | 1,810,290 | ​ | 100.0 | % | ​ | $ | 4,004,605 | ​ | 100.0 | % | ​ | $ | 3,347,306 | ​ | 100.0 | %
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | Three Months Ended June 30, | ​ | ​ | Six Months Ended June 30,
Revenue by Type of Customer | ​ | 2025 | ​ | ​ | 2024 |  | ​ | 2025 | ​ | ​ | 2024 |
Technology | ​ | $ | 934,199 | ​ | 43.0 | % | ​ | $ | 561,313 | ​ | 31.0 | % | ​ | $ | 1,611,752 | ​ | 40.2 | % | ​ | $ | 1,026,127 | ​ | 30.7 | %
Manufacturing | ​ | ​ | 473,040 | ​ | 21.8 | % | ​ | ​ | 526,215 | ​ | 29.0 | % | ​ | ​ | 925,826 | ​ | 23.1 | % | ​ | ​ | 987,615 | ​ | 29.5 | %
Healthcare | ​ | ​ | 200,341 | ​ | 9.2 | % | ​ | ​ | 140,747 | ​ | 7.8 | % | ​ | ​ | 382,883 | ​ | 9.6 | % | ​ | ​ | 274,476 | ​ | 8.2 | %
Education | ​ | ​ | 194,845 | ​ | 8.9 | % | ​ | ​ | 193,433 | ​ | 10.7 | % | ​ | ​ | 356,087 | ​ | 8.9 | % | ​ | ​ | 327,416 | ​ | 9.8 | %
Office Buildings | ​ | ​ | 110,461 | ​ | 5.1 | % | ​ | ​ | 115,012 | ​ | 6.4 | % | ​ | ​ | 232,987 | ​ | 5.9 | % | ​ | ​ | 216,904 | ​ | 6.5 | %
Government | ​ | ​ | 107,753 | ​ | 5.0 | % | ​ | ​ | 91,073 | ​ | 5.0 | % | ​ | ​ | 204,034 | ​ | 5.1 | % | ​ | ​ | 178,874 | ​ | 5.3 | %
Retail, Restaurants and Entertainment | ​ | ​ | 85,107 | ​ | 3.9 | % | ​ | ​ | 114,501 | ​ | 6.3 | % | ​ | ​ | 162,116 | ​ | 4.0 | % | ​ | ​ | 195,086 | ​ | 5.8 | %
Multi-Family and Residential | ​ | ​ | 33,214 | ​ | 1.5 | % | ​ | ​ | 36,181 | ​ | 2.0 | % | ​ | ​ | 61,567 | ​ | 1.5 | % | ​ | ​ | 77,032 | ​ | 2.3 | %
Other | ​ | ​ | 34,359 | ​ | 1.6 | % | ​ | ​ | 31,815 | ​ | 1.8 | % | ​ | ​ | 67,353 | ​ | 1.7 | % | ​ | ​ | 63,776 | ​ | 1.9 | %
Total | ​ | $ | 2,173,319 | ​ | 100.0 | % | ​ | $ | 1,810,290 | ​ | 100.0 | % | ​ | $ | 4,004,605 | ​ | 100.0 | % | ​ | $ | 3,347,306 | ​ | 100.0 | %
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | Three Months Ended June 30, | ​ | ​ | Six Months Ended June 30,
Revenue by Activity Type | ​ | 2025 | ​ | ​ | 2024 |  | ​ | 2025 | ​ | ​ | 2024 |
New Construction | ​ | $ | 1,256,866 | ​ | 57.9 | % | ​ | $ | 1,082,272 | ​ | 59.8 | % | ​ | $ | 2,321,950 | ​ | 58.0 | % | ​ | $ | 1,981,248 | ​ | 59.2 | %
Existing Building Construction | ​ | ​ | 607,236 | ​ | 27.9 | % | ​ | ​ | 446,574 | ​ | 24.7 | % | ​ | ​ | 1,099,839 | ​ | 27.5 | % | ​ | ​ | 836,943 | ​ | 25.0 | %
Service Projects | ​ | ​ | 146,271 | ​ | 6.7 | % | ​ | ​ | 126,280 | ​ | 6.9 | % | ​ | ​ | 265,485 | ​ | 6.6 | % | ​ | ​ | 230,394 | ​ | 6.9 | %
Service Calls, Maintenance and Monitoring | ​ | ​ | 162,946 | ​ | 7.5 | % | ​ | ​ | 155,164 | ​ | 8.6 | % | ​ | ​ | 317,331 | ​ | 7.9 | % | ​ | ​ | 298,721 | ​ | 8.9 | %
Total | ​ | $ | 2,173,319 | ​ | 100.0 | % | ​ | $ | 1,810,290 | ​ | 100.0 | % | ​ | $ | 4,004,605 | ​ | 100.0 | % | ​ | $ | 3,347,306 | ​ | 100.0 | %
​ Contract Assets and Liabilities ​ 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 not considered to have a significant financing component, as they are intended to protect the customer in the event that we do not perform our obligations under the contract. ​ Contract liabilities consist of advance payments and billings in excess of revenue recognized. Advanced payments from customers related to work not yet started are classified as deferred revenue. Contract liabilities are not considered to have a significant financing component, as they are used to meet working capital requirements that are generally higher in the early stages of a contract and are intended to protect us from the other party failing to meet its obligations under the contract. Our contract assets and liabilities are reported in a net position on a contract-by-contract basis at the end of each reporting period. ​ Contract assets and liabilities in the Consolidated Balance Sheet consisted of the following amounts as of June 30, 2025 and December 31, 2024 (in thousands): ​
​ | ​ | ​ | ​ | ​ | ​
​ | June 30, 2025 | ​ | December 31, 2024
Contract assets: | ​ | ​ | ​ | ​ | ​
Costs and estimated earnings in excess of billings, less allowance for credit losses | $ | 203,404 | ​ | $ | 91,681
Contract liabilities: | ​ | ​ | ​ | ​ | ​
Billings in excess of costs and estimated earnings and deferred revenue | $ | 1,546,306 | ​ | $ | 1,149,257
​ In the first six months of 2025 and 2024, we recognized revenue of $871.6 million and $729.0 million related to our contract liabilities at January 1, 2025 and January 1, 2024, respectively. We did not have any impairment losses recognized on our receivables or contract assets in the first six months of 2025 and 2024. ​ 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 June 30, 2025, the aggregate amount of the transaction price allocated to remaining performance obligations was $8.12 billion. The Company expects to recognize revenue on approximately 65-75% 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 -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 9 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-9 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 10 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-10 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 15 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-15 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 12 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12 Reference 5: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 12 -Subparagraph (b) -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12 Reference 6: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 12 -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12 Reference 7: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 12 -Subparagraph (d) -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12 Reference 8: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 12 -Subparagraph (e) -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12 Reference 9: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 13 -Subparagraph (b)(2) -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-13 Reference 10: http://www.xbrl.org/2003/role/disclosureRef -Name Accounting Standards Codification -Topic 606 -Publisher FASB -URI https://asc.fasb.org/606/tableOfContent + Details
Name: | us-gaap_RevenueFromContractWithCustomerTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration