v3.24.0.1

Restructuring Charges - Restructuring and Related Costs (Details) - USD ($) $ in Thousands | 12 Months Ended
--- | ---
Dec. 31, 2023 | Dec. 31, 2022
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | $ 356,094 | $ 38,140
Cost of revenue | Platform |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 67,032 | 0
Cost of revenue | Devices |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 3,323 | 0
Research and development |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 110,491 | 19,592
Sales and marketing |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 113,714 | 10,904
General and administrative |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 61,534 | 7,644
Employee Terminations |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 83,165 | 30,640
Employee Terminations | Cost of revenue | Platform |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 1,164 | 0
Employee Terminations | Cost of revenue | Devices |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 524 | 0
Employee Terminations | Research and development |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 31,160 | 12,092
Employee Terminations | Sales and marketing |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 29,786 | 10,904
Employee Terminations | General and administrative |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 20,531 | 7,644
Facilities Exit Costs |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 3,527 |
Facilities Exit Costs | Cost of revenue | Platform |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 1 |
Facilities Exit Costs | Cost of revenue | Devices |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 6 |
Facilities Exit Costs | Research and development |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 1,320 |
Facilities Exit Costs | Sales and marketing |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 517 |
Facilities Exit Costs | General and administrative |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 1,683 |
Asset Impairment Charges |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 269,402 | 7,500
Asset Impairment Charges | Cost of revenue | Platform |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 65,867 | 0
Asset Impairment Charges | Cost of revenue | Devices |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 2,793 | 0
Asset Impairment Charges | Research and development |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 78,011 | 7,500
Asset Impairment Charges | Sales and marketing |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | 83,411 | 0
Asset Impairment Charges | General and administrative |  |
Restructuring Cost and Reserve [Line Items] |  |
Total restructuring charges | $ 39,320 | $ 0

X
- Definition Amount of expenses associated with exit or disposal activities pursuant to an authorized plan. Excludes expenses related to a discontinued operation or an asset retirement obligation. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Section 45 -Paragraph 28 -Subparagraph (b) -SubTopic 10 -Topic 230 -Publisher FASB -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 420 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 2 -Subparagraph (SAB Topic 5.P.4(b)(1)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479823/420-10-S99-2 Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 420 -SubTopic 10 -Name Accounting Standards Codification -Section 45 -Paragraph 3 -Publisher FASB -URI https://asc.fasb.org//1943274/2147482047/420-10-45-3 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Topic 420 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SAB Topic 5.P.3) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479823/420-10-S99-1 + Details
Name: | us-gaap_RestructuringCharges
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
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 Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 420 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org//1943274/2147482017/420-10-50-1 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 420 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Subparagraph (b)(2) -Publisher FASB -URI https://asc.fasb.org//1943274/2147482017/420-10-50-1 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 420 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Subparagraph (b)(1) -Publisher FASB -URI https://asc.fasb.org//1943274/2147482017/420-10-50-1 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Topic 420 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 2 -Subparagraph (SAB Topic 5.P.4(b)(2)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479823/420-10-S99-2 Reference 5: http://www.xbrl.org/2003/role/disclosureRef -Topic 420 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 2 -Subparagraph (SAB Topic 5.P.4(b)(1)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479823/420-10-S99-2 Reference 6: http://www.xbrl.org/2003/role/disclosureRef -Topic 420 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 2 -Subparagraph (SAB Topic 5.P.4(d)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479823/420-10-S99-2 Reference 7: http://www.xbrl.org/2003/role/disclosureRef -Topic 420 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Subparagraph (d) -Publisher FASB -URI https://asc.fasb.org//1943274/2147482017/420-10-50-1 + Details
Name: | us-gaap_RestructuringCostAndReserveLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

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: |

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=us-gaap_SellingAndMarketingExpenseMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RestructuringCostAndReserveAxis=us-gaap_EmployeeSeveranceMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RestructuringCostAndReserveAxis=us-gaap_FacilityClosingMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_RestructuringCostAndReserveAxis=roku_ImpairmentChargesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |