v3.19.3.a.u2

The Company - Additional Information (Details) $ / shares in Units, shares in Millions, $ in Millions |  | 12 Months Ended
--- | --- | ---
Oct. 02, 2017 USD ($) ClassesofStock Vote $ / shares shares | Dec. 31, 2019 segment
Entity Wide Revenue Major Customer [Line Items] |  |
Conversion date |  | Feb. 01, 2008
Number of reportable segments operates | segment |  | 2
Number of classes of authorized common stock | ClassesofStock | 2 |
Class A Common Stock |  |
Entity Wide Revenue Major Customer [Line Items] |  |
Number of votes per share | Vote | 1 |
Class B Common Stock |  |
Entity Wide Revenue Major Customer [Line Items] |  |
Number of votes per share | Vote | 10 |
Initial Public Offering | Class B Common Stock Warrants |  |
Entity Wide Revenue Major Customer [Line Items] |  |
Warrants conversion ratio | 100.00% |
Initial Public Offering | Class A Common Stock |  |
Entity Wide Revenue Major Customer [Line Items] |  |
Initial public offering completed date | Oct. 02, 2017 |
Number of shares sold | shares | 10.4 |
Share sold price per share | $ / shares | $ 14.00 |
Net proceeds from shares sold | $ | $ 134.8 |
Underwriting discounts and commissions | $ | 10.1 |
Offering costs incurred | $ | $ 3.1 |
Initial Public Offering | Class B Common Stock |  |
Entity Wide Revenue Major Customer [Line Items] |  |
Convertible preferred stock, Shares converted | shares | 80.8 |
Stock conversion ratio | 100.00% |
Over-Allotment Option | Class A Common Stock |  |
Entity Wide Revenue Major Customer [Line Items] |  |
Number of shares sold | shares | 1.4 |

X
- Definition Date when an entity was incorporated + References No definition available. + Details
Name: | dei_EntityIncorporationDateOfIncorporation
Namespace Prefix: | dei_
Data Type: | xbrli:dateItemType
Balance Type: | na
Period Type: | duration

X
- Definition Number of classes of authorized common stock. + References No definition available. + Details
Name: | roku_NumberOfClassesOfAuthorizedCommonStock
Namespace Prefix: | roku_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- Definition Number of votes per share. + References No definition available. + Details
Name: | roku_NumberOfVotesPerShare
Namespace Prefix: | roku_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- Definition Conversion ratio of preferred stock to common stock. + References No definition available. + Details
Name: | roku_StockConversionRatio
Namespace Prefix: | roku_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | instant

X
- Definition Conversion ratio of preferred stock warrants to common stock warrants. + References No definition available. + Details
Name: | roku_WarrantsConversionRatio
Namespace Prefix: | roku_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | instant

X
- Definition The number of shares converted in a noncash (or part noncash) transaction. Noncash is defined as transactions during a period that do not result in cash receipts or cash payments in the period. "Part noncash" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 50 -Paragraph 4 -URI http://asc.fasb.org/extlink&oid=98513485&loc=d3e4313-108586 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 50 -Paragraph 3 -URI http://asc.fasb.org/extlink&oid=98513485&loc=d3e4304-108586 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 50 -Paragraph 5 -URI http://asc.fasb.org/extlink&oid=98513485&loc=d3e4332-108586 + Details
Name: | us-gaap_ConversionOfStockSharesConverted1
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
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_EntityWideRevenueMajorCustomerLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements. + References No definition available. + Details
Name: | us-gaap_NumberOfReportableSegments
Namespace Prefix: | us-gaap_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | duration

X
- Definition Cash paid for expenses incurred during underwriting activities (the process to review insurance applications, evaluate risks, accept or reject applications, and determine the premiums to be charged) for insurance companies. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 45 -Paragraph 25 -Subparagraph (g) -URI http://asc.fasb.org/extlink&oid=118932676&loc=d3e3536-108585 + Details
Name: | us-gaap_PaymentsForUnderwritingExpense
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition The cash outflow for cost incurred directly with the issuance of an equity security. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 45 -Paragraph 15 -URI http://asc.fasb.org/extlink&oid=118932676&loc=d3e3291-108585 + Details
Name: | us-gaap_PaymentsOfStockIssuanceCosts
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition The cash inflow associated with the amount received from entity's first offering of stock to the public. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 45 -Paragraph 14 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=118932676&loc=d3e3255-108585 + Details
Name: | us-gaap_ProceedsFromIssuanceInitialPublicOffering
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Date the subsidiary or equity investee issued or sold stock, in CCYY-MM-DD format. + References No definition available. + Details
Name: | us-gaap_SaleOfStockTransactionDate
Namespace Prefix: | us-gaap_
Data Type: | xbrli:dateItemType
Balance Type: | na
Period Type: | duration

X
- Definition Price of a single share of a number of saleable stocks of a company. + References No definition available. + Details
Name: | us-gaap_SharePrice
Namespace Prefix: | us-gaap_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | instant

X
- Definition Number of new stock issued during the period. + 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(29)) -URI http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682 Reference 2: 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 Reference 3: 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 4: 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_StockIssuedDuringPeriodSharesNewIssues
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | duration

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

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_ClassBCommonStockWarrantsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

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