OBS Keyframe Interval: Set It to 2 Seconds
Set your keyframe interval to 2 seconds. In OBS go to Settings → Output, set Output Mode to Advanced, open the Streaming tab and type 2 in the Keyframe Interval field. Twitch, YouTube and Kick all recommend 2 seconds, and leaving it on 0 (auto) can mean a keyframe only every 4 seconds or longer.
What a keyframe is
A video stream doesn’t send a full picture for every frame. Most frames only store what changed since the previous one. Every so often the encoder sends a keyframe (also called an I-frame): a complete image that doesn’t depend on anything before it. The keyframe interval is how often that happens.
Keyframes matter for live streaming because a player can only start decoding at one. When a viewer opens your stream, switches quality, or the platform cuts your stream into segments for playback and transcoding, everything lines up on keyframes. A steady, short interval keeps that predictable.
What each platform asks for
| Platform | Keyframe interval | Also required or recommended |
|---|---|---|
| Twitch | 2 seconds | CBR, H.264 |
| YouTube | 2 seconds recommended, never more than 4 | CBR; H.264, HEVC or AV1 |
| Kick | 2 seconds | CBR only, H.264 only, max 8,000 kbps |
So one value works everywhere: 2.
How to set the keyframe interval in OBS
- Open Settings (File → Settings on Windows, or the Settings button in the Controls dock).
- Click Output in the sidebar.
- Set Output Mode at the top to Advanced.
- Open the Streaming tab. Under the Video Encoder you picked, find the keyframe field. It’s labeled Keyframe Interval (0=auto) for x264, AMD, QuickSync and Apple VT, and Keyframe interval (seconds, 0 = auto) for NVIDIA NVENC.
- Type 2, click Apply, then OK.
Switching to Advanced mode doesn’t reset your stream key or scenes. It only shows more encoder settings. While you’re there, check rate control is CBR and your bitrate suits your connection. Our bitrate calculator gives you numbers to copy in, and the OBS encoder settings guide covers the rest of this screen.
Simple output mode
Simple mode has no keyframe field. What happens depends on the service selected under Settings → Stream:
- Built-in service (Twitch, YouTube and others in the list): OBS applies that service’s recommended settings, which include a 2-second keyframe interval, so you’re covered.
- Custom... service (Kick and many smaller platforms): OBS has no recommendation to apply, so the encoder stays on auto. Switch to Advanced mode and set 2 yourself.
Seconds, frames and what 0 (auto) means
In OBS’s normal encoder settings the value is in seconds. OBS multiplies it by your frame rate, so 2 seconds is a keyframe every 60 frames at 30 fps or every 120 frames at 60 fps. Don’t type 60 or 120 into this field. That would mean one keyframe per minute or two.
0 = auto doesn’t mean “whatever the platform wants.” It hands the choice to the encoder. NVENC then uses a 250-frame interval, and x264 uses its default maximum of 250 frames. That’s about 4 seconds at 60 fps and over 8 seconds at 30 fps, which is longer than YouTube’s 4-second limit and well past what Twitch and Kick recommend.
The only place OBS counts in frames is Recording Type → Custom Output (FFmpeg), where the field reads Keyframe interval (frames). That’s for recordings and special setups, not normal streaming.
What happens if it’s wrong
- Too long or auto: viewers wait longer for the picture to appear and playback can buffer. YouTube’s Live Control Room shows a health message saying keyframes aren’t being sent often enough, which can cause buffering.
- Entered in frames by mistake (for example 60): keyframes arrive a minute apart, which is far outside every platform’s range.
- Too short (1 second or less): it still streams, but full frames are expensive, so at the same bitrate fast scenes get blockier. YouTube warns that a small GOP (group of pictures) can reduce image quality.
If your stream looks fine but viewers report long load times or buffering when they change quality, the keyframe interval is one of the first things to check, right after your stream key and server and your bitrate.
Frequently asked questions
What keyframe interval should I use for Twitch?
2 seconds. Twitch’s Broadcasting Guidelines list a 2-second keyframe interval for every resolution and frame rate, for both x264 and NVENC.
Is the OBS keyframe interval in seconds or frames?
Seconds, for every encoder in Simple and Advanced output mode (x264, NVENC, AMD, QuickSync and Apple VT). The only exception is the FFmpeg Output recording type, whose field is labeled Keyframe interval (frames). For 2 seconds at 60 fps, enter 120 there.
Should I use 1 second for fast games?
No platform asks for it. More keyframes spend more of a fixed bitrate on full images, which leaves less for motion, so 1 second usually looks slightly worse at the same bitrate. Stick with 2 unless a platform tells you otherwise.
Where is the keyframe interval in Simple output mode?
There isn’t one. With a built-in service such as Twitch or YouTube, OBS applies the service’s 2-second recommendation automatically. With a Custom server (for example Kick), switch to Advanced mode and set it yourself.
Does Twitch Enhanced Broadcasting change the keyframe interval?
When Enhanced Broadcasting is on, Twitch’s automatic configuration takes over several encoder settings and OBS tells you it’s controlling some of your stream settings. You don’t need to tune the keyframe interval yourself in that mode.
Sources: Twitch Help: Broadcasting Guidelines · YouTube Help: Live encoder settings, bitrates and resolutions · YouTube Help: Live streaming error messages · Kick Help: How to stream on KICK.com · OBS Studio source: NVENC encoder strings · OBS Studio source: streaming service presets