XML 24 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 Revenue from Contracts with Customers
Revenue is recognized when a performance obligation is satisfied by transferring control over a product or service to a customer. Revenue is measured based on consideration specified in a contract with a customer and excludes any sales incentives and amounts collected on behalf of third parties. The Company is considered an agent for certain taxes collected from customers. As such, the Company presents revenues net of these taxes at the time of sale to be remitted to governmental authorities, including sales and use taxes.
As part of the adoption of ASC 606 - Revenue from Contracts with Customers, the Company elected the practical expedient to recognize the incremental costs of obtaining a contract as an expense when incurred if the amortization period of the asset that the Company otherwise would have recognized is 12 months or less.
Contract Estimates and Changes in Estimates
Changes in cost estimates on certain contracts can arise from, but not limited to, changes in productivity and performance expectations, availability of skilled labor in geographic locations of such projects, costs of labor and/or materials, changes in subcontractor productivity and performance, and extended overhead due to weather or other delays. These changes in estimates may result in the issuance of change orders, which can be approved or unapproved by the customer, or the assertion of contract claims. The Company recognizes amounts associated with change orders and claims as revenue if it is probable that the contract price will be adjusted and the amount of any such adjustment can be reasonably estimated. Change orders and claims are negotiated in the normal course of business and represent management's estimates of additional contract revenues that have been earned and are probable of collection.
As of June 30, 2025 and December 31, 2024, $45.8 million and $56.2 million, respectively, of unexecuted change orders were included in contract transaction price and in Contract assets or Contract liabilities, net on the unaudited condensed consolidated balance sheets. The Company was in the process of negotiating execution of these change orders in the normal course of business and the recognized amounts represent the Company’s best estimates of additional contract revenues for which it is not probable that a significant reversal of the revenue amounts will occur in the future.
As of June 30, 2025 and December 31, 2024, the Company recorded loss provisions of $0.7 million and $1.0 million, respectively, in Contract liabilities, net on the unaudited condensed consolidated balance sheets related to contracts that are still being completed.
The Company had claim positions of $34.4 million and $54.9 million, respectively, that were excluded from the contract transaction price as of June 30, 2025 and December 31, 2024, respectively. The Company continues to evaluate these claims.
The Company received notification in October 2023 from a customer that it is withholding payment of approximately $31.3 million on remaining outstanding billings, including retention, on a large project with a contract that was billed on a time and materials basis with no stated maximum price. The Company believes it has substantial defenses against these claims based upon the terms of the contract and it has performed under the terms of the contract. Therefore, the Company believes collection of the remaining outstanding billings, including retention, is probable and, as a result, the Company has recognized the revenue from this project in its results. However, there is uncertainty surrounding this matter, including the potential long-term nature of dispute resolution, the Company filing a lien on the property and the broad range of possible consideration amounts as a result of negotiations and potential litigation to resolve the dispute.
Additionally, changes in estimates may result in the recognition of revenue in the current period from performance obligations that were satisfied or partially satisfied in prior periods or the reversal of previously recognized revenue if the current estimated progress is less than the previous estimate. Changes in estimates can also result in contract losses, which are recognized in full when they are determined to be probable and can be reasonably estimated.
Operating revenues were positively net impacted by approximately 2.8% and 3.2% for the three and six months ended June 30, 2025, respectively, as a result of changes in estimates associated with performance obligations on fixed price contracts satisfied or partially satisfied prior to December 31, 2024.
Operating revenues were positively net impacted by approximately 3.0% and 3.4% for the three and six months ended June 30, 2024, respectively, as a result of changes in estimates associated with performance obligations on fixed price contracts satisfied or partially satisfied prior to December 31, 2023.
The changes in estimates resulted from changes in performance estimates due to revisions to total estimated costs and/or anticipated contract value and from the mitigation of risks and contingencies as projects progressed to completion. A minimal number of fixed priced contracts, each individually resulting in an increase to profitability in excess of $1.0 million, positively net impacted operating revenues by approximately 1.3% and 1.8% for the three and six months ended June 30, 2025, respectively, and 1.3% and 1.2% for the three and six months ended June 30, 2024, respectively. The changes in estimates were made in the ordinary course of business and there were no changes that resulted in material amounts that should have been recognized in a prior period.
Disaggregation of Revenue
In the following tables, revenues are disaggregated by contract type and customer type for each reportable segment. The Company believes this level of disaggregation best depicts how the nature, amount, timing and uncertainty of revenues and cash flows are affected by economic factors. For more information on the Company’s reportable segments, refer to Note 11 – Segment Information.
The following tables present revenue disaggregated by contract type:
Three months ended June 30, 2025
Electrical & Mechanical
Transmission & Distribution
Total
(In thousands)
Fixed-price$379,415 $113,774 $493,189 
Unit-price10,323 32,689 43,012 
Cost reimbursable*323,862 65,921 389,783 
Total contract revenues713,600 212,384 925,984 
Eliminations(1,986)(2,532)(4,518)
Total operating revenues
$711,614 $209,852 $921,466 
__________________
*Includes time and material, time and equipment, and cost reimbursable plus fee contracts.
Three months ended June 30, 2024
Electrical & Mechanical
Transmission & Distribution
Total
(In thousands)
Fixed-price$354,424 $90,600 $445,024 
Unit-price16,384 42,207 58,591 
Cost reimbursable*133,085 73,962 207,047 
Total contract revenues503,893 206,769 710,662 
Eliminations(1,878)(5,411)(7,289)
Total operating revenues
$502,015 $201,358 $703,373 
__________________
*Includes time and material, time and equipment, and cost reimbursable plus fee contracts.
Six months ended June 30, 2025
Electrical & Mechanical
Transmission & Distribution
Total
(In thousands)
Fixed-price$729,981 $207,377 $937,358 
Unit-price22,098 61,118 83,216 
Cost reimbursable*609,748 128,904 738,652 
Total contract revenues1,361,827 397,399 1,759,226 
Eliminations(6,222)(4,909)(11,131)
Total operating revenues
$1,355,605 $392,490 $1,748,095 
__________________
*Includes time and material, time and equipment, and cost reimbursable plus fee contracts.
Six months ended June 30, 2024
Electrical & Mechanical
Transmission & Distribution
Total
(In thousands)
Fixed-price$639,063 $175,646 $814,709 
Unit-price34,223 71,168 105,391 
Cost reimbursable*271,597 148,459 420,056 
Total contract revenues944,883 395,273 1,340,156 
Eliminations(3,473)(7,621)(11,094)
Total operating revenues
$941,410 $387,652 $1,329,062 
__________________
*Includes time and material, time and equipment, and cost reimbursable plus fee contracts.
The following table presents revenue disaggregated by customer type:
Three months ended June 30, Six months ended June 30,
2025202420252024
(In thousands)
Commercial
$507,717 $285,729 $927,029 $532,685 
Industrial
77,325 79,835 163,688 159,856 
Institutional
92,333 97,815 195,661 181,526 
Renewables
10,575 12,710 23,352 17,137 
Service & other
25,650 27,804 52,097 53,679 
Total Electrical & Mechanical
713,600 503,893 1,361,827 944,883 
Utility
184,446 182,158 349,500 353,253 
Transportation
27,938 24,611 47,899 42,020 
Total Transmission & Distribution
212,384 206,769 397,399 395,273 
Eliminations
(4,518)(7,289)(11,131)(11,094)
Total operating revenues
$921,466 $703,373 $1,748,095 $1,329,062 
Uncompleted Contracts and Contract Assets and Contract Liabilities
Costs, estimated earnings and billings on uncompleted contracts are summarized as follows as of:
June 30, 2025December 31, 2024
(In thousands)
Costs incurred on uncompleted contracts
$6,595,073 $7,034,838 
Estimated earnings
876,290 995,766 
Costs and estimated earnings on uncompleted contracts
7,471,363 8,030,604 
Less: billings to date
(7,457,215)(8,070,859)
Net contract assets (liabilities)
$14,148 $(40,255)
The timing of revenue recognition may differ from the timing of invoicing to customers. The timing of invoicing to customers does not necessarily correlate with the timing of revenues being recognized under the cost-to-cost method of accounting. Contracts from contracting services usually stipulate the timing of payment, which is defined by the terms found within the various contracts under which work was performed during the period. Contracts from contracting services are billed as work progresses in accordance with agreed upon contractual terms. Generally, billing to the customer occurs contemporaneous to revenue recognition. A variance in timing of the billings may result in contract assets or contract liabilities.
Contract assets consist of unbilled revenue and retainage. Unbilled revenue occurs when revenues are recognized under the cost-to-cost measure of progress, which exceed amounts billed on uncompleted contracts. Such amounts will be billed as standard contract terms allow, usually based on various measures of performance or achievement. Retainage represents amounts that have been contractually invoiced to customers and where payments have been partially withheld pending the achievement of certain milestones, satisfaction of other contractual conditions, or completion of the project. Contract assets are not considered a significant financing component as they are intended to protect the customer in the event the Company does not perform on its obligations under the contract.
Contract liabilities occur when there are billings in excess of revenues recognized under the cost-to-cost measure of progress on uncompleted contracts. Contract liabilities decrease as revenue is recognized from the satisfaction of the related performance obligation. Contract liabilities are not considered to have a significant financing component as they are used to meet working capital requirements that generally are higher in the early stages of a contract and are intended to protect the Company from the counterparty failing to meet its obligations under the contract.
The Company classifies Contract assets and Contract liabilities, net that may be settled after one year from the balance sheet date as current, consistent with the timing of the Company’s project operating cycle.
Contract assets and contract liabilities, net consisted of the following as of:
June 30, 2025December 31, 2024
(In thousands)
Unbilled revenue
$182,268 $124,007 
Retainage
62,234 43,042 
Contract assets
$244,502 $167,049 
Deferred revenue
$315,952 $279,430 
Accrued loss provision
671 1,021 
Less: retainage
(86,269)(73,147)
Contract liabilities, net
$230,354 $207,304 
The following table presents the opening and closing balances of contract assets (liabilities) as of:
June 30, 2025December 31, 2024
Contract Assets
Contract Liabilities, Net
Net Contract Assets (Liabilities)
Contract Assets
Contract Liabilities, Net
Net Contract Assets (Liabilities)
(In thousands)
Balance at beginning of period
$167,049 $(207,304)$(40,255)$206,235 $(140,108)$66,127 
Net change during period
77,453 (23,050)54,403 (39,186)(67,196)(106,382)
Balance at end of period
$244,502 $(230,354)$14,148 $167,049 $(207,304)$(40,255)
Contract assets and contract liabilities fluctuate period to period based on various factors, including, but not limited to, changes in the number and size of projects in progress at period end; variability in billing and payment terms, such as up-front or advance billings, interim or milestone billings, or deferred billings; variability in billing of retainage and the satisfaction of the specified condition; and unapproved change orders and contract claims recognized as revenues. The primary driver of the difference between the Company's opening and closing contract asset and contract liability balances is the timing of the Company's billings, including retainage, in relation to its performance of work.
The Company recognized a net increase in revenues of $34.8 million and $177.6 million for the three and six months ended June 30, 2025, respectively, related to previously recognized deferred revenues that were included in Contract liabilities, net as of December 31, 2024. The Company recognized a net increase in revenues of $24.0 million and $119.6 million for the three and six months ended June 30, 2024, respectively, related to previously recognized deferred revenues that were included in Contract liabilities, net as of December 31, 2023.
Remaining Performance Obligations
Remaining performance obligations include unrecognized revenues that the Company reasonably expects to be realized from the uncompleted portion of services to be performed under job-specific contracts to the extent management believes additional contract revenues will be earned and are deemed probable of collection. The majority of the Company's contracts for contracting services have an original duration of less than one year.
As of June 30, 2025 and December 31, 2024, the aggregate amount of the transaction price allocated to the Company's remaining performance obligations was $2.68 billion and $2.46 billion, respectively. The table below shows additional information regarding the Company’s remaining performance obligations as of June 30, 2025, including an estimate of when the Company expects to recognize its remaining performance obligations as revenues:
Within 12 monthsGreater than 12 months
(In thousands)
Electrical & Mechanical
$1,944,794 $392,232 
Transmission & Distribution
266,529 73,500 
Total
$2,211,323 $465,732