Try every tool free for 14 days with 250 credits. No card needed. Start free
Product
AI video generatorText or an image to video with Veo, Kling, Seedance and more AI avatars & lip syncTalking presenters and lip-synced video from a script or audio UGC video adsAn AI creator presents your product on camera, in 9:16 Subtitles & translationTranscribe, edit, translate and download SRT or VTT Podcast to clipsTurn a long video into captioned vertical clips AI dubbingDub a video into 32 languages, in the speaker's own voice AI voice & cloningNatural voiceovers and your own cloned voice
Company
Free tools Pricing Blog Contact

H.264 vs H.265 vs AV1: We Re-Encoded Our Own Clips

An original test on our own short social clips: file size per minute, VMAF and SSIM at every CRF, matched-quality sizes and encode times for H.264, H.265, AV1 and VP9, with the exact FFmpeg commands.

H.264 vs H.265 vs AV1: We Re-Encoded Our Own Clips

H.264 vs H.265 vs AV1, in short: re-encoding three of our own short clips at matched quality (VMAF), AV1 files averaged 72% of the H.264 size, H.265 84% and VP9 85%. AV1 saved 53% on a detailed product clip but only 6% on a talking head, where H.265 was 4% larger. H.265 took 2.66× and AV1 3.14× as long to encode.

More on this topic: Video formats, codecs and numbers, every guide in one place.

These are small, short, already-compressed social clips, not 4K film masters, so read the numbers as a guide for Reels, Shorts, TikTok and file sharing. The method, every result and the limits are below, and the raw data and script can be downloaded from this page.

The short answer

On our clips, at matched VMAF: AV1 (SVT-AV1, preset 8) averaged 72% of H.264's file size (range 47-94%), H.265 (x265 medium) 84% (57-104%) and VP9 85% (58-106%). Encoding took 2.66× (H.265), 3.14× (AV1) and 9.51× (VP9) as long as x264 medium. For uploads, export H.264; use AV1 or H.265 when file size matters and the player supports it.

Key takeaways

  • At matched quality, AV1 averaged 72% and H.265 84% of the H.264 file size across our three clips.
  • The saving depends on the clip: 53% (AV1) on a detailed product clip, 6% on a talking head, where H.265 was 4% larger than H.264.
  • The same CRF number means different quality in each codec: H.264 CRF 23 scored VMAF 96.92 on our talking-head clip, H.265 CRF 26 scored 94.07 and AV1 CRF 38 scored 94.18.
  • H.265 took about 2.7×, AV1 at preset 8 about 3.1× and VP9 about 9.5× as long to encode as H.264 on an Apple M1.
  • Audio matters on small files: 128 kbps AAC was 15.8% of our talking-head file at H.264 CRF 23.

Which is smaller: H.264, H.265 or AV1?

AV1 made the smallest files at the same quality on all three of our clips, H.265 and VP9 came next, and H.264 was largest on two clips out of three. The table compares MB per minute of video (no audio) at one VMAF score per clip, the score all four codecs reached within the CRF values we tested (the method section explains how we picked it).

ClipMatched VMAFH.264 MB/minH.265AV1VP9
Talking-head UGC demo943.393.53 (104%)3.18 (94%)3.59 (106%)
AI product clip (mug)904.492.57 (57%)2.10 (47%)2.61 (58%)
AI product clip (serum)952.522.24 (89%)1.92 (76%)2.25 (89%)
Average vs H.264100%83.5%72.3%84.5%

The detailed 960×540 mug clip, which also had the highest source bitrate, gained most: H.265 needed 57% and AV1 47% of the H.264 size. On the 17-second talking-head clip the newer codecs barely helped: AV1 was 94% of H.264 and H.265 104%. A static face against a plain background is already cheap to encode, so there is little left for a better codec to save. Sizes at matched quality are interpolated between the two nearest measured CRF values on a log scale; we did not extrapolate.

How we tested

We took three clips we made ourselves and re-encoded each one at 11 settings with FFmpeg, video only, then compared every output with its source using VMAF and SSIM.

ClipSizeFrame rateLengthSource videoAudio
Talking-head UGC demo540×98224 fps17.0 sH.264 High, 476.7 kbpsYes (AAC)
AI product clip (mug)960×54024 fps5.0 sH.264 High, 1382 kbpsNo
AI product clip (serum)560×68816 fps5.1 sH.264 High, 407.4 kbpsNo
  • Machine: Apple M1, 16 GB RAM, 8 cores, macOS 27.0.1.
  • Software: ffmpeg version 7.1 with x264 r3108, x265 4.1, SVT-AV1 2.3.0, libvpx 1.15.0 and libvmaf 3.0.0.
  • Settings: libx264 CRF 18, 23 and 28 (preset medium); libx265 CRF 20, 26 and 30 (preset medium); libsvtav1 CRF 30, 38 and 45 (preset 8); libvpx-vp9 CRF 31 and 37 (-b:v 0). All 8-bit 4:2:0, MP4, no audio.
  • Quality: VMAF with libvmaf's default model (vmaf_v0.6.1), mean over all frames, and FFmpeg's SSIM filter (All). The reference is the source file itself.
  • Speed: wall-clock time, median of 3 runs, FFmpeg's default threading.
  • Matched quality: for each clip, the whole VMAF score nearest 94 that all four codecs reached: 94 for the talking head, 95 for the serum clip and 90 for the mug clip, where AV1's best tested setting (CRF 30) scored 91.05.

The commands, with in.mp4 as the source:

CodecCommand
H.264ffmpeg -i in.mp4 -map 0:v:0 -c:v libx264 -crf 23 -preset medium -pix_fmt yuv420p -an -movflags +faststart out.mp4
H.265ffmpeg -i in.mp4 -map 0:v:0 -c:v libx265 -crf 26 -preset medium -tag:v hvc1 -pix_fmt yuv420p -an -movflags +faststart out.mp4
AV1ffmpeg -i in.mp4 -map 0:v:0 -c:v libsvtav1 -crf 38 -preset 8 -pix_fmt yuv420p -an -movflags +faststart out.mp4
VP9ffmpeg -i in.mp4 -map 0:v:0 -c:v libvpx-vp9 -crf 31 -b:v 0 -pix_fmt yuv420p -an -movflags +faststart out.mp4
VMAFffmpeg -i out.mp4 -i in.mp4 -lavfi "[0:v]setpts=PTS-STARTPTS[d];[1:v]setpts=PTS-STARTPTS[r];[d][r]libvmaf=log_fmt=json:log_path=vmaf.json" -f null -
SSIMffmpeg -i out.mp4 -i in.mp4 -lavfi "[0:v]setpts=PTS-STARTPTS[d];[1:v]setpts=PTS-STARTPTS[r];[d][r]ssim" -f null -

Download the script and the raw results (JSON). The script runs offline on any folder of MP4 files.

How big is each file at each CRF?

Here is every encode: MB per minute of video, average bitrate, size compared with the source's video stream, VMAF (0-100, higher is better) and SSIM (1.0 is identical). Lower CRF means higher quality and a bigger file in every codec, but the scales differ, so the same number does not mean the same quality.

Talking-head UGC demo (540×982, 24 fps, 17 s)

EncodeMB per minutekbpsSize vs sourceVMAFSSIM
H.264 CRF 187.501000.2209.2%98.390.9951
H.264 CRF 234.77636.1133%96.920.9931
H.264 CRF 283.13417.787.4%93.340.9891
H.265 CRF 206.47863.1180.5%97.430.9935
H.265 CRF 263.5547499.1%94.070.9890
H.265 CRF 302.35312.865.4%89.900.9840
AV1 CRF 305.84778.5162.8%96.500.9916
AV1 CRF 383.2743691.2%94.180.9885
AV1 CRF 452.1528760%91.620.9853
VP9 CRF 315.27703147%96.270.9904
VP9 CRF 373.59478.1100%93.990.9872

AI product clip, mug (960×540, 24 fps, 5 s)

EncodeMB per minutekbpsSize vs sourceVMAFSSIM
H.264 CRF 1810.461394.3100.6%95.970.9914
H.264 CRF 235.71760.854.9%92.450.9871
H.264 CRF 283.03404.729.2%85.980.9801
H.265 CRF 205.18690.149.8%93.960.9894
H.265 CRF 262.14284.920.6%88.960.9835
H.265 CRF 301.27169.612.2%83.080.9769
AV1 CRF 302.43323.723.4%91.050.9866
AV1 CRF 381.45193.113.9%87.340.9831
AV1 CRF 450.94125.29%83.290.9791
VP9 CRF 312.92389.828.1%90.940.9842
VP9 CRF 371.77236.617.1%86.800.9795

AI product clip, serum (560×688, 16 fps, 5 s)

EncodeMB per minutekbpsSize vs sourceVMAFSSIM
H.264 CRF 185.26700.8170.8%98.800.9956
H.264 CRF 233.54471.7115%97.670.9941
H.264 CRF 282.27303.273.9%94.210.9895
H.265 CRF 204.52602.4146.8%98.290.9942
H.265 CRF 262.4532779.7%95.860.9900
H.265 CRF 301.61214.652.3%91.790.9856
AV1 CRF 302.99398.297%97.180.9915
AV1 CRF 381.79238.758.2%94.650.9883
AV1 CRF 451.1415237%90.980.9845
VP9 CRF 313.01401.897.9%96.860.9902
VP9 CRF 372.08277.667.7%94.520.9871

Two things stand out. First, re-encoding a small, already-compressed clip at high quality can make it bigger: H.264 CRF 18 turned the 5-second serum clip into a file 170.8% the size of its source video, and the mug clip into 100.6%. Second, the default-looking CRF values are not equivalent across codecs: on the talking head, H.264 CRF 23 scored VMAF 96.92 at 4.77 MB per minute, while H.265 CRF 26 scored 94.07 at 3.55 and AV1 CRF 38 scored 94.18 at 3.27. Comparing codecs at “their usual CRF” mixes quality and size; comparing at matched VMAF, as above, doesn't.

How long does H.265 or AV1 take to encode?

H.265 took about 2.7 times and AV1 about 3.1 times as long as H.264 to encode our clips, and VP9 about 9.5 times. The table shows the median wall-clock time at each codec's middle CRF, with the frames encoded per second.

ClipFramesH.264 CRF 23H.265 CRF 26AV1 CRF 38VP9 CRF 31
Talking-head UGC demo4081.62 s (252.4 fps)4.00 s (102.1 fps)5.70 s (71.5 fps)21.00 s (19.4 fps)
AI product clip (mug)1210.91 s (132.7 fps)2.49 s (48.6 fps)1.05 s (114.7 fps)6.14 s (19.7 fps)
AI product clip (serum)810.39 s (208 fps)1.08 s (74.7 fps)1.85 s (43.9 fps)3.42 s (23.6 fps)
Average vs H.2641×2.66×3.14×9.51×

Times this short include FFmpeg's start-up, and the Mac was running other work, so treat the ratios as rough: AV1's ranged from 1.16× to 4.75× H.264 by clip. SVT-AV1 has faster presets (up to 13) and slower, more efficient ones; preset 8 is a common middle ground. VP9 used libvpx's defaults, which are slow; its speed settings would change this a lot. On a long video these ratios turn into real waiting time: at the talking head's AV1 speed of 71.5 frames per second, a 10-minute 24 fps video (14,400 frames) would take about 3 minutes 20 seconds on this machine.

Which codec should you use for TikTok, Reels and Shorts?

Use H.264 for TikTok, Instagram Reels and YouTube Shorts uploads, at a high quality setting (CRF 18 to 20) from your original. Platforms re-encode every upload for their viewers, so a smaller AV1 or H.265 upload only saves upload time, and our test shows that saving can be close to nothing on talking-head content. H.264 CRF 18 on our 540×982 talking head was 7.5 MB per minute, small enough that the upload is not the bottleneck.

Which codec should you use to send a video by email or Discord?

Use H.264 to send a video by email, Discord or chat, and make it smaller with a higher CRF or a lower resolution rather than a newer codec. H.264 plays on every device; an AV1 or HEVC attachment may not play for the person you send it to, and on talking-head clips the newer codec saved little in our test.

With audio included, our talking-head clip at H.264 CRF 23 plus 128 kbps AAC came to 5.71 MB per minute, so roughly 3.5 minutes fits Discord's 20 MB free limit and 4.4 minutes fits Gmail's 25 MB. The audio was 15.8% of that file (120.3 kbps of AAC next to 635.0 kbps of video), so on small files a lower audio bitrate, or mono for speech, is a real saving. Our clips are small; a 1080p phone video needs far more per minute, as video file size per minute shows.

Step-by-step guides: how to compress a video for email, how to make a video small enough for Discord and how to compress a video without losing quality. The free video compressor does it in your browser; it's free, runs in your browser and never uploads your file. The video bitrate calculator works out the bitrate for a size limit.

When is AV1 or H.265 worth it?

AV1 or H.265 is worth it when you store or serve the file yourself and the video has detail and motion. On our detailed product clip, AV1 needed 47% and H.265 57% of the H.264 size at the same VMAF; across a library or a website's video bandwidth, that roughly halves storage and bandwidth.

JobOur pickWhat our test showed
Uploading to TikTok, Reels, Shorts, YouTubeH.264Platforms re-encode; the codec saving is small on talking heads
Email, Discord, chat attachmentsH.264Plays everywhere; size comes from CRF, resolution and audio
Video on your own websiteAV1 with an H.264 fallbackSmallest files on all three clips
Archiving detailed footageAV1 or H.26547-57% of H.264's size on the product clip
Fast turnaroundH.264H.265 and AV1 took 2.7-3.1× as long at these settings

Browser and device support decides the rest; AV1 vs HEVC has the October 2026 support tables, and what is a WebM file covers VP9 and AV1 in WebM.

What are the limits of this test?

This is a small test, and these are its limits:

  • Three clips, 27 seconds in total. Two are 5-second AI-generated product clips and one is a 17-second talking head. Results on sports, screen recordings or grainy footage will differ.
  • Low resolution. The largest clip is 960×540. We did not test 1080p or 4K, where there are far more pixels per frame to save on, so our percentages may not carry over.
  • Already-compressed sources. Every source was already H.264, so VMAF measures loss against that file, not against a camera master. Re-encoding H.264 with H.264 may be favoured, because the source's own artefacts are part of the reference.
  • One preset per codec. x264 and x265 medium, SVT-AV1 preset 8 and libvpx defaults. Slower presets make smaller files at the same quality, faster ones the opposite.
  • Matched quality is interpolated between the two nearest CRF values, and the mug clip is matched at VMAF 90 because H.265, AV1 and VP9 did not reach 94 at the CRFs we tested.
  • Timing is noisy. Encodes lasted 0.3 to 21 seconds on a shared Apple M1; SVT-AV1 output also varied by a few hundred bytes between runs.
  • VMAF and SSIM are models of perceived quality, not a viewer panel.

Frequently asked questions

Is AV1 smaller than H.265?

On our three clips, yes: at matched VMAF, AV1 averaged 72% of H.264's size and H.265 84%. The gap was largest on a detailed product clip and small on a talking head.

How much smaller is H.265 than H.264?

It depends on the video. On our clips, H.265 ranged from 57% of H.264's size (detailed product clip) to 104% (talking head), averaging 84% at matched quality.

Is AV1 slow to encode?

At SVT-AV1 preset 8 it took about 3.1 times as long as x264 medium on our clips, on an Apple M1; H.265 at preset medium took about 2.7 times as long.

What CRF gives the same quality in H.264, H.265 and AV1?

There's no fixed conversion. On our talking-head clip, VMAF of about 94 came from H.264 CRF 28 (93.34), H.265 CRF 26 (94.07) and AV1 CRF 38 (94.18). Test a short sample of your own footage.

Does re-encoding a video always make it smaller?

No. Re-encoding our 5-second serum clip with H.264 CRF 18 made a file 170.8% the size of the source's video. Re-encoding an already-compressed file at high quality can grow it.

Should I upload AV1 to TikTok or Instagram?

No need. Upload H.264 MP4 at a high quality setting; the platforms re-encode every upload for viewers anyway.

Can I run this test on my own videos?

Yes. Our script (quickveed.com/data/video-encode-study.py) takes a folder of MP4 files and needs only FFmpeg built with libvmaf, x264, x265, SVT-AV1 and libvpx.

Try it with your own video

Caption, clip and dub your videos without worrying about codecs: upload MP4 or MOV. Upload a video, add captions, and download a copy ready to post. 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.

Share this article
Ijharul Islam
Written by

Founder, QuickVeed

Ijharul Islam is the founder of QuickVeed, the AI video studio for business. He writes hands-on comparisons and guides on AI video generation, presenters, UGC-style ads and subtitles, so marketing and sales teams can publish more video without a production crew.

Chat with the founder