Roku ad specs: video and audio rules for Roku Ads Manager

Roku ads must be 16:9, 6–92 seconds, .mov or .mp4 up to 1 GB, 23.98, 25 or 29.97 fps, 6 Mbps or more, with 48 kHz 2-channel stereo audio.

5 min readSume
All posts

Roku Ads Manager requires a 16:9 video of 6 to 92 seconds in a .mov or .mp4 file of up to 1 GB, encoded as AVC (H.264) or ProRes 422 HQ at 23.98, 25, or 29.97 fps with a video bitrate of at least 6 Mbps. The audio must match the video's length and be 2-channel stereo at 48 kHz and at least 96 kbps; Roku prefers PCM and accepts AAC. With Sume, render the spot on Timeline 1.0 at 1920×1080 and 25 fps, then check its bitrate and audio channels before you upload it.

Roku's rules are quoted from three Roku Ads Manager help articles, Creative technical requirements, Creative guidelines, and Creating video ads, read on 2026-09-28; Roku can change them. Sume facts come from the Timeline 1.0 and Video inspect docs, the Sume API reference, and Sume's media compiler as it works today. Other streaming TV sellers are compared in CTV ad specs.

What are Roku's video ad specs?

Roku splits its list into a video column and an audio column; “n/a” means the line doesn't apply to that column.

  • Upload a file: Roku doesn't accept YouTube links or videos pulled from other online sources.
  • Language: only English is supported today.
  • Review: a technical check comes first, and a video that misses the requirements fails to upload; then a manual review takes 2–3 business days.
  • Action ads add an overlay message of up to 40 characters, a PNG logo of up to 150kb, and a text message of up to 236 characters.
From Roku Ads Manager's Creative technical requirements, read 2026-09-28.
SpecVideoAudio
File sizeMaximum 1 GBn/a
File format.mov or .mp4PCM preferred, AAC accepted
File name length170 characters maxn/a
Length6–92 secondsMust match video length
Aspect ratioMust be 16:9n/a
Frame rate23.98, 25.00, or 29.97 fpsn/a
CodecAVC or ProRes 422 HQn/a
Bit rateMinimum 6 MbpsMinimum 96 kbps
Bit depthn/a16- or 24-bit
Channelsn/a2-channel stereo
Sampling raten/a48 kHz

How do I make a Roku ad with Sume?

Generate the shots and a voiceover, then assemble them with POST /v1/timeline-1.0/render (how to make a 30-second ad covers the shots). It reads only your workspace's media.sume.com files and needs an Idempotency-Key. Today its sound comes only from the audio spine and an optional soundtrack, not from the clips.

  • output: 1920 × 1080. Roku requires 16:9 but names no pixel size; Timeline takes even sizes from 256 to 2160 per edge.
  • output.fps: 25, the only Timeline rate on Roku's list, since Timeline has no 23.98 or 29.97 option. If your clips run at another rate, Timeline repeats or drops a frame every few frames to reach 25, which can judder on motion, and warns output_fps_resamples_sources.
  • audio.duration_seconds: 15 or 30, inside Roku's 6–92 seconds. It sets the output length.
curl -X POST https://api.sume.com/v1/timeline-1.0/render \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: roku-30s-001" \
  -d '{
    "audio": {
      "url": "https://media.sume.com/artifacts/artf_demo/voice-48k.wav",
      "duration_seconds": 30
    },
    "video": [
      { "source_url": "https://media.sume.com/artifacts/artf_demo/shot-1.mp4", "start": 0, "duration": 15 },
      { "source_url": "https://media.sume.com/artifacts/artf_demo/shot-2.mp4", "start": 15, "duration": 15 }
    ],
    "output": { "width": 1920, "height": 1080, "fps": 25 }
  }'

Will the render pass Roku's 6 Mbps minimum?

Not by setting it. Today Timeline encodes H.264 with libx264 at a constant quality (-crf 20) and refuses crf, codec, and other encoder keys with a 400, so the bitrate follows the footage. Measure before you upload:

  • Run POST /v1/video-inspect with frames: false on the render's video_url. That probe is unbilled and reports size_bytes and duration_seconds.
  • Average bitrate is size_bytes × 8 ÷ duration_seconds, audio included. A 30-second render smaller than about 23 MB can't carry 6 Mbps of video plus 192 kbps of audio (our arithmetic).
  • If it falls short, re-encode it at 6 Mbps or more in your own encoder (how to check a video's bitrate).

Does the audio meet Roku's rules?

The codec and bitrate do: today Timeline writes AAC, which Roku lists as accepted, at 192 kbps, above its 96 kbps minimum. The sample rate and channel count are not settings. The Sume API reference says the master inherits both from the audio spine file.

  • Sample rate: use a 48 kHz spine. Sume's TTS 1.0 (POST /v1/tts-1.0/generate) takes output_format.sample_rate 48000; its default mp3 is 44,100 Hz.
  • Channels: a mono voiceover spine gives a mono master, which misses Roku's 2-channel stereo. Audio detach can only keep a source's channels or downmix to mono, so fix a mono master in your own editor.
  • Check both with the probe: audio_sample_rate should read 48000 and audio_channels should read 2.

Sources

Related posts

More in Media tools

All Media tools posts

Written by Sume