v3.10.0.1

Pass-through Financing Obligations - Additional Information (Details) - USD ($) $ in Thousands | 6 Months Ended |
--- | --- | ---
Jun. 30, 2018 | Dec. 31, 2017
Property Subject to or Available for Operating Lease [Line Items] |  |
Initial lease term | 20 years |
Solar energy systems, gross | $ 3,808,879 | $ 3,441,797
Depreciation on lease | $ 463,983 | 399,280
Discount on expected remaining lease payments | 5.00% |
Solar energy systems under lease pass-through fund arrangements |  |
Property Subject to or Available for Operating Lease [Line Items] |  |
Initial lease term | 20 years |
Solar energy systems, gross | $ 499,400 | 464,200
Depreciation on lease | $ 71,900 | $ 63,700
Minimum | Solar energy systems under lease pass-through fund arrangements |  |
Property Subject to or Available for Operating Lease [Line Items] |  |
Initial lease term | 20 years |
Maximum | Solar energy systems under lease pass-through fund arrangements |  |
Property Subject to or Available for Operating Lease [Line Items] |  |
Initial lease term | 25 years |

X
- Definition Percentage of discount on expected remaining lease payments. + References No definition available. + Details
Name: | run_PercentageOfDiscountOnExpectedRemainingLeasePayments
Namespace Prefix: | run_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Term of the lessor's leasing arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. + References No definition available. + Details
Name: | us-gaap_LessorLeasingArrangementsOperatingLeasesTermOfContract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Definition The amount of accumulated depreciation, by major property class, recorded on property subject to or available for lease as of the balance sheet date. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 840 -SubTopic 20 -Section 50 -Paragraph 4 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=84164653&loc=d3e41551-112718 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 840 -SubTopic 20 -Section 45 -Paragraph 3 -URI http://asc.fasb.org/extlink&oid=77907726&loc=d3e41460-112716 + Details
Name: | us-gaap_PropertySubjectToOrAvailableForOperatingLeaseAccumulatedDepreciation
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount before accumulated depreciation of physical assets used in the normal conduct of business to produce goods and services subject to or available for lease. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 840 -SubTopic 20 -Section 45 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=77907726&loc=d3e41457-112716 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 840 -SubTopic 20 -Section 50 -Paragraph 4 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=84164653&loc=d3e41551-112718 + Details
Name: | us-gaap_PropertySubjectToOrAvailableForOperatingLeaseGross
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. + References No definition available. + Details
Name: | us-gaap_PropertySubjectToOrAvailableForOperatingLeaseLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_PropertyPlantAndEquipmentByTypeAxis=run_SolarEnergySystemsUnderLeasePassThroughArrangementsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RangeAxis=us-gaap_MinimumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RangeAxis=us-gaap_MaximumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |