Game capture has a file size problem that most players discover at the worst possible moment: you record an incredible clutch play, check the file, and find a 47 GB MKV sitting on your drive that Discord refuses to accept, Reddit cannot upload, and your editing software grinds to a halt processing.
The gap between "optimized for recording" and "optimized for sharing" is significant in gaming footage. Recording software prioritizes quality and crash safety. Sharing platforms impose strict size limits. Compression bridges the two — but compression done wrong turns your 60fps highlight into a blocky mess.
This guide covers the full stack: OBS recording format choices, encoder settings for gaming content, file size expectations per hour, console clip formats, platform-specific limits, and the compression workflow to get from raw recording to share-ready clip.
MKV vs MP4: The Recording Format Decision
This debate comes up constantly in gaming communities, and there is a clear answer.
Record in MKV. Remux to MP4 before sharing.
Here is why MKV is the correct choice for recording:
MP4 stores its metadata (the moov atom) at the end of the file. The file is only complete — and only playable — once the recording software writes that final metadata block. If OBS crashes, your game crashes, Windows locks up, or your power goes out during a recording, the entire MP4 file is unreadable without repair tools. You lose everything captured up to that point.
MKV (Matroska Video) writes metadata incrementally throughout the recording. A crash leaves a partially complete MKV file that is still playable — you lose only the last few seconds. For marathon recording sessions, this crash resilience alone justifies using MKV.
The concern about MKV compatibility is valid but easily solved. After recording, remux to MP4 in under a minute using OBS's built-in tool:
File > Remux Recordings — select your MKV, choose MP4 output, click Remux. Done. The remux operation changes the container without touching the video data — it is lossless and takes about 1 second per minute of footage.
# Manual remux via FFmpeg if you prefer command line
ffmpeg -i recording.mkv -c copy recording.mp4
The -c copy flag copies all streams without re-encoding. This is instant and perfectly lossless.
Pro Tip: Enable OBS's automatic remux option under Settings > Advanced > Recording > Automatically remux to MP4. OBS will remux to MP4 after every recording automatically, while keeping the original MKV as a backup. This gives you both crash protection during recording and immediate MP4 availability after.
OBS Encoder Settings for Gaming
OBS offers three categories of encoders: CPU-based (x264), NVIDIA GPU (NVENC), and AMD GPU (AMF/VCE). Intel Quick Sync is also available on systems with Intel integrated graphics.
For gaming, GPU encoding is almost always the right choice. CPU encoding with x264 at any meaningful quality level consumes 20–40% of your CPU — resources that the game would otherwise use. NVENC and AMF use dedicated encoding hardware on the GPU that runs in parallel with game rendering, with minimal performance impact.
The exception: if your system has a very weak GPU (integrated graphics or low-end dedicated GPU) and a powerful CPU, x264 may produce better results. Test both and monitor in-game performance metrics.
OBS Recording Settings by Target Quality
| Setting | Quality Archive | Discord/Reddit Clips | Streaming + Record |
|---|---|---|---|
| Encoder | NVENC H.264 | NVENC H.264 | NVENC H.264 |
| Rate Control | CQP | CQP | CBR |
| Quality (CQP) | 18 | 22 | — |
| Bitrate (CBR) | — | — | 6000 Kbps |
| Preset | P5 (Slow) | P4 (Medium) | P4 (Medium) |
| Profile | High | High | High |
| Resolution | Native | 1920×1080 | 1920×1080 |
| Frame Rate | 60 | 60 | 60 |
| Keyframe Interval | 0 (auto) | 2s | 2s |
| B-Frames | 2 | 2 | 0 |
| Look-Ahead | On | On | Off |
| Container | MKV | MKV | MKV |
For AMD GPU users, replace NVENC settings with AMF equivalents:
- Rate Control: CQP → CQ (Constant Quality)
- Quality Value: 18–22 (same range)
- Preset: Slow → Quality or Balanced
For CPU encoding with x264 (when GPU is unavailable):
# OBS x264 advanced settings for gaming
# Encoder: x264
# Rate Control: CRF
# CRF: 18-22
# Preset: veryfast (for real-time encoding)
# Tune: (none — do NOT use animation tune for gaming)
# Profile: high
# x264 Options: bframes=2 deblock=-1:-1
The x264 veryfast preset for real-time gaming recording is a common recommendation. Going slower (fast, medium) produces marginally better compression but increases CPU load. Going faster (superfast, ultrafast) significantly reduces quality. veryfast is the practical sweet spot.
CRF vs CQP vs CBR: What They Mean
CRF (Constant Rate Factor) — x264 and libx265 rate control. Maintains consistent visual quality by varying bitrate. A scene with lots of fast motion gets more bits; a static scene gets fewer. CRF 0 is lossless, CRF 51 is worst quality. For gaming, CRF 18–22 is the practical range.
CQP (Constant Quantization Parameter) — NVENC and AMF's equivalent of CRF. Same concept: varies bitrate to maintain target quality. CQP 18–22 covers the same practical range as CRF 18–22.
CBR (Constant Bitrate) — Fixed bitrate regardless of scene complexity. Required for streaming (Twitch, YouTube Live) because the streaming server expects a steady data rate. For local recording, CBR is worse than CQP/CRF because it wastes bits on simple scenes and may under-allocate bits during complex action sequences.
File Size Expectations Per Hour
Storage planning for gaming recordings requires knowing what to expect. The numbers are larger than most players realize.
| Resolution | FPS | Encoder | Quality | File Size/Hour |
|---|---|---|---|---|
| 1080p | 60 | NVENC H.264 | CQP 18 | 18–30 GB |
| 1080p | 60 | NVENC H.264 | CQP 22 | 10–18 GB |
| 1080p | 60 | NVENC H.264 | CQP 26 | 5–10 GB |
| 1080p | 30 | NVENC H.264 | CQP 22 | 6–10 GB |
| 1440p | 60 | NVENC H.264 | CQP 20 | 25–45 GB |
| 4K | 60 | NVENC H.265 | CQP 20 | 30–50 GB |
| 1080p | 60 | x264 CRF 18 | — | 20–35 GB |
| 1080p | 60 | NVENC HEVC | CQP 20 | 12–22 GB |
At 50 Mbps (a common high-quality recording setting), 1 hour of 1080p60 footage produces approximately 22.5 GB. At 100 Mbps (rare but used for very high quality), that doubles to 45 GB.
Most gaming sessions run 2–4 hours, which means a single session can produce 40–90 GB of footage at high quality settings. Plan your storage accordingly — a dedicated 2 TB SSD for recordings is practical for serious content creators.
Pro Tip: Use NVENC H.265 (HEVC) instead of H.264 if your GPU supports it (NVIDIA GTX 10-series and newer, AMD RX 5000-series and newer). H.265 produces the same visual quality as H.264 at roughly half the file size. The only downside is slightly higher GPU encoding overhead and reduced compatibility with older editing software. For modern workflows, HEVC is the better choice for local recording.
Console Clip Formats
PC recording via OBS gives you full control over format and quality. Consoles are more constrained.
Xbox (Game Bar, Xbox Series X/S, Xbox One):
- Xbox Game Bar (Windows PC): MP4, H.264, AAC audio, up to 4K30 or 1080p60 depending on settings
- Xbox Series X/S: MP4, H.264 or HEVC, up to 4K60 (with Activity on newer firmware)
- Xbox One: MP4, H.264, up to 1080p60
- Clips upload directly to Xbox network or via the companion app
PlayStation 5:
- MP4, H.264, up to 4K60 for screenshots and video (video clips up to 60 minutes)
- Share button captures up to the last 60 seconds automatically
- Export to USB drive or PS5 media player for transfer
Nintendo Switch:
- MP4, H.264, AAC audio
- Resolution capped at 1080p30 (docked) or 720p30 (handheld)
- Video capture limit: 30 seconds for most games (some games support longer with SD card)
- Export via SD card or USB cable using Nintendo Switch Photo Transfer app
Steam Deck:
- OBS is available natively in Desktop Mode — same settings as PC
- Game Mode capture: Ctrl+1/2/3/4 for screenshots; native video capture limited
- Third-party: GPU Screen Recorder or similar for in-game capture without Desktop Mode
Console clips are generally ready for direct sharing without format conversion, but the file sizes can still require compression for Discord's free tier limits.
Platform Upload Limits and Specs
Knowing the platform limits before you compress saves you from compressing twice.
| Platform | Format | Max File Size | Max Duration | Max Resolution | Notes |
|---|---|---|---|---|---|
| Discord (Free) | MP4, GIF, WebM | 25 MB | No limit | 1080p | Inline playback requires H.264 |
| Discord (Nitro Basic) | MP4, WebM | 50 MB | No limit | 1080p | — |
| Discord (Nitro) | MP4, WebM | 500 MB | No limit | 1080p | — |
| Reddit Video | MP4 | 1 GB | 15 minutes | 1080p | H.264 required, AAC audio |
| Twitter/X | MP4 | 512 MB | 2 min 20 sec | 1920×1200 | H.264/AAC, 40 Mbps max |
| YouTube | MP4, MOV, MKV | 256 GB | 12 hours | 8K | HEVC/H.264/VP9/AV1 |
| YouTube Shorts | MP4 | 256 GB | 60 seconds | 1080p | Vertical preferred (9:16) |
| TikTok | MP4, MOV | 4 GB | 10 minutes | 1080p | Vertical preferred |
| Twitch Clips | — | Generated by Twitch | 60 seconds | 1080p | Download as MP4 |
| Medal.tv | MP4 | 1 GB | 15 minutes | 1080p | Auto-compressed to 720p for sharing |
| Imgur | MP4, GIF | 200 MB | — | 1080p | Auto-generates GIF preview |
| Streamable | MP4 | 250 MB | 10 minutes | 1080p | Embeds in Discord automatically |
The Discord free tier's 25 MB limit is the most constraining. At typical gaming bitrates, 25 MB holds roughly 10–30 seconds of quality gameplay depending on the action intensity.
Compression Workflow for Sharing
The standard workflow: record high quality → identify the best clip → trim → compress for the target platform.
Step 1: Identify and Trim the Clip
Raw recordings contain dead time before and after the highlight. Trim to just the essential moment with a few seconds of context on each side:
# Trim 30 seconds starting at the 47-minute 20-second mark
ffmpeg -ss 00:47:20 -t 30 -i recording.mkv -c copy clip.mp4
The -c copy flag does stream copying — the trim is lossless and instant. For frame-accurate cuts (where you need to start at a specific non-keyframe), omit -c copy and let FFmpeg decode and re-encode from the nearest keyframe.
Use our video trimmer for a visual interface if you prefer not to work with timestamps manually.
Step 2: Compress for Target Platform
For Discord free tier (25 MB limit, 30-second clip):
# Calculate target bitrate:
# (25 MB × 8 × 1024 kbit/MB) / 30 seconds = ~6827 kbps total
# Subtract audio (128 kbps) = ~6699 kbps video
# Scale down to 720p to improve visual quality at the target bitrate
ffmpeg -i clip.mp4 -vf "scale=1280:720" \
-c:v libx264 -b:v 6500k -maxrate 8000k -bufsize 13000k \
-c:a aac -b:a 128k \
-movflags +faststart \
discord_clip.mp4
For precise file size targeting (two-pass encoding):
# Two-pass encoding hits the target size more accurately
# Target: 25 MB, Duration: 30s
# Video bitrate: (25 × 8 × 1024 / 30) - 128 = ~6699 kbps
# Pass 1
ffmpeg -i clip.mp4 -vf "scale=1280:720" \
-c:v libx264 -b:v 6699k -pass 1 \
-an -f null /dev/null
# Pass 2
ffmpeg -i clip.mp4 -vf "scale=1280:720" \
-c:v libx264 -b:v 6699k -pass 2 \
-c:a aac -b:a 128k \
-movflags +faststart \
discord_clip_final.mp4
For Reddit (1 GB limit, broader quality budget):
# Reddit accepts up to 1 GB — you can afford quality
ffmpeg -i clip.mp4 -vf "scale=1920:1080" \
-c:v libx264 -crf 20 -preset slow \
-c:a aac -b:a 192k \
-movflags +faststart \
reddit_upload.mp4
For Twitter/X (512 MB limit, max 2:20 duration):
# 140-second clip at 1080p within 512 MB limit
ffmpeg -i clip.mp4 -vf "scale=1920:1080" \
-c:v libx264 -b:v 28000k \
-c:a aac -b:a 192k \
-movflags +faststart \
-t 140 \
twitter_clip.mp4
For compression without command-line tools, our video compressor handles file size targeting with quality presets optimized for social media.
Quality vs Size Tradeoffs for Gaming Footage
Gaming footage compresses differently depending on the content. Fast-moving first-person shooters with explosions and particle effects are the hardest to compress — they have rapid full-frame changes and high-frequency detail in every direction. Strategy games with mostly static camera views compress much better.
- FPS games (CS2, Valorant, Apex): expect 30–50% larger files than other genres at the same settings
- Strategy/MOBA (Dota 2, Starcraft): compress well due to static overhead camera
- RPG/Open world (Elden Ring, Cyberpunk): moderate compression, depends on scene complexity
- Side-scrollers/indie: compress extremely well, often 50–70% smaller than FPS at same settings
Reducing frame rate from 60fps to 30fps for sharing (not for the recording itself) cuts file size roughly in half with minimal perceptible quality loss in a social media player. Gaming highlights viewed in a small video player in a Discord message do not need 60fps:
ffmpeg -i clip_60fps.mp4 -vf "scale=1280:720,fps=30" \
-c:v libx264 -crf 22 -preset slow \
-c:a aac -b:a 128k \
-movflags +faststart \
clip_30fps_720p.mp4
Pro Tip: For Discord specifically, frame rate reduction is the most effective single compression step. A 60fps clip at 720p CRF 22 is roughly twice the file size of the same clip at 30fps. Since Discord's player maxes out at 720p for embedded playback, and most gaming highlights are viewed at 300-400px wide in a chat window, the difference between 30fps and 60fps is essentially invisible. Drop the frame rate first, then adjust resolution and quality if you still need to reduce size.
NVENC H.265 vs H.264 for Recording
If you have a modern GPU (NVIDIA GTX 1000-series or newer, AMD RX 5000-series or newer), H.265 recording offers roughly 40–50% file size reduction at equivalent quality compared to H.264 recording.
The tradeoff: H.265 has slightly higher GPU encoding overhead and marginally worse compatibility with older editing software. For a modern workflow (DaVinci Resolve, Premiere Pro, Final Cut Pro), H.265 support is complete.
For sharing clips directly without editing, H.265 files need to be transcoded to H.264 for some platforms (Reddit requires H.264, some older Discord clients struggle with H.265). If you record in H.265 and share directly, convert to H.264 during your compression step:
# Convert HEVC (H.265) recording to H.264 for sharing
ffmpeg -i recording_hevc.mkv -c:v libx264 -crf 22 -preset slow \
-c:a aac -b:a 128k \
-movflags +faststart \
sharing_h264.mp4
Game-Specific Capture Tools
OBS is not the only recording option. Different tools have different strengths:
NVIDIA ShadowPlay (GeForce Experience / NVIDIA App): Simple to use, minimal performance impact, always-on replay buffer (retroactively save the last N seconds). Outputs MP4 at high bitrates (default 50 Mbps). Files need compression before sharing. Limited control over encoding parameters compared to OBS.
AMD ReLive / Adrenalin Software: AMD's equivalent to ShadowPlay. Similar replay buffer feature, MP4 output. Less community documentation than OBS or ShadowPlay.
Xbox Game Bar (Windows 10/11): Built into Windows, captures MP4, supports replay buffer. Limited frame rate and resolution options. Convenient for quick clips without third-party software.
Medal.tv: Standalone lightweight capture tool popular in competitive gaming communities. Automatic clip detection based on in-game events. Integrates directly with social sharing. Converts and compresses automatically before sharing.
Fraps (legacy): Outputs uncompressed AVI files at hundreds of GB per hour. Only relevant for specific use cases that require uncompressed capture. Not recommended for general use.
Converting Existing Clips
If you have clips in MKV, MTS, MOV, or other formats from capture cards or console exports, convert them through our MKV converter and MP4 converter. The video converter hub covers all supported format pairs.
For cross-platform conversion and batch processing of multiple clips, the command-line approach with FFmpeg scales to any volume. For one-off conversions and quick format changes, the online tools handle the heavy lifting without setup.
Frequently Asked Questions
Why does OBS default to MKV instead of MP4?
OBS defaults to MKV because it is safer. The MKV format writes incrementally, so a crash during a long recording does not destroy the entire file — only the last few seconds are lost. MP4's design requires writing a metadata block at the end of the file, which means any crash before recording stops normally produces a file that is impossible to play without repair software. OBS recommends MKV and then remuxing to MP4 after recording.
What bitrate should I use for streaming on Twitch?
Twitch's recommended bitrate is 3,500–6,000 Kbps for H.264 at 1080p60. Partners with transcoding options can use up to 6,000 Kbps safely. For non-partners (where most viewers watch at the source quality), staying around 4,500–5,500 Kbps balances quality with bandwidth accessibility for viewers on slower connections. Twitch also supports H.265 (HEVC) for Twitch Partners at up to 8,500 Kbps, which significantly improves quality at similar bitrates.
My game drops frames when I use x264 encoding. What should I do?
Switch to NVENC (NVIDIA) or AMF (AMD) hardware encoding. These use the dedicated video encoding chip on your GPU rather than the CPU, so the game and the encoder are not competing for the same resources. If you have already switched to hardware encoding and still see frame drops, reduce your game's graphics settings, lower the encoder quality preset (P4 to P3), or reduce the recording resolution. Also verify that OBS's "Encoder Overloaded" warning is not appearing — this indicates the encoder cannot keep up with the frame rate.
How do I reduce a 2 GB clip to under 25 MB for Discord?
A 2 GB clip that needs to fit in 25 MB requires roughly 80:1 compression — only achievable by also significantly reducing duration. Trim the clip to the essential 15–20 seconds using the video trimmer, then compress to 720p at 30fps. If you absolutely must share a longer clip, upload to Streamable or Medal.tv and post the link — Discord embeds Streamable links as inline video players, which most users find preferable to a file upload anyway.
What is the best OBS setting for recording competitive gaming (CS2, Valorant)?
Use NVENC H.264 with CQP 20, P5 (Slow) preset, 1080p60. Enable Look-Ahead for better motion handling during fast camera movements and explosions. Record in MKV. The competitive gaming genres have the most demanding encoding requirements because of constant motion, rapid full-screen changes, and fine detail (character models, crosshairs, UI text) that must remain sharp. CQP 20 is the sweet spot between quality and file size for this content.
Conclusion
The game capture workflow comes down to three stages with distinct priorities at each step.
Recording: prioritize crash safety and quality — use MKV container, NVENC or AMF hardware encoding, CQP 18–22, 60fps. Storage is cheap; re-recording a highlight is not possible.
Trimming: cut immediately to the essential moment. The sooner you reduce the duration, the smaller everything else becomes.
Sharing: match the target platform's constraints — compress to 720p30 for Discord free tier, 1080p60 for Reddit and YouTube, and use two-pass encoding when you need to hit a specific file size ceiling precisely.
Use our video compressor for quick platform-ready compression, the video trimmer for precise clip cutting, and the MP4 converter for format changes. For the complete OBS recording format comparison, see our best screen recording format guide, and for platform-specific sharing optimization, see the best video format for Discord guide. For more on the encoding side of game capture, the screen recording to GIF and WebM workflow covers the conversion pipeline from recording to finished deliverable.



