v3.10.0.1

Commitments and Contingencies - Additional Information (Details) - USD ($) $ in Millions |  |  | 6 Months Ended |
--- | --- | --- | --- | ---
Aug. 08, 2018 | May 04, 2018 | Jun. 30, 2018 | Dec. 31, 2017
Other Commitments [Line Items] |  |  |  |
Letters of credit outstanding, amount |  |  | $ 11.9 | $ 16.4
Purchase commitment |  |  | $ 220.0 |
Letter of Credit | Minimum |  |  |  |
Other Commitments [Line Items] |  |  |  |
Letter of credit, fee percentage |  |  | 2.50% |
Letter of Credit | Maximum |  |  |  |
Other Commitments [Line Items] |  |  |  |
Letter of credit, fee percentage |  |  | 3.25% |
Settled litigation | Cohen, et al. v. Sunrun Inc., et al. |  |  |  |
Other Commitments [Line Items] |  |  |  |
Settlement amount |  | $ 32.0 |  |
Settlement amount, funded by insurers |  | 30.1 |  |
Settlement amount, accrual |  | $ 1.9 |  |
Subsequent event | Settled litigation | Fink, et al. v. Sunrun Inc., et al. |  |  |  |
Other Commitments [Line Items] |  |  |  |
Settlement amount | $ 2.5 |  |  |

X
- Definition The total amount of the contingent obligation under letters of credit outstanding as of the reporting date. + References No definition available. + Details
Name: | us-gaap_LettersOfCreditOutstandingAmount
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition The fee, expressed as a percentage of the line of credit facility, for available but unused credit capacity under the credit facility. + References No definition available. + Details
Name: | us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage
Namespace Prefix: | us-gaap_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount awarded to other party in judgment or settlement of litigation. + References No definition available. + Details
Name: | us-gaap_LitigationSettlementAmountAwardedToOtherParty
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition The minimum amount the entity agreed to spend under the long-term purchase commitment. + References No definition available. + Details
Name: | us-gaap_LongTermPurchaseCommitmentAmount
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount of loss contingency liability. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 450 -SubTopic 20 -Section 50 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=82911808&loc=d3e14326-108349 + Details
Name: | us-gaap_LossContingencyAccrualAtCarryingValue
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition The liability as of the balance sheet date representing required funding mandated by statute or regulatory authority that is related directly or indirectly to underwriting activities, including pools for self-insurance and excluding premium taxes and income taxes. The funds derived from the assessments generally enable a government guarantor to pay insurance claims in the event that the underwriting insurer is insolvent or otherwise unable to meet its payment obligations. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 405 -SubTopic 30 -Section 15 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=51828112&loc=d3e23169-109297 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 405 -SubTopic 30 -Section 50 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=6392405&loc=d3e24119-109301 + Details
Name: | us-gaap_LossContingencyUndiscountedAmountOfInsuranceRelatedAssessmentLiability
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

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_OtherCommitmentsLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_CreditFacilityAxis=us-gaap_LetterOfCreditMember
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: |

X
- Details
Name: | us-gaap_LitigationStatusAxis=us-gaap_SettledLitigationMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_LitigationCaseAxis=run_Cohenetal.v.SunrunInc.etal.Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_LitigationCaseAxis=run_Finketal.v.SunrunInc.etal.Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |