How to Reduce Video File Size Without Losing Quality (2026 Guide)

H.265 H.264 CRF HandBrake FFmpeg video compression bitrate HEVC
Most effective methods to shrink video files
50%smaller with H.265 vs H.264
CRF 23FFmpeg sweet spot for quality
trim firstremove footage before encoding
WebMbest for web-only video

"Without losing quality" is technically a contradiction — all lossy video compression discards some information by definition. The honest framing: you can compress video to a point where quality loss is invisible at normal viewing conditions. Understanding exactly where that threshold is — for your codec, your content type, and your target device — is what this guide covers. Every method below is evaluated honestly: what it actually does, by how much it reduces file size, and under what conditions quality degradation becomes visible.

1. TL;DR — The Fastest Ways to Shrink a Video

If you want the quick answer before reading the full guide, here are the four highest-impact actions ranked by file size reduction per unit of quality trade-off:

50%
file size reduction: switch H.264 to H.265 (same visual quality)
35%
file size reduction: CRF 28 vs default CRF 23 (slight visible change)
1:1
proportional reduction from trimming: cut 30% of footage, file is 30% smaller
75%
file size reduction: 4K to 1080p downscale (if target display is 1080p)

Direct answer: The most effective ways to reduce video file size without visible quality loss are: (1) Re-encode with H.265/HEVC instead of H.264 — same visual quality at roughly half the file size. (2) Use a higher CRF value (22–28 in HandBrake/FFmpeg) — reduces bitrate while keeping quality within the invisible-difference threshold. (3) Remove unnecessary footage by trimming before encoding — every second removed reduces size proportionally. (4) Reduce resolution only if the original exceeds your target viewing size. Re-encoding to H.265 alone typically cuts file size 40–60% compared to the same content in H.264, with no perceptible quality difference on modern screens.

2. Why Video Files Are Large

A video file's size is fundamentally determined by two things: bitrate (how many bits per second are stored) and duration (how many seconds the video is). A 1-hour video at 8 Mbps is exactly 3.6 GB, regardless of content. Multiply the two together and you have your file size.

But the relationship between bitrate and quality is not linear — it depends on the codec's efficiency and the complexity of the video content.

I-Frames, P-Frames, and B-Frames

Modern video codecs don't store every frame as a complete image. They use three types of frames to reduce redundancy:

  • I-frames (Intra-frames): Complete images stored independently. Every keyframe is an I-frame. They are the largest frames — roughly equivalent in size to a JPEG image at the same resolution.
  • P-frames (Predicted frames): Store only the difference between the current frame and the previous I or P-frame. Much smaller than I-frames — only the changed pixels are stored.
  • B-frames (Bidirectional frames): Use information from both the previous and the next frame to predict content. The most space-efficient frame type. H.264 and H.265 use B-frames heavily.

This is why high-motion content (action movies, sports) produces larger files than static content (lectures, presentations) at the same bitrate — high-motion frames have large P-frame differences that require more bits to encode accurately.

Bitrate × Duration = File Size

The practical formula: file size (MB) = bitrate (Mbps) × duration (seconds) ÷ 8.

A 2-hour video at 8 Mbps: 8 × 7200 ÷ 8 = 7,200 MB = 7.2 GB. Reducing the bitrate to 4 Mbps halves the file to 3.6 GB. This is what CRF and codec choice control — the effective bitrate used to represent the content at a given quality level.

3. The CRF Method — Best Quality-to-Size Balance

CRF (Constant Rate Factor) is the most important quality setting in FFmpeg, HandBrake, and virtually every H.264/H.265 encoder. Instead of targeting a fixed bitrate, CRF targets a fixed visual quality level. The encoder uses whatever bitrate is needed to achieve that quality — more bits for complex motion, fewer bits for static scenes.

How the CRF Scale Works

The CRF scale runs from 0 (lossless, maximum bits) to 51 (worst quality, minimum bits):

CRF (H.264) CRF (H.265) Visual quality at 1080p Typical file size vs original Best use case
00Mathematically lossless300–600% of originalIntermediate files only
16–1820–22Visually lossless — frame-by-frame comparison needed to spot any difference100–150% of originalProfessional archiving, master copies
19–2223–26Excellent — indistinguishable from source in normal viewing50–80% of originalPersonal archiving, high-quality storage
23–2427–28Very good — FFmpeg/HandBrake default range30–55% of originalGeneral use, recommended starting point
25–2729–31Good — minor artifacts visible on large screens or freeze-frame18–35% of originalWeb streaming, email, file sharing
28–3032–34Acceptable — visible compression in high-motion content10–20% of originalWhatsApp, messaging apps, small mobile screens
31+35+Low quality — blocky artifacts, obvious compressionUnder 10% of originalPreviews, thumbnails, testing only

The key insight: CRF 23 is the FFmpeg default and produces excellent quality across most content. For a permanent archive you won't re-encode, use CRF 18–22. For sharing and upload where file size matters more, CRF 24–28 is the practical range.

CRF vs. Target Bitrate

An alternative to CRF is two-pass encoding with a target bitrate (e.g., "encode at 4 Mbps"). Use target bitrate when:

  • You need the output file to be under a specific size (e.g., under 500 MB for an email attachment)
  • You're encoding for streaming platforms with specific bitrate requirements
  • You're encoding many different videos that need consistent file sizes

Use CRF when you care about visual quality and don't have a strict file size target. CRF consistently produces better quality per byte than target-bitrate encoding for the same average bitrate.

4. H.265 vs H.264 — The Most Impactful Single Change

Switching from H.264 to H.265 (HEVC) is the single highest-leverage action for reducing video file size with no perceptible quality change. H.265 achieves the same visual quality as H.264 at roughly half the bitrate — a consistent, well-documented result confirmed across years of codec benchmarks.

Why H.265 Is More Efficient

H.265 uses fundamentally more sophisticated compression techniques than H.264:

  • Larger coding units: H.265 uses Coding Tree Units up to 64×64 pixels. H.264 macroblocks max out at 16×16. Larger blocks compress smooth gradients (sky, walls, skin) far more efficiently.
  • Better motion prediction: H.265 has 35 intra-prediction modes vs H.264's 9. More accurate prediction = smaller residuals = smaller P-frames.
  • Sample Adaptive Offset (SAO): A post-processing filter unique to H.265 that reduces banding and ringing artifacts without significant bitrate cost.
  • Parallel processing: H.265 is designed for multi-core encoding from the ground up. Slower single-core performance but handles parallelism better.
Comparison point H.264 (AVC) H.265 (HEVC) H.265 advantage
File size at equivalent visual qualityReference (1x)~0.5x (50% smaller)50% reduction
Encoding speedFast (baseline)2–5x slowerH.264 wins
Decoding speedFast, hardware-accelerated everywhereHardware-accelerated on modern devicesH.264 wins slightly
iPhone / iOS supportAll iPhonesiPhone 6 and later (2014+)H.264 wins for old devices
Browser supportUniversal (all browsers)Safari, Chrome 107+, Edge — not Firefox nativelyH.264 wins for web
Smart TV supportUniversalMost TVs from 2016+H.264 wins for old TVs
YouTube / streaming qualityGoodBetter — faster processing at same bitrateH.265 wins
File size for 1 hour of 1080p30~4–8 GB (at 8–16 Mbps)~2–4 GB (at 4–8 Mbps)H.265 wins

H.265 compatibility note: Firefox does not support H.265/HEVC natively in HTML5 video (due to patent licensing issues). If your video will be embedded in a web page, use H.264 for universal browser support, or provide both formats with a <source> fallback. For downloaded files, smartphone and TV playback, H.265 works on all devices from 2016 onwards.

5. Method: HandBrake Step-by-Step

HandBrake is the best free GUI option for video compression. It wraps the x264 and x265 encoders, provides a visual interface, and includes a Preview function that lets you check quality before encoding the full file.

1
Download and open HandBrake

Get the free installer from handbrake.fr. Available for Windows, macOS, and Linux. Open HandBrake and click "Open Source" to load your video file.

2
Select the H.265 encoder

In the Video tab, change the Video Codec dropdown from H.264 to "H.265 (x265)". This single change reduces the output file by approximately 40–50% at the same visual quality. If the target device is very old (pre-2016), use H.264 instead.

3
Set the RF (quality) value

The RF (Rate Factor) slider in HandBrake is equivalent to FFmpeg's CRF. For H.265, start at RF 26. Move left (lower RF) for better quality and larger file; move right (higher RF) for smaller file with more compression. RF 24–28 is the practical range for most content.

4
Move Encoder Preset toward Slow

The Encoder Preset slider controls how much CPU time HandBrake spends optimizing the encode. "Slow" produces better compression than "Fast" at the same RF value — smaller file with identical quality. The trade-off is encoding time: Slow takes 2–4x longer than Fast.

5
Check audio settings

In the Audio tab, verify the audio track. For most cases, AAC at 128–192 kbps is sufficient. If the source has AC3 or DTS surround sound and you want to preserve it, add an AC3 passthrough track alongside the AAC track.

6
Always use Preview before full encode

Click the camera icon (Preview) in the toolbar. Set the preview duration to 30–60 seconds and click "Live Preview" to encode and play a preview clip. Check for banding, blocking, or motion blur. Adjust RF if needed before committing to the full encode.

7
Set output path and click Start Encode

Set the output file location in the "Save As" field at the bottom. Ensure the output container is MP4. Click "Start Encode" (green play button). A 1-hour 1080p H.265 encode at the Slow preset typically takes 30–90 minutes depending on your CPU.

6. Method: FFmpeg Command Line

FFmpeg gives full control over every encoding parameter. The commands below are production-ready — tested across different content types and validated against quality benchmarks.

Standard H.264 Compression

Good for universal compatibility (works on all devices, all browsers):

ffmpeg -i input.mp4 -c:v libx264 -crf 23 -preset slow -c:a aac -b:a 128k output.mp4
  • -crf 23 — FFmpeg default, excellent quality. Lower for better quality.
  • -preset slow — better compression at same quality. Use medium for faster encoding.
  • -c:a aac -b:a 128k — re-encode audio to AAC at 128 kbps.
  • Tip: If original audio is already AAC, use -c:a copy to avoid re-encoding audio.

H.265 for Maximum Size Reduction

Best for storage and modern device playback — ~50% smaller than H.264 at equivalent quality:

ffmpeg -i input.mp4 -c:v libx265 -crf 28 -preset slow -c:a aac -b:a 128k output.mp4
  • -crf 28 — H.265 default. Roughly equivalent visual quality to H.264 CRF 23.
  • For higher quality: use -crf 24 or -crf 26.
  • Encoding with libx265 is 3–5x slower than libx264 on the same preset.

Two-Pass Encoding for a Specific File Size

When you need the file under a precise size (e.g., under 500 MB):

ffmpeg -i input.mp4 -c:v libx264 -b:v 4M -pass 1 -an -f null /dev/null
ffmpeg -i input.mp4 -c:v libx264 -b:v 4M -pass 2 -c:a aac -b:a 128k output.mp4

Pass 1 analyzes the video without producing output. Pass 2 encodes with optimal bit distribution to hit the target bitrate. Use NUL instead of /dev/null on Windows.

Fast Compression for Small Screens (Mobile/WhatsApp)

ffmpeg -i input.mp4 -c:v libx264 -crf 28 -preset slow -vf scale=1280:-2 -c:a aac -b:a 96k output.mp4

-vf scale=1280:-2 downscales to 720p width while maintaining the correct aspect ratio (the -2 ensures height is divisible by 2, which H.264 requires).

Keep Audio Untouched When Possible

If the source already has AAC audio (common in MP4 files), avoid re-encoding it:

ffmpeg -i input.mp4 -c:v libx265 -crf 28 -preset slow -c:a copy output.mp4

Re-encoding audio to AAC introduces another generation of lossy compression. If the audio is already in a compatible format, copying it preserves the original quality at no cost.

7. Trim Before Encoding — The Multiplier Effect

Trimming is the most overlooked but most powerful first step in video compression. Before re-encoding with a better codec or higher CRF, remove everything that does not need to be in the final file. The size reduction from trimming is proportional and predictable — cut 30% of the footage, the file is 30% smaller regardless of any other settings.

What to Look for When Trimming

  • Silent pauses: Long pauses, waiting for a screen to load, silences at the start and end of recordings. These sections are low-motion but still consume bitrate.
  • Repetitive content: Duplicate demonstrations, sections that repeat the same information, multiple takes of the same shot.
  • Irrelevant sections: Context and framing that made sense live but is unnecessary in the recorded version.
  • Dead time in screen recordings: Waiting for files to upload, software to load, or processes to complete. These can be significant in tutorial recordings.

The Multiplier Effect

The savings from trimming multiply with codec and quality improvements:

  • Original file: 2 GB (H.264, 60-minute recording)
  • After trimming 25% of footage (45 minutes): 1.5 GB
  • After re-encoding to H.265 at CRF 28: ~750 MB
  • Total reduction: 62.5% — 2 GB becomes 750 MB

Compare this to re-encoding alone without trimming: the 60-minute H.265 encode at CRF 28 would be ~1 GB. Trimming first and then encoding produces a 25% additional reduction on top of the codec savings.

Tools for Trimming

For lossless trim (no re-encode, cut at keyframe boundaries):

ffmpeg -i input.mp4 -ss 00:00:10 -to 00:45:00 -c copy trimmed.mp4

The -c copy flag performs stream copy — the trim is lossless but cuts are limited to keyframe positions (typically every 2–10 seconds). For precise frame-accurate cuts, use HandBrake's Range feature with start/end points, which re-encodes only the trimmed portion.

Extract Audio from Your Video

If you only need the audio from a video file, extract it as MP3 directly in your browser — no software needed.

8. Resolution Reduction — When It Makes Sense

Reducing resolution (downscaling) is one of the highest-impact ways to reduce file size, but it only makes sense in specific situations. Downscaling trades detail for size — and the trade-off is only invisible when the target display cannot show the original resolution anyway.

When Downscaling Makes Sense

  • 4K original, 1080p target display: A 4K video (3840x2160) has 4x more pixels than 1080p (1920x1080). Downscaling to 1080p reduces file size by roughly 75% at the same CRF, with no visible quality loss when displayed at 1080p. If the video will never be shown on a 4K screen, the extra pixels are waste.
  • 1080p for mobile-only viewing: If the final destination is a mobile device or a small window on a laptop, 720p (1280x720) is indistinguishable from 1080p at those viewing sizes. Downscaling from 1080p to 720p cuts file size by roughly 55%.
  • Video for messaging apps: WhatsApp, Telegram, and similar apps have strict file size limits. Downscaling to 720p before encoding is the most effective first step.

When NOT to Downscale

  • The video will be displayed at full resolution on a large screen
  • You're archiving — future displays may have higher resolution and you want to retain the detail
  • You plan to do color grading or editing in the future — always edit at the highest resolution
  • The source is already at 1080p or lower — downscaling further will be visible at standard viewing distances

File Size Impact of Resolution Changes

Original resolution Target resolution Pixel count reduction Approximate file size reduction Visible on 1080p display
4K (3840x2160)1080p (1920x1080)75%~70–75%Not visible
4K (3840x2160)720p (1280x720)89%~85%Visible on large screens
1080p (1920x1080)720p (1280x720)55%~50–55%Subtle on < 27-inch display
1080p (1920x1080)480p (854x480)80%~75%Clearly visible
720p (1280x720)480p (854x480)55%~50%Visible on any HD screen

FFmpeg downscale command (to 1080p, maintaining aspect ratio):

ffmpeg -i input.mp4 -c:v libx265 -crf 28 -preset slow -vf scale=1920:-2 -c:a copy output.mp4

9. Format Choice: MP4 vs WebM vs MKV for Different Targets

The container format and codec combination you choose should match the platform where the video will be viewed. Different targets have different constraints.

MP4

MP4 (H.264 or H.265)

Universal compatibility. Use for: email, WhatsApp, social media uploads, iPhone/TV playback, YouTube. H.264 for maximum compatibility, H.265 for maximum compression on modern devices.

WebM

WebM (VP9)

Best for web embedding. ~40% smaller than H.264 MP4 at same quality. Excellent Chrome/Firefox support. Not supported by Safari/iOS natively. Use when the video will be embedded in a web page and iOS is not a target.

MKV

MKV (H.265)

Best for archiving. MKV with H.265 inside gives maximum flexibility (subtitles, multiple audio tracks) and compression. Not compatible with iPhone or streaming platforms — convert to MP4 before sharing.

WebM

WebM (AV1)

Cutting edge — 20–30% smaller than H.265/VP9 at same quality. Encoding is extremely slow (10–50x slower than H.264). Browser support: Chrome 70+, Firefox 67+. No Safari support. Use only for web delivery where encoding time is not a constraint.

Platform-Specific Format Guidance

Platform / Use Case Recommended format Max file size Key notes
YouTube uploadMP4 H.264 or H.265256 GBYouTube re-encodes on ingest. H.265 processes faster.
Instagram (feed)MP4 H.264100 MBMaximum 60 seconds. 1080p recommended.
Instagram (Reels)MP4 H.264650 MB9:16 ratio, up to 90 seconds.
WhatsAppMP4 H.26416 MBWhatsApp recompresses on send. CRF 28–30 is fine.
Email attachmentMP4 H.26425 MB typicalMost email providers cap at 25 MB total message size.
Website embeddingMP4 H.264 (+ WebM fallback)VariesH.264 MP4 works in all browsers including Safari/iOS.
Personal archivingMKV or MP4 with H.265No limitH.265 CRF 18–24 for permanent high-quality archive.
iPhone/Apple TVMP4 H.264 or H.265No limitH.265 supported on iPhone 6+ (2014). MOV also works.

10. Quality Check: How to Verify Output Quality

Before committing to a final encode of a long video, verifying quality prevents discovering a problem only after waiting an hour for an encode to complete.

Visual Inspection Method

The most accessible method is direct visual comparison. Encode a 30–60 second preview clip using your chosen settings, then open both the original and the encoded clip side-by-side in a media player. Focus on:

  • High-motion sequences: Action scenes, fast camera pans. These are where compression artifacts first appear — blocky motion, blurred fast-moving objects.
  • Fine detail: Text overlays, fabric textures, hair, foliage. High-frequency detail is the first to degrade at higher CRF values.
  • Dark scenes: Low-light content tends to exhibit banding (smooth gradients becoming step-like) at high CRF values.
  • Static backgrounds: A solid-color wall or sky should look perfectly smooth. Banding or graininess here indicates the CRF is too high.

SSIM and PSNR Measurement

For objective quality measurement, FFmpeg can calculate SSIM (Structural Similarity Index) between the original and encoded versions:

ffmpeg -i original.mp4 -i encoded.mp4 -lavfi ssim -f null -

SSIM scores range from 0 to 1. Above 0.95 is generally considered excellent. Above 0.98 is visually lossless for most content. This is more useful for comparing two encoding settings against each other than as an absolute quality measure.

VMAF — Netflix's Quality Metric

VMAF (Video Multi-Method Assessment Fusion) is Netflix's open-source perceptual quality metric that correlates more closely with human perception than SSIM or PSNR. If you have ffmpeg compiled with libvmaf:

ffmpeg -i original.mp4 -i encoded.mp4 -lavfi libvmaf -f null -

VMAF scores above 90 are considered excellent. Scores above 95 are virtually indistinguishable from source. For typical web-delivery content, targeting VMAF 85+ at your chosen CRF is a practical quality floor.

Convert Between Video Formats

Convert MKV, MOV, AVI, and other formats to MP4 in your browser — free, no install, nothing uploaded to a server.

11. Frequently Asked Questions

How can I reduce video size without losing quality?
The most effective methods in order of impact: (1) Switch from H.264 to H.265 — same visual quality, roughly 50% smaller file. (2) Use CRF 22–28 in FFmpeg or HandBrake — quality-controlled encoding that produces the smallest file that still looks good. (3) Trim unused footage before encoding — every second removed reduces size proportionally. (4) Reduce resolution only if the original exceeds your target viewing size. For most content, H.265 at CRF 26–28 reduces file size 50–65% with no perceptible quality difference on modern screens.
What is the best CRF value for quality?
For H.264: CRF 18–22 is visually lossless, CRF 23 is the FFmpeg default and excellent quality, CRF 24–26 is very good with noticeable size savings, CRF 28+ shows visible artifacts. For H.265: add approximately 5 to each value — CRF 23–27 is visually lossless, CRF 28 is the FFmpeg default (equivalent visual quality to H.264 CRF 23), and CRF 32+ shows artifacts. Lower CRF always means better quality and larger file. Start at the default and adjust based on your quality vs size priority.
Does H.265 reduce quality compared to H.264?
No — H.265 achieves the same visual quality as H.264 at roughly half the bitrate. When comparing H.264 at CRF 23 with H.265 at CRF 28, visual quality is approximately equal but the H.265 file is 40–50% smaller. H.265 uses a more efficient compression algorithm — it does not reduce quality, it stores the same visual information more compactly. The trade-offs are encoding speed (H.265 takes 3–5x longer) and compatibility (older devices and Firefox lack hardware H.265 support).
How much does trimming reduce video size?
Trimming reduces file size exactly proportionally to the footage removed. Cut 25% of the video duration and the file is 25% smaller — regardless of codec, resolution, or quality settings. This makes trimming the highest-leverage first step when significant unused footage exists. The savings from trimming also compound with codec improvements: trimming 30% and then encoding to H.265 can reduce a file to under 40% of its original size.
Can I reduce resolution without noticeable quality loss?
Yes, in specific situations. If the original is 4K but will only ever be displayed at 1080p, downscaling to 1080p reduces file size by roughly 75% with no visible quality loss at the display resolution. If the original is 1080p and the display is also 1080p, downscaling to 720p will be visible — especially on screens larger than 15 inches or when viewed close up. Downscaling only makes sense when the target viewing resolution is genuinely lower than the source resolution.
What is the smallest video format with good quality?
For broad device compatibility with the smallest file size, MP4 with H.265 encoding is the best choice in 2026. H.265 MP4 is approximately 50% smaller than equivalent H.264 MP4 and plays on all modern devices. For web-only use where iOS compatibility is not needed, WebM with VP9 achieves similar compression. AV1 (in WebM or MP4) compresses 20–30% better than H.265, but encoding is extremely slow and many devices (particularly older smart TVs and consoles) cannot play AV1.
How do I reduce video size for WhatsApp?
WhatsApp has a 16 MB limit for video. Use this FFmpeg command for videos over the limit: ffmpeg -i input.mp4 -c:v libx264 -crf 28 -preset slow -c:a aac -b:a 96k -vf scale=1280:-2 output.mp4. This downscales to 720p, uses CRF 28 for aggressive but acceptable compression, and reduces audio to 96 kbps. For very long videos, also trim to only the essential content first. WhatsApp re-compresses video further on the receiving end, so very high quality is wasted for this platform.
Does HandBrake reduce video quality?
HandBrake applies lossy compression — some quality reduction is unavoidable when re-encoding. However, at the recommended settings (H.265 RF 24–26 or H.264 RF 20–22), quality differences from the source are invisible to the vast majority of viewers on typical screens at normal viewing distances. RF 28+ for H.264 may show subtle artifacts in high-motion scenes on large displays. Always use HandBrake's Preview function to encode and view a 30-second clip before committing to the full encode — this takes 2 minutes and prevents quality surprises after a 60-minute encode.

The practical takeaway: for the vast majority of situations, trimming first and then re-encoding to H.265 at CRF 26–28 is the right answer. It requires minimal technical knowledge, produces excellent results on all modern devices, and reduces file size by 50–65% in most cases. The FFmpeg command above is two lines. HandBrake is six clicks. Either way, start with the Preview function before committing to a long encode.

V
Convertlo Editorial Team
We test file conversion tools, codecs, and encoding workflows so you don't have to. All compression guides are written from hands-on testing with real video files at multiple quality settings.
More articles →