Constant bitrate (CBR) spends the same number of bits every second; variable bitrate (VBR) spends more on complex scenes and less on simple ones. At the same file size, VBR looks better, which is why it's the right choice for uploads, exports and podcasts you download. CBR exists for live streaming, where the connection needs a steady flow: YouTube Live's encoder settings ask for CBR.
Below: the difference in one table, 1-pass vs 2-pass vs CRF, settings for each destination, the audio (MP3) side, and the FFmpeg commands. Checked on 1 November 2026 against YouTube Help, the FFmpeg and HandBrake documentation and the LAME docs. More in our video formats, codecs and numbers guides.
The short answer
VBR is better quality for the same file size, so use it (or a constant-quality mode such as CRF) for anything you export and upload: YouTube's upload guidance lists variable bitrate. Use CBR for live streaming, where YouTube Live asks for CBR with a 2-second keyframe interval. Use 2-pass VBR only when you must hit an exact file size. For podcast MP3s, either works; 128 kbps CBR stereo is the simple, predictable choice.
Key takeaways
- CBR = steady bits per second; VBR = bits follow the picture's complexity; CRF/constant quality is VBR with a quality target instead of a size target.
- Same average bitrate: VBR looks better, because easy scenes don't waste bits that hard scenes need.
- 2-pass doesn't beat CRF on quality; it lets you hit a target size. HandBrake says constant quality can match a 2-pass encode in about half the time.
- Live streaming: CBR. YouTube Live recommends 14 Mbps for 1080p30 in H.264, keyframes every 2 seconds.
- YouTube, Instagram and TikTok re-encode every upload, so your mode only affects the copy they start from.
What is the difference between CBR and VBR?
The difference is how the encoder spreads bits over time. With CBR, every second gets roughly the same budget whether it shows a black screen or confetti. With VBR, the encoder gives a busy second more and a still second less, around an average or a quality target.
| CBR (constant bitrate) | VBR (variable bitrate) | CRF / constant quality | |
|---|---|---|---|
| What you set | One bitrate | Average (and often maximum) bitrate | A quality number (CRF or RF) |
| File size | Exactly predictable | Predictable on average | Unpredictable |
| Quality at a given size | Lowest | Higher | Highest per bit |
| Passes | 1 | 1 or 2 | 1 |
| Best for | Live streaming, fixed-bandwidth links | Hitting a size or bitrate target | Uploads, exports, archives |
The FFmpeg H.264 guide puts it bluntly: x264 has no true CBR mode, only a simulated one, and CBR encodes are usually inefficient when the video is easy to encode, because bits are spent on frames that don't need them.
Which is better quality, CBR or VBR?
VBR is better quality at the same file size. A talking-head video at 8 Mbps CBR spends 8 Mbps on a still face; a VBR encode at the same average uses 4 Mbps there and 14 Mbps on the fast cutaway, and the cutaway is where blockiness shows. With a high enough CBR rate both look fine; the file is just bigger than it needs to be.
CRF (FFmpeg, x264) and RF (HandBrake) go one step further and target quality instead of size. The FFmpeg guide calls CRF the recommended rate control for most uses and suggests 17 to 28, with 23 the default and 17 to 18 visually close to lossless. Raising CRF by 6 roughly halves the bitrate.
1-pass vs 2-pass: when does 2-pass help?
2-pass helps only when you need an exact file size. The first pass analyses the video; the second spends the budget where the first found it was needed. The FFmpeg guide recommends two-pass when you're targeting a specific output size and CRF when quality matters more than size; HandBrake's guide says constant quality can produce the same quality as a 2-pass encode while nearly halving the encode time.
Two-pass at a known bitrate, from the FFmpeg guide:
ffmpeg -y -i in.mp4 -c:v libx264 -b:v 2600k -pass 1 -an -f null /dev/null then ffmpeg -i in.mp4 -c:v libx264 -b:v 2600k -pass 2 -c:a aac -b:a 128k out.mp4 (on Windows, use NUL instead of /dev/null).
To pick the bitrate for a size limit, divide the size in bits by the length in seconds and subtract the audio. The free video bitrate calculator does that sum, and video file size per minute has the table.
CBR or VBR: what to use for each destination
| Destination | Mode | Settings to start from | Source |
|---|---|---|---|
| YouTube upload | VBR or CRF | H.264, 8 Mbps at 1080p30 SDR, 12 Mbps at 1080p60; or CRF 18 | YouTube Help, upload encoding |
| Instagram, TikTok, Facebook | VBR or CRF | H.264 MP4 at 1080p; the app re-encodes, so very high bitrates don't help | Platform re-encodes (see below) |
| YouTube Live, OBS streaming | CBR | H.264 1080p30: 14 Mbps (minimum 5); 1080p60: 17 Mbps; keyframe every 2 s; AAC 128 kbps | YouTube Help, live encoder settings |
| Email, Discord, a size cap | 2-pass VBR | Bitrate = size ÷ length, minus audio | FFmpeg H.264 guide |
| Master or archive | CRF (low) or an editing codec | CRF 16 to 18, or ProRes | FFmpeg H.264 guide |
The full YouTube recipe is in the best export settings for YouTube, and how bitrate relates to resolution is in the video bitrate guide.
Live streaming in OBS
In OBS, switch Settings > Output to Advanced mode, open the Streaming tab and set Rate Control to CBR, with a bitrate your upload connection can comfortably sustain. OBS's knowledge base doesn't publish a rate-control recommendation that we could find; YouTube Live's encoder page does, and it says CBR. Twitch's help pages didn't load for us, so check its broadcast requirements there. For local recordings in OBS, a quality-based mode (CQP or CRF) gives better files than CBR.
Why CBR for live: the viewer's player and the platform's ingest work with a buffer, and a sudden spike above what your upload can carry causes dropped frames. The FFmpeg guide's constrained mode (-maxrate plus -bufsize) is the middle ground for streaming when you encode with FFmpeg yourself.
CBR vs VBR for audio and MP3
For MP3, VBR gives better quality per kilobyte too. LAME's VBR scale runs from -V 0 (highest) to -V 9 (lowest); in FFmpeg the same scale is -q:a. The FFmpeg MP3 guide says -q:a 2 averages about 170 to 210 kbps and that 0 to 3 normally sounds transparent.
| Use | FFmpeg setting | Rough size per minute |
|---|---|---|
| VBR, near-transparent music | -c:a libmp3lame -q:a 2 | About 1.3 to 1.6 MB |
| CBR stereo podcast | -c:a libmp3lame -b:a 128k | 0.96 MB |
| CBR mono speech | -c:a libmp3lame -b:a 64k -ac 1 | 0.48 MB |
For podcasts, CBR is the conservative pick: with a fixed rate, every player can work out duration and seek points from the file size. Apple Podcasts recommends MP3 at 128 to 256 kbps stereo or 96 to 128 kbps mono (44.1 or 48 kHz) and doesn't specify CBR or VBR. Inside video files, the audio mode rarely matters; YouTube's upload page lists AAC-LC or Opus.
Do platforms re-encode your video anyway?
Yes. YouTube processes every upload into its own set of formats; its HDR page, for example, says it creates the SDR version automatically. Meta's engineering blog describes Instagram and Facebook producing their own VP9 and AV1 encodings on the server. So the bitrate mode you choose shapes the copy they start from, not what viewers get. Upload a clean, generous VBR or CRF file and let them squeeze it.
For quick sharing copies, QuickVeed's free video compressor records a smaller file in the browser at a target of about 3, 1.5 or 0.7 Mbps (1080p, 720p or 480p) and shows the estimated size first. It's a fast way to fit a chat or email limit, not a replacement for an encoder with 2-pass control.
Frequently asked questions
Is CBR or VBR better for YouTube uploads?
VBR, or a constant-quality setting such as CRF. YouTube's upload guidance lists variable bitrate and recommends 8 Mbps for 1080p at 24 to 30 fps.
Should I use CBR or VBR in OBS?
CBR for streaming, as YouTube Live's encoder page asks. For recordings you'll edit later, a quality-based mode gives better files.
Is 2-pass encoding better quality than 1-pass?
Not better than a 1-pass CRF encode; it's better than 1-pass at a fixed bitrate, and it lets you hit an exact file size.
Does VBR make files smaller?
At the same quality, usually yes, because simple scenes use fewer bits. At the same average bitrate, the size is the same and VBR looks better.
Should podcast MP3s be CBR or VBR?
Either plays in modern apps. 128 kbps CBR stereo (or 64 kbps mono) is the predictable choice for seeking and duration.
What is CRF?
Constant Rate Factor: a single-pass mode that targets a quality level and lets the bitrate vary. Lower numbers mean higher quality and larger files; 18 to 23 is the usual range.
Try it with your own video
Exported your video and want captions or short clips from it? Upload it, get editable subtitles, and download an SRT or a captioned copy. QuickVeed plans start at $18/month, and new accounts get a 14-day trial with 250 credits, no card needed. Sign up or see pricing.
Sources
Competitor details in this post were checked against these public pages in November 2026. Products and prices change, so confirm with each vendor before you decide.
- YouTube Help: recommended upload encoding settings
- YouTube Help: choose live encoder settings, bitrates and resolutions
- FFmpeg wiki: H.264 video encoding guide (CRF, two-pass, CBR, VBV)
- HandBrake documentation: constant quality vs average bit rate
- FFmpeg wiki: MP3 encoding guide (VBR -q:a, CBR -b:a)
- LAME: variable bit rate options (-V 0 to 9)
- Apple Podcasts for Creators: audio requirements (loudness, formats)
- Meta Engineering: enhancing HDR on Instagram for iOS with Dolby Vision (17 Nov 2025)





