v3.10.0.1

Stock-Based Compensation - Summary of Stock-Based Compensation Expense Additional Details (Details) - Warrants | 1 Months Ended |
--- | --- | ---
Aug. 31, 2017 USD ($) solar_energy_system_install vesting_increment $ / shares shares | Jun. 30, 2018 shares
Share-based Compensation Arrangement by Share-based Payment Award [Line Items] |  |
Warrant, term | 40 months |
Warrant, number purchased | shares | 11,793,355 |
Warrant, exercise price (in dollars per share) | $ / shares | $ 0.01 |
Warrant, vesting percentage | 50.05% |
Warrant, milestone one, solar energy systems | solar_energy_system_install | 30,000 |
Warrant, milestone, marketing and sales dollars | $ | $ 10,000,000.0 |
Warrant, vesting term | vesting_increment | 5 |
Warrant, milestone two, solar energy systems | solar_energy_system_install | 6,000 |
Warrant, vested | shares |  | 0

X
- Definition Class of Warrant or Right, Milestone One + References No definition available. + Details
Name: | run_ClassofWarrantorRightMilestoneOne
Namespace Prefix: | run_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | duration

X
- Definition Class of Warrant or Right, Milestone One, Dollar Value + References No definition available. + Details
Name: | run_ClassofWarrantorRightMilestoneOneDollarValue
Namespace Prefix: | run_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Class of Warrant or Right, Milestone Two + References No definition available. + Details
Name: | run_ClassofWarrantorRightMilestoneTwo
Namespace Prefix: | run_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | duration

X
- Definition Class of Warrant or Right, Term + References No definition available. + Details
Name: | run_ClassofWarrantorRightTerm
Namespace Prefix: | run_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Definition Class of Warrant or Right, Vested + References No definition available. + Details
Name: | run_ClassofWarrantorRightVested
Namespace Prefix: | run_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

X
- Definition Class of Warrant or Right, Vesting Percentage + References No definition available. + Details
Name: | run_ClassofWarrantorRightVestingPercentage
Namespace Prefix: | run_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | instant

X
- Definition Class of Warrant or Right, Vesting Term + References No definition available. + Details
Name: | run_ClassofWarrantorRightVestingTerm
Namespace Prefix: | run_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | duration

X
- Definition Exercise price per share or per unit of warrants or rights outstanding. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 235 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.4-08.(i)(4)) -URI http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690 + Details
Name: | us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
Namespace Prefix: | us-gaap_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | instant

X
- Definition Number of securities into which the class of warrant or right may be converted. For example, but not limited to, 500,000 warrants may be converted into 1,000,000 shares. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 235 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.4-08.(i)(2)) -URI http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690 + Details
Name: | us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_StatementEquityComponentsAxis=us-gaap_WarrantMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |