XML 50 R31.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Revenue from Contracts with Customers (Tables)
6 Months Ended
Jun. 30, 2024
Revenue from Contract with Customer [Abstract]  
Summary of Disaggregation of Revenue
The following table presents our revenue disaggregated by line of business and reportable segment for the three months ended June 30, 2024:
North America RegionsU.S. FederalEuropeAlternative FuelsAll OtherTotal
Project revenue$178,742 $68,080 $70,064 $13,884 $(7)$330,763 
O&M revenue8,511 14,628 895 2,136 — 26,170 
Energy assets19,746 3,724 189 29,728 29 53,416 
Other1,132 305 1,911 104 24,181 27,633 
Total revenues$208,131 $86,737 $73,059 $45,852 $24,203 $437,982 
The following table presents our revenue disaggregated by line of business and reportable segment for the three months ended June 30, 2023:
North America RegionsU.S. FederalEuropeAlternative FuelsAll OtherTotal
Project revenue$124,584 $63,904 $40,399 $— $— $228,887 
O&M revenue6,362 13,901 460 2,295 — 23,018 
Energy assets19,391 2,164 452 28,021 (22)50,006 
Other1,434 50 2,214 — 21,465 25,163 
Total revenues$151,771 $80,019 $43,525 $30,316 $21,443 $327,074 
The following table presents our revenue disaggregated by line of business and reportable segment for the six months ended June 30, 2024:
North America RegionsU.S. FederalEuropeAlternative FuelsAll OtherTotal
Project revenue$294,953 $111,559 $111,488 $17,047 $— $535,047 
O&M revenue15,444 29,906 1,642 4,513 — 51,505 
Energy assets33,500 5,653 360 57,028 29 96,570 
Other2,519 509 3,691 123 46,424 53,266 
Total revenues$346,416 $147,627 $117,181 $78,711 $46,453 $736,388 
The following table presents our revenue disaggregated by line of business and reportable segment for the six months ended June 30, 2023:
North America RegionsU.S. FederalEuropeAlternative FuelsAll OtherTotal
Project revenue$243,815 $109,453 $57,599 $— $1,250 $412,117 
O&M revenue11,901 26,601 793 5,981 — 45,276 
Energy assets33,798 3,240 971 52,674 95 90,778 
Other2,799 281 3,258 — 43,607 49,945 
Total revenues$292,313 $139,575 $62,621 $58,655 $44,952 $598,116 

The following table presents information related to our revenue recognized over time:
Three Months Ended June 30,Six Months Ended June 30,
2024202320242023
Percentage of revenue recognized over time96%95%95%94%
The remainder of our revenue is for products and services transferred at a point in time, at which point revenue is recognized.
We attribute revenues to customers based on the location of the customer. The following table presents information related to our revenues by geographic area:
Three Months Ended June 30,Six Months Ended June 30,
2024202320242023
United States$349,500 $270,957 $588,599 $504,041 
Canada15,416 13,566 30,596 30,800 
Europe73,066 42,551 117,193 63,275 
Total revenues$437,982 $327,074 $736,388 $598,116 
Summary of Contract with Customer, Asset and Liability
The following tables provide information about receivables, contract assets and contract liabilities from contracts with customers:
 June 30, 2024December 31, 2023
Accounts receivable, net$154,665 $153,362 
Accounts receivable retainage, net39,225 33,826 
Contract Assets:
Costs and estimated earnings in excess of billings $651,748 $636,163 
Contract Liabilities:
Billings in excess of cost and estimated earnings$97,493 $52,903 
Billings in excess of cost and estimated earnings, non-current (1)
20,340 18,688 
Total contract liabilities$117,833 $71,591 
June 30, 2023December 31, 2022
Accounts receivable, net$123,361 $174,009 
Accounts receivable retainage, net37,803 38,057 
Contract Assets:
Costs and estimated earnings in excess of billings$575,113 $576,363 
Contract Liabilities:
Billings in excess of cost and estimated earnings$40,459 $34,796 
Billings in excess of cost and estimated earnings, non-current (1)
15,659 7,617 
Total contract liabilities$56,118 $42,413 
(1) Performance obligations that are expected to be completed beyond the next twelve months and are included in other liabilities in the condensed consolidated balance sheets.