v3.19.3.a.u2

Stockholders' Equity - Stock Warrants - Additional Information (Details) - shares | 1 Months Ended |  |  |  |  |
--- | --- | --- | --- | --- | --- | ---
Jul. 31, 2017 | Dec. 31, 2019 | Dec. 31, 2018 | Dec. 31, 2017 | Oct. 02, 2017 | Oct. 01, 2017
Class Of Warrant Or Right [Line Items] |  |  |  |  |  |
Preferred stock, shares outstanding |  | 0 | 0 |  |  |
Outstanding warrants |  | 0 | 0 |  |  |
Class B Common Stock |  |  |  |  |  |
Class Of Warrant Or Right [Line Items] |  |  |  |  |  |
Outstanding warrants to purchase |  |  |  | 200,000 |  |
Warrants exercised |  |  |  | 1,900,000 |  |
Warrants cancelled |  |  |  | 100,000 |  |
Warrants issued |  |  |  | 1,800,000 |  |
Initial Public Offering | Class B Common Stock |  |  |  |  |  |
Class Of Warrant Or Right [Line Items] |  |  |  |  |  |
Outstanding warrants to purchase |  |  |  |  | 2,200,000 |
Convertible Preferred Stock Warrants |  |  |  |  |  |
Class Of Warrant Or Right [Line Items] |  |  |  |  |  |
Preferred stock, shares outstanding |  |  |  |  |  | 2,200,000
Common Stock Warrants | Class B Common Stock |  |  |  |  |  |
Class Of Warrant Or Right [Line Items] |  |  |  |  |  |
Conversion of common stock warrants | 400,000 |  |  |  |  |
Number of common stock warrants exercise | 400,000 |  |  |  |  |

X
- Definition Number of warrants or rights cancelled. + References No definition available. + Details
Name: | roku_ClassOfWarrantOrRightCancelled
Namespace Prefix: | roku_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

X
- Definition Class of warrant or right exercised and expired during period. + References No definition available. + Details
Name: | roku_ClassOfWarrantOrRightExerciseDuringPeriod
Namespace Prefix: | roku_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | duration

X
- Definition Number of warrants or rights exercised. + References No definition available. + Details
Name: | roku_ClassOfWarrantOrRightExercised
Namespace Prefix: | roku_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

X
- Definition Number of warrants or rights issued. + References No definition available. + Details
Name: | roku_ClassOfWarrantOrRightIssued
Namespace Prefix: | roku_
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_ClassOfWarrantOrRightLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

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://fasb.org/us-gaap/role/ref/legacyRef -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 Number of warrants or rights outstanding. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 235 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.4-08.(i)) -URI http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690 + Details
Name: | us-gaap_ClassOfWarrantOrRightOutstanding
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

X
- Definition Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02(28)) -URI http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682 + Details
Name: | us-gaap_PreferredStockSharesOutstanding
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

X
- Definition Number of shares issued during the period as a result of the conversion of convertible securities. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.3-04) -URI http://asc.fasb.org/extlink&oid=27012166&loc=d3e187085-122770 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02.29-30) -URI http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section 50 -Paragraph 3 -URI http://asc.fasb.org/extlink&oid=109259400&loc=d3e21475-112644 Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section 50 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=109259400&loc=d3e21463-112644 + Details
Name: | us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_StatementClassOfStockAxis=us-gaap_CommonClassBMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_SubsidiarySaleOfStockAxis=us-gaap_IPOMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ClassOfWarrantOrRightAxis=roku_ConvertiblePreferredStockWarrantsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ClassOfWarrantOrRightAxis=roku_CommonStockWarrantsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |