v3.20.4

Stockholders' Equity - Schedule of Reserved Shares of Common Stock for Issuance (Details) shares in Thousands | Dec. 31, 2020 shares
--- | ---
Class Of Stock [Line Items] |  |
Total reserved shares of common stock | 39,597 |
Equity Incentive Plan |  |
Class Of Stock [Line Items] |  |
Common stock awards granted under equity incentive plans | 13,088 |
2017 Employee Stock Purchase Plan |  |
Class Of Stock [Line Items] |  |
Common stock awards available for issuance | 5,089 | [1]
2017 Plan |  |
Class Of Stock [Line Items] |  |
Common stock awards available for issuance | 21,420 |
[1] | The Company has not issued any common stock pursuant to the 2017 Employee Stock Purchase Plan.

X
- Definition Cumulative common stock awards available for issuance. + References No definition available. + Details
Name: | roku_CumulativeCommonStockAwardsAvailableForIssuance
Namespace Prefix: | roku_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

X
- Definition Cumulative common stock awards granted. + References No definition available. + Details
Name: | roku_CumulativeCommonStockAwardsGranted
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_ClassOfStockLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Aggregate number of common shares reserved for future issuance. + 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=120391452&loc=d3e13212-122682 + Details
Name: | us-gaap_CommonStockCapitalSharesReservedForFutureIssuance
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

X
- Details
Name: | us-gaap_PlanNameAxis=roku_EquityIncentivePlanMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PlanNameAxis=roku_TwoThousandSeventeenEmployeeStockPurchasePlanMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PlanNameAxis=roku_TwoThousandSeventeenEquityIncentivePlanMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |