Quick Verdict
Use H.264 when…
Use H.264 for maximum device compatibility — every camera, phone, smart TV, gaming console, and browser supports H.264 hardware decoding. It's the safe choice for any video that needs to play anywhere.
Use VP9 when…
Use VP9 for web video streaming where you want smaller file sizes without licensing fees — YouTube, Netflix, and Google use VP9 for Chrome and Firefox users. Combine with H.264 fallback for complete compatibility.
H.264 vs VP9: Feature Comparison
| Feature | H.264 | VP9 |
|---|---|---|
| Compression efficiency | Baseline | ~40–50% better than H.264 |
| Royalty / licensing | Patented (MPEG LA pool) | Royalty-free (Google open-source) |
| Browser support | All browsers (hardware accelerated) | Chrome, Firefox, Edge (not Safari natively) |
| Hardware decoding | Every device since ~2010 | Modern phones/PCs (2016+) |
| 4K encoding speed | Fast (hardware encoders everywhere) | Slower (less hardware support) |
| Used by YouTube | Yes (fallback for older devices) | Yes (primary for Chrome/Firefox) |
| HDR support | Limited (HDR10 via SEI) | Yes (HDR10, HLG) |
When H.264 wins
- ✓Compression efficiency: Baseline
- ✓Royalty / licensing: Patented (MPEG LA pool)
- ✓Browser support: All browsers (hardware accelerated)
When VP9 wins
- ✓Compression efficiency: ~40–50% better than H.264
- ✓Royalty / licensing: Royalty-free (Google open-source)
- ✓Browser support: Chrome, Firefox, Edge (not Safari natively)
Frequently asked questions
Does Safari support VP9?
Safari added VP9 support in Safari 14 (2020) on macOS and iOS, but hardware-accelerated VP9 decoding is only available on Macs with Apple Silicon (M1+) and A12 Bionic iPhone/iPad and later. On older Intel Macs, Safari decodes VP9 in software, which drains battery. YouTube on Safari often falls back to H.264 for this reason.
Is VP9 or H.265 better?
H.265 (HEVC) and VP9 achieve similar compression ratios — roughly 40–50% better than H.264. H.265 has wider hardware support (especially on Apple devices). VP9 is royalty-free; H.265 requires patent licensing, which is why streaming services prefer AV1 and VP9 over H.265 for web delivery.
How do I encode VP9 video with FFmpeg?
Use: `ffmpeg -i input.mp4 -c:v libvpx-vp9 -crf 33 -b:v 0 -c:a libopus -b:a 128k output.webm`. The `-crf 33 -b:v 0` combination uses constant quality mode (lower CRF = better quality, range 0–63). For two-pass encoding: first pass with `-pass 1 -an`, second pass with `-pass 2`.
Ready to convert?
Free, browser-based converters — no upload, no signup required.
More comparisons
View all format comparisons →