XML 153 R33.htm IDEA: XBRL DOCUMENT v3.22.0.1
Revenue from Contracts with Customers (Tables)
12 Months Ended
Dec. 31, 2021
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 year ended December 31, 2021:
US RegionsU.S. FederalCanadaNon-Solar DGAll OtherTotal
Project revenue$463,173 $340,686 $36,755 $25,377 $37,969 $903,960 
O&M revenue21,117 47,072 71 9,724 629 78,613 
Energy assets39,533 4,913 4,529 101,804 472 151,251 
Integrated-PV— — — — 41,202 41,202 
Other4,470 277 8,102 338 27,484 40,671 
Total revenues$528,293 $392,948 $49,457 $137,243 $107,756 $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 RegionsU.S. FederalCanadaNon-Solar DGAll OtherTotal
Project revenue$347,137 $327,626 $36,708 $21,883 $31,252 $764,606 
O&M revenue18,209 45,423 169 8,261 300 72,362 
Energy assets34,403 4,358 4,075 75,150 211 118,197 
Integrated-PV— — — — 39,112 39,112 
Other4,403 475 6,845 1,123 25,152 37,998 
Total revenues$404,152 $377,882 $47,797 $106,417 $96,027 $1,032,275 
The following table presents our revenue disaggregated by line of business and reportable segment for the year ended December 31, 2019:
US RegionsU.S. FederalCanadaNon-Solar DGAll OtherTotal
Project revenue$321,973 $240,656 $27,995 $9,221 $11,219 $611,064 
O&M revenue15,753 41,599 9,183 169 66,709 
Energy assets25,719 3,652 3,306 65,365 — 98,042 
Integrated-PV— — — — 47,953 47,953 
Other5,803 1,519 6,613 914 28,316 43,165 
Total revenues$369,248 $287,426 $37,919 $84,683 $87,657 $866,933 
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,
202120202019
Percentage of revenue recognized over time94 %94 %92 %
Summary of Contract Balances
The following table provides information about receivables, contract assets, and contract liabilities from contracts with customers:
 December 31, 2021December 31, 2020
Accounts receivable, net$161,970 $125,010 
Accounts receivable retainage43,067 30,189 
Contract Assets
Costs and estimated earnings in excess of billings306,172  185,960 
Contract Liabilities
Billings in excess of cost and estimated earnings35,918 33,984 
Billings in excess of cost and estimated earnings, non-current (1)
6,481 6,631 
Total contract liabilities$42,399 $40,615 
(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.
Summary of Project Development Costs on Projects Converted to Customer Contracts
The following table presents information related to our project development costs recognized in the consolidated statements of income on projects that converted to customer contracts:
Year Ended December 31,
202120202019
Project development costs recognized$12,737 $12,790 $35,172