v3.24.0.1

Balance Sheet Components - Schedule of Deferred Revenue (Details) - USD ($) $ in Thousands | Dec. 31, 2023 | Dec. 31, 2022 | Dec. 31, 2021
--- | --- | --- | ---
Deferred Revenue Arrangement [Line Items] |  |  |
Deferred revenue, current portion | $ 102,157 | $ 87,678 | $ 45,760
Total deferred revenue, non-current | 24,572 | 28,210 | $ 28,726
Total Deferred revenue | 126,729 | 115,888 |
Platform |  |  |
Deferred Revenue Arrangement [Line Items] |  |  |
Deferred revenue, current portion | 66,636 | 59,276 |
Total deferred revenue, non-current | 625 | 969 |
Devices |  |  |
Deferred Revenue Arrangement [Line Items] |  |  |
Deferred revenue, current portion | 35,521 | 28,402 |
Total deferred revenue, non-current | $ 23,947 | $ 27,241 |

X
- Definition Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 45 -Paragraph 1 -Publisher FASB -URI https://asc.fasb.org//1943274/2147479837/606-10-45-1 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 8 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479806/606-10-50-8 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 45 -Paragraph 2 -Publisher FASB -URI https://asc.fasb.org//1943274/2147479837/606-10-45-2 + Details
Name: | us-gaap_ContractWithCustomerLiability
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 45 -Paragraph 1 -Publisher FASB -URI https://asc.fasb.org//1943274/2147479837/606-10-45-1 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 8 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479806/606-10-50-8 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 45 -Paragraph 2 -Publisher FASB -URI https://asc.fasb.org//1943274/2147479837/606-10-45-2 + Details
Name: | us-gaap_ContractWithCustomerLiabilityCurrent
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as noncurrent. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 45 -Paragraph 1 -Publisher FASB -URI https://asc.fasb.org//1943274/2147479837/606-10-45-1 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 8 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479806/606-10-50-8 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 45 -Paragraph 2 -Publisher FASB -URI https://asc.fasb.org//1943274/2147479837/606-10-45-2 + Details
Name: | us-gaap_ContractWithCustomerLiabilityNoncurrent
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
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_DeferredRevenueArrangementLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=roku_PlatformSegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=roku_DeviceSegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |