| Summary of Disaggregation of Revenue | 
 The following table presents our revenue disaggregated by line of business and reportable segment for the year ended December 31, 2022: 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 
 | 
 | 
US Regions | 
 | 
U.S. Federal | 
 | 
Canada | 
 | 
Alternative Fuels | 
 | 
All Other | 
 | 
Total | 
 
| Project revenue | 
 | 
$ | 
1,049,465  | 
 | 
 | 
$ | 
333,846  | 
 | 
 | 
$ | 
44,273  | 
 | 
 | 
$ | 
—  | 
 | 
 | 
$ | 
53,680  | 
 | 
 | 
$ | 
1,481,264  | 
 | 
 
| O&M revenue | 
 | 
22,217  | 
 | 
 | 
51,857  | 
 | 
 | 
42  | 
 | 
 | 
10,377  | 
 | 
 | 
472  | 
 | 
 | 
84,965  | 
 | 
 
| Energy assets | 
 | 
47,372  | 
 | 
 | 
5,822  | 
 | 
 | 
4,447  | 
 | 
 | 
104,082  | 
 | 
 | 
368  | 
 | 
 | 
162,091  | 
 | 
 
| Integrated-PV | 
 | 
—  | 
 | 
 | 
—  | 
 | 
 | 
—  | 
 | 
 | 
—  | 
 | 
 | 
49,696  | 
 | 
 | 
49,696  | 
 | 
 
| Other | 
 | 
4,289  | 
 | 
 | 
366  | 
 | 
 | 
9,796  | 
 | 
 | 
—  | 
 | 
 | 
31,955  | 
 | 
 | 
46,406  | 
 | 
 
| Total revenues | 
 | 
$ | 
1,123,343  | 
 | 
 | 
$ | 
391,891  | 
 | 
 | 
$ | 
58,558  | 
 | 
 | 
$ | 
114,459  | 
 | 
 | 
$ | 
136,171  | 
 | 
 | 
$ | 
1,824,422  | 
 | 
 
  
The following table presents our revenue disaggregated by line of business and reportable segment for the year ended December 31, 2021: 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 
 | 
 | 
US Regions | 
 | 
U.S. Federal | 
 | 
Canada | 
 | 
Alternative Fuels | 
 | 
All Other | 
 | 
Total | 
 
| Project revenue | 
 | 
$ | 
488,507  | 
 | 
 | 
$ | 
340,686  | 
 | 
 | 
$ | 
36,776  | 
 | 
 | 
$ | 
—  | 
 | 
 | 
$ | 
37,991  | 
 | 
 | 
$ | 
903,960  | 
 | 
 
| O&M revenue | 
 | 
21,551  | 
 | 
 | 
47,072  | 
 | 
 | 
71  | 
 | 
 | 
9,288  | 
 | 
 | 
631  | 
 | 
 | 
78,613  | 
 | 
 
| Energy assets | 
 | 
39,433  | 
 | 
 | 
4,913  | 
 | 
 | 
4,532  | 
 | 
 | 
101,811  | 
 | 
 | 
562  | 
 | 
 | 
151,251  | 
 | 
 
| Integrated-PV | 
 | 
—  | 
 | 
 | 
—  | 
 | 
 | 
—  | 
 | 
 | 
—  | 
 | 
 | 
41,202  | 
 | 
 | 
41,202  | 
 | 
 
| Other | 
 | 
1,627  | 
 | 
 | 
277  | 
 | 
 | 
8,104  | 
 | 
 | 
124  | 
 | 
 | 
30,539  | 
 | 
 | 
40,671  | 
 | 
 
| Total revenues | 
 | 
$ | 
551,118  | 
 | 
 | 
$ | 
392,948  | 
 | 
 | 
$ | 
49,483  | 
 | 
 | 
$ | 
111,223  | 
 | 
 | 
$ | 
110,925  | 
 | 
 | 
$ | 
1,215,697  | 
 | 
 
  
The following table presents our revenue disaggregated by line of business and reportable segment for the year ended December 31, 2020: 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 
 | 
 | 
US Regions | 
 | 
U.S. Federal | 
 | 
Canada | 
 | 
Alternative Fuels | 
 | 
All Other | 
 | 
Total | 
 
| Project revenue | 
 | 
$ | 
369,341  | 
 | 
 | 
$ | 
327,626  | 
 | 
 | 
$ | 
36,689  | 
 | 
 | 
$ | 
—  | 
 | 
 | 
$ | 
30,950  | 
 | 
 | 
$ | 
764,606  | 
 | 
 
| O&M revenue | 
 | 
18,633  | 
 | 
 | 
45,423  | 
 | 
 | 
169  | 
 | 
 | 
7,848  | 
 | 
 | 
289  | 
 | 
 | 
72,362  | 
 | 
 
| Energy assets | 
 | 
33,792  | 
 | 
 | 
4,358  | 
 | 
 | 
4,069  | 
 | 
 | 
75,168  | 
 | 
 | 
810  | 
 | 
 | 
118,197  | 
 | 
 
| Integrated-PV | 
 | 
—  | 
 | 
 | 
—  | 
 | 
 | 
—  | 
 | 
 | 
—  | 
 | 
 | 
39,112  | 
 | 
 | 
39,112  | 
 | 
 
| Other | 
 | 
1,888  | 
 | 
 | 
475  | 
 | 
 | 
6,830  | 
 | 
 | 
612  | 
 | 
 | 
28,193  | 
 | 
 | 
37,998  | 
 | 
 
| Total revenues | 
 | 
$ | 
423,654  | 
 | 
 | 
$ | 
377,882  | 
 | 
 | 
$ | 
47,757  | 
 | 
 | 
$ | 
83,628  | 
 | 
 | 
$ | 
99,354  | 
 | 
 | 
$ | 
1,032,275  | 
 | 
 
  
See Note 16 for our revenue disaggregated by geographical region. 
The following table presents information related to our revenue recognized over time: 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 
 | 
 | 
Year Ended December 31, | 
 
 | 
 | 
2022 | 
 | 
2021 | 
 | 
2020 | 
 
| Percentage of revenue recognized over time | 
 | 
96  | 
% | 
 | 
95  | 
% | 
 | 
94  | 
% | 
 
  
 | 
| Summary of Contract Balances | 
 The following table provides information about receivables, contract assets, and contract liabilities from contracts with customers: 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 
|   | 
December 31, 2022 | 
 | 
December 31, 2021 | 
 
| Accounts receivable, net | 
$ | 
174,009  | 
 | 
 | 
$ | 
161,970  | 
 | 
 
| Accounts receivable retainage | 
38,057  | 
 | 
 | 
43,067  | 
 | 
 
| Contract Assets | 
 | 
 | 
 | 
 
| Costs and estimated earnings in excess of billings | 
576,363  | 
 | 
  | 
306,172  | 
 | 
 
| Contract Liabilities | 
 | 
 | 
 | 
 
| Billings in excess of cost and estimated earnings | 
34,796  | 
 | 
 | 
35,918  | 
 | 
 
Billings in excess of cost and estimated earnings, non-current (1)
  | 
7,617  | 
 | 
 | 
6,481  | 
 | 
 
| Total contract liabilities | 
$ | 
42,413  | 
 | 
 | 
$ | 
42,399  | 
 | 
 
 |  
| (1) Performance obligations that are expected to be completed beyond the next twelve months and are included in other liabilities in the consolidated balance sheets. |  
  
 |