Codec and Bitrate Guide
Choosing the right codec and bitrate settings balances video quality, bandwidth usage, and platform compatibility.
Video codecs
| Codec | Pros | Cons |
|---|---|---|
| H.264 | Universal compatibility — works on every platform and device | Less efficient compression; needs higher bitrate for same quality |
| H.265 (HEVC) | ~40% better compression — better quality at lower bitrate | Not supported by all streaming platforms (Twitch, Kick, TikTok require H.264) |
Rule of thumb: Use H.264 for streaming to platforms. Use H.265 for local recording, SRT output, HLS output, or custom servers that support it.
Important: H.265 over RTMP requires RTMPS (TLS-encrypted RTMP). Plain RTMP does not support HEVC encoding.
Recommended bitrates
1080p (1920x1080)
| Frame rate | Low quality | Good quality | High quality |
|---|---|---|---|
| 30 fps | 2500 kbps | 4500 kbps | 6000 kbps |
| 60 fps | 4000 kbps | 6000 kbps | 8000 kbps |
720p (1280x720)
| Frame rate | Low quality | Good quality | High quality |
|---|---|---|---|
| 30 fps | 1500 kbps | 2500 kbps | 4000 kbps |
| 60 fps | 2500 kbps | 4000 kbps | 6000 kbps |
4K (3840x2160)
| Frame rate | Good quality | High quality |
|---|---|---|
| 30 fps | 15000 kbps | 25000 kbps |
4K output requires an iPad with M-series chip and a strong, stable upload connection. Most streaming platforms don’t support 4K ingest — this is primarily useful for local recording and NDI output.
Platform requirements
| Platform | Max bitrate | Codec | Keyframe interval |
|---|---|---|---|
| YouTube | 8000 kbps (1080p) | H.264, H.265 | 2 seconds |
| Twitch | 6000 kbps | H.264 only | 2 seconds |
| Kick | 6000 kbps | H.264 only | 2 seconds |
| 6000 kbps | H.264 only | 2 seconds | |
| TikTok | 4500 kbps | H.264 only | 2 seconds |
| X (Twitter) | 5000 kbps | H.264 only | 2 seconds |
| Restream | 6000 kbps | H.264 only | 2 seconds |
| Custom RTMP | Varies | H.264 or H.265 | Varies |
Keyframe interval
Most streaming platforms require a 2-second keyframe interval. This means a full frame (I-frame) is sent every 2 seconds. Using a different interval may cause:
- Stream rejection by the platform
- Inconsistent transcoding
- Seek/DVR issues for viewers
Always use 2 seconds unless your platform specifically requires something different.
Rate control
| Mode | Where it’s used |
|---|---|
| CBR — constant bitrate | The default for built-in platform destinations, which is what those services expect. Twitch is additionally clamped to the bitrate it accepts. |
| VBR — variable bitrate | The default for custom RTMP, where quality per bit matters more than a flat rate. |
You don’t normally need to change this — picking a platform tile sets what that platform wants.
Encoded output signals BT.709 colour in the bitstream, so platforms transcode it with the right colour primaries instead of guessing.
Choosing settings
For streaming
- Check your platform’s requirements (codec, max bitrate)
- Test your upload speed — use no more than 60–70% of your upload for the stream
- Start at 1080p / 4500 kbps / H.264 / 2s keyframes
- Lower to 720p / 2500 kbps if your connection is unstable
For local recording
- Use H.265 for better quality at the same file size
- Use higher bitrate than streaming (6000–10000 kbps) since storage is cheaper than bandwidth
- 1080p60 gives the smoothest recording for editing
You don’t have to choose between a stream your uplink can carry and a file worth editing. Turn on independent recording quality and the recording gets its own encoder, codec and bitrate — stream H.264 at 4500 kbps while recording H.265 at 20 Mbps. See Local Recording.
For multi-streaming (via Restream)
Use settings that satisfy all platforms simultaneously:
- H.264 (universal)
- 4500 kbps (safe for all platforms)
- 2-second keyframe interval
- 1080p30
H.265 savings
At equivalent visual quality, H.265 uses roughly 40% less bitrate:
| Quality level | H.264 bitrate | H.265 bitrate |
|---|---|---|
| Good 1080p30 | 4500 kbps | 2700 kbps |
| High 1080p30 | 6000 kbps | 3600 kbps |
| Good 1080p60 | 6000 kbps | 3600 kbps |
This means smaller files for recordings and less bandwidth for streaming — when the platform supports it.