v3.20.4

Revenue - Additional Information (Details) $ in Millions |  | 12 Months Ended
--- | --- | ---
Nov. 30, 2019 USD ($) | Dec. 31, 2020 USD ($) segment | Dec. 31, 2019 USD ($) | Dec. 31, 2018
Disaggregation Of Revenue [Line Items] |  |  |  |
Number of reportable segment | segment |  | 2 |  |
Contract with customer assets increase (decrease) |  | $ 3.8 | $ 2.8 |
Increase (decrease) in deferred revenue |  | 21.5 | (9.8) |
Increase (decrease) in deferred revenue due to change in timing of fulfillment of performance obligations |  | 12.4 |  |
Increase (decrease) in deferred revenue recognized related to unspecified upgrades |  | 8.4 |  |
Deferred revenue increase decrease due to revenue recognized upon customer acceptance |  |  | 5.0 |
Deferred revenue recognized |  | 42.9 | $ 52.5 |
Estimated contracted revenue |  | $ 513.7 |  |
Revenue, remaining performance obligation, expected timing of satisfaction, Description |  | Revenue allocated to remaining performance obligations represents estimated contracted revenue that has not yet been recognized which includes unearned revenue and amounts that will be invoiced and recognized as revenue in future periods. Estimated contracted revenue was $513.7 million as of December 31, 2020 of which the Company expects to recognize approximately 55% over the next 12 months and the remainder thereafter. |  |
Revenue remaining performance obligation percentage of revenue expected to be recognized |  | 55.00% |  |
Revenue recognized from performance obligation satisfied in previous period | $ 10.9 | $ 14.4 |  |
Customer Concentration Risk | Net Revenue | Customer C |  |  |  |
Disaggregation Of Revenue [Line Items] |  |  |  |
Concentration risk |  | 12.00% | 14.00% | 18.00%

X
- Definition Deferred revenue increase decrease due to revenue recognized upon customer acceptance. + References No definition available. + Details
Name: | roku_DeferredRevenueIncreaseDecreaseDueToRevenueRecognizedUponCustomerAcceptance
Namespace Prefix: | roku_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Increase (decrease) in deferred revenue due to change in timing of fulfillment of performance obligations. + References No definition available. + Details
Name: | roku_IncreaseDecreaseInDeferredRevenueDueToChangeInTimingOfFulfillmentOfPerformanceObligations
Namespace Prefix: | roku_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Increase (decrease) in deferred revenue recognized related to unspecified upgrades. + References No definition available. + Details
Name: | roku_IncreaseDecreaseInDeferredRevenueRecognizedRelatedToUnspecifiedUpgrades
Namespace Prefix: | roku_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Revenue remaining performance obligation percentage of revenue expected to be recognized. + References No definition available. + Details
Name: | roku_RevenueRemainingPerformanceObligationPercentageOfRevenueExpectedToBeRecognized
Namespace Prefix: | roku_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 42 -URI http://asc.fasb.org/extlink&oid=120311839&loc=d3e9054-108599 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 275 -SubTopic 10 -Section 50 -Paragraph 18 -URI http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 825 -SubTopic 10 -Section 50 -Paragraph 20 -URI http://asc.fasb.org/extlink&oid=121572278&loc=d3e13531-108611 Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 825 -SubTopic 10 -Section 50 -Paragraph 21 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=121572278&loc=d3e13537-108611 Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 275 -SubTopic 10 -Section 50 -Paragraph 20 -URI http://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592 + Details
Name: | us-gaap_ConcentrationRiskPercentage1
Namespace Prefix: | us-gaap_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 8 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=121604090&loc=SL49130549-203045 + Details
Name: | us-gaap_ContractWithCustomerLiabilityRevenueRecognized
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount of revenue recognized from performance obligation satisfied or partially satisfied in previous reporting periods. Includes, but is not limited to, change in transaction price. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 12A -URI http://asc.fasb.org/extlink&oid=121604090&loc=SL108322424-203045 + Details
Name: | us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod
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_DisaggregationOfRevenueLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount of increase (decrease) in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 45 -Paragraph 28 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=121586364&loc=d3e3602-108585 + Details
Name: | us-gaap_IncreaseDecreaseInContractWithCustomerAsset
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount of increase (decrease) in deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable. + References Reference 1: http://www.xbrl.org/2003/role/exampleRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 45 -Paragraph 28 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=121586364&loc=d3e3602-108585 + Details
Name: | us-gaap_IncreaseDecreaseInDeferredRevenue
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
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 Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 18 -URI http://asc.fasb.org/extlink&oid=120311839&loc=d3e8672-108599 + Details
Name: | us-gaap_NumberOfReportableSegments
Namespace Prefix: | us-gaap_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount of transaction price allocated to performance obligation that has not been recognized as revenue. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 13 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=121604090&loc=SL49130556-203045 + Details
Name: | us-gaap_RevenueRemainingPerformanceObligation
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Description of when remaining performance obligation is expected to be recognized as revenue. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 13 -Subparagraph (b)(2) -URI http://asc.fasb.org/extlink&oid=121604090&loc=SL49130556-203045 + Details
Name: | us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionExplanation
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_MajorCustomersAxis=roku_CustomerCMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |