Compress video by format
The same compressor runs on every page here — the difference is what it is set to and what the page explains. Start from the file you have, the limit you are hitting, or the place you are sending it. If none of those apply, the main compressor does the general case.
Start from the file you have
The container your video is in changes what is worth doing to it. An AVI full of MJPEG has enormous room to improve; a WebM encoded with VP9 has very little. These pages explain what to expect before you spend the encoding time.
- Compress MP4 The universal container. Usually already H.264, so the gains come from bitrate and resolution.
- Compress MOV iPhone and QuickTime recordings. Frequently HEVC or ProRes, and frequently huge.
- Compress MKV Long recordings, rips and archives. Big enough that upload-based tools often refuse them.
- Compress WebM Already efficient — so the realistic gains are smaller, and worth understanding first.
- Compress AVI Legacy codecs, dramatic savings. Read in, MP4 out.
- Compress WMV Old Windows exports. Nothing plays them now, and remuxing is not an option.
- Compress FLV A dead container, often with a perfectly modern video inside. Try remux first.
- Compress M4V Apple's MP4 under another name. Renaming it often solves the whole problem.
- Compress MTS / M2TS AVCHD camcorder footage. Enormous, usually interlaced, and split into 2 GB pieces.
Three kinds of problem, and only one needs a re-encode
Those pages sort fairly cleanly by what is actually wrong with the file, and working out which group you are in can save you the encode entirely.
- The wrapper is the problem. MKV, MOV, M4V, MTS and a late FLV usually hold perfectly ordinary H.264, and something is simply refusing to open the container. Remux copies the video untouched into a new wrapper in seconds, loses nothing, and changes the file size not at all. This is the right answer far more often than people expect.
- The codec is the problem. AVI, WMV and an early FLV hold something one or two generations behind H.264. Re-encoding buys efficiency rather than costing quality, so the reduction is usually large and mostly invisible. Remuxing will not help here: with AVI it is possible but pointless, because the wrapper is not what is making the file big, and WMV cannot be remuxed into MP4 at all — the muxer refuses VC-1 and WMA.
- The bitrate is the problem. MP4, WebM, a phone recording, a camcorder dump. Nothing is wrong with the file, there is just more of it than you need. This is the only group where making it smaller genuinely costs you picture quality, and the only one where a size target is the right way to think about it.
Several formats appear in more than one group, which is honest rather than sloppy: it depends on the file. A MOV holding H.264 is a wrapper problem and a MOV holding ProRes is not. When you are unsure, try Remux first. It takes seconds and either produces a working file or fails immediately, and either outcome tells you which group you are in.
Start from a size limit
If something rejected your file with a number attached, this is the faster route. Each page opens the compressor with that ceiling preset and shows what fits inside it at every clip length.
- Compress to 5 MB The tightest ceiling here. Past about three minutes it stops being possible at all.
- Compress to 8 MB The classic chat and forum attachment wall. Tight enough that duration decides everything.
- Compress to 10 MB The default cap on a huge number of upload forms — and 25% more room than 8 MB.
- Compress to 16 MB The WhatsApp video ceiling — and the one target where the platform re-encodes after you.
- Compress to 20 MB The default in helpdesks, CMS media libraries and upload widgets. Rarely announced.
- Compress to 25 MB The Gmail attachment limit — with the base64 overhead that makes 25 MB less than it looks.
- Compress to 50 MB Roomy enough that 1080p survives on short clips. The first target that stops hurting.
- Compress to 100 MB Generous enough for real 1080p. Also GitHub's hard per-file push limit.
- Compress to 200 MB Big enough that the real question is your viewer's patience, not the platform's limit.
- Compress to 500 MB Discord Nitro's per-file ceiling, and the point where the browser becomes the bottleneck.
The size-target hub compares all 10 against four clip lengths in one grid, and has a shorter path through them if you do not know which limit you are up against.
Start from where it is going
Platforms differ in more than their limits. Some re-encode whatever you send, which changes the right strategy entirely — you want to hand over the best quality that fits rather than the smallest file you can make.
- Compress video for Discord Gameplay clips and a hard attachment ceiling. The classic case.
- Compress video for WhatsApp A 16 MB ceiling, a second round of compression, and a lot of phones that cannot decode HEVC.
- Compress video for email Gmail, Outlook and corporate mail servers. Often the case for a link instead.
- Compress video for X (Twitter) A duration cap that depends on your tier, and a transcoder that re-encodes everything.
- Compress video for Reddit Native hosting that re-encodes, splits the audio, and hands back a softer 1080p.
- Compress video for Telegram Limits measured in gigabytes. Compressing here is about the recipient, not the cap.
- Compress video for Slack Shared workspace storage, a retention window on the free plan, and screen recordings.
Container versus codec, in one paragraph
The distinction underneath this whole page is worth having straight. The container — MP4, MOV, MKV, WebM, AVI — is the wrapper: it holds the streams and the timing that keeps them in step, and it decides whether a given player will open the file at all. The codec — H.264, HEVC, VP9, MJPEG — is what actually compresses the picture, and it decides how large the file is.
That is why "convert this MKV to MP4" and "make this file smaller" are different jobs with different costs. Changing the wrapper is nearly free and takes seconds; changing the picture means decoding and re-encoding every frame. The Remux mode does the first, and the compression modes do the second. The formats reference lists what plays where.
Related
- Compress video without uploading it — what running FFmpeg locally actually means.
- Video file size calculator — bitrate, duration and size, solved in either direction.
- Browser, desktop or upload-based? — an honest comparison of the three approaches.
- Compression guides — bitrate, CRF, codecs and the rest of the theory.