How to Compress a Video for WhatsApp, Discord, and Email
6 Min. Lesezeit
You recorded a short clip, tried to send it, and got the dreaded "file too large." WhatsApp, Discord, and email each cap how big an attachment can be, and a phone video from a modern camera blows past those caps in seconds. The fix is almost always the same: lower the video's bitrate until the file fits, ideally after trimming away the parts you don't need. This guide covers the real size limits for each app, why videos get so large, and exactly what "compressing" does to your clip — including the honest tradeoffs. You can do all of it in your browser with FileTinker's compress-video tools, which never upload your file anywhere.
The real size limits (and why they change)
Every platform sets its own attachment ceiling, and those ceilings get raised or tiered over time — so treat these as current-ballpark figures, not permanent rules:
- WhatsApp: roughly 16MB for a standard video shared in a chat. Larger files are either rejected or aggressively re-compressed by WhatsApp itself, which can look worse than compressing carefully yourself.
- Discord: 10MB for free accounts. Paid Nitro tiers raise this substantially (into the hundreds of megabytes), and boosted servers may allow more. If a clip is 'too big for Discord,' the free 10MB cap is usually the wall you hit.
- Email: about 25MB on most providers (Gmail, Outlook, and Yahoo all land near this). Go over and the service typically pushes you toward a cloud link instead of a true attachment.
Why videos are so huge
A video's file size comes down to one formula: bitrate multiplied by length. Bitrate is how many bits of data the file spends per second. A phone shooting 1080p or 4K can easily use 20–50 megabits per second to keep the footage crisp.
Do the math and it's brutal. At 30 megabits per second, one minute of video is about 225MB — more than fourteen times WhatsApp's limit and twenty times Discord's free cap. The resolution and 'HD' quality you see are real, but they're expensive in bytes.
This is why two clips of the same length can differ wildly in size: the one shot at a higher bitrate simply stored more data per second. To make a file smaller without cutting its length, you have to spend fewer bits per second — that's what compression does.
How in-browser compression actually works
FileTinker's compress-video tool re-encodes your clip at a lower, targeted bitrate using your browser's built-in MediaRecorder. There is no ffmpeg and nothing is uploaded — the video is played through a hidden element and recorded in real time, so a 90-second clip takes roughly 90 seconds to process.
Because it's the browser doing the encoding, the output container and codec depend on what your browser supports: MP4 where available, otherwise WebM (VP9 or VP8 video with Opus audio). That matters for sending — a WebM file plays fine in most modern apps and browsers, but if your recipient specifically needs MP4, check what your browser produced.
One important honest point: this is a re-encode, not a lossless remux. Lowering the bitrate throws away visual detail permanently. That's the whole mechanism — you're trading fidelity for a smaller file. It's the same tradeoff every platform makes when it re-compresses your upload, except here you control the target.
Targeting a specific size
The 'compress to a target size' mode does the arithmetic for you. It reads the clip's duration, then works backward from your target: the available bytes, spread across the clip's length, become a bitrate budget. It reserves a slice for audio (around 96 kbps) and keeps about 10% headroom so container overhead doesn't push the result back over the line.
MediaRecorder's bitrate is only approximate, so a single pass can overshoot. The tool handles this by running up to three passes: if the result is still too big, it scales the bitrate down in proportion to the overshoot and re-records. It stops as soon as a pass lands at or under your target.
Two behaviors worth knowing. First, it never enlarges your file — it seeds the 'best result' with your untouched original, so if a re-encode somehow comes out larger (which happens with already-efficient clips), you get the original back. Second, it's honest when a target is impossible: video won't drop below a roughly 150 kbps quality floor, so if your clip is simply too long to fit a tiny target at watchable quality, the tool hands back the smallest version it could make and flags that it's still over your target — you find out before you send instead of getting a file quietly wrecked to hit a number.
Trim first — it's the biggest lever you have
Since size is bitrate times length, cutting the length is often the cleanest way to fit a limit without wrecking quality. If only 20 seconds of a two-minute clip matter, trimming to those 20 seconds cuts the size to roughly a sixth before you compress at all.
Trimming lets you keep a higher bitrate on the part that counts. A 15-second highlight at good quality will look far better than the full two minutes crushed down to the same total byte budget. FileTinker's trimmer runs in the browser the same way — record the region you want, then compress the result.
A practical order of operations: trim to the essential moment, then compress to your target (16MB for WhatsApp, 10MB for free Discord, ~25MB for email). If it still won't fit at acceptable quality, trim more before you sacrifice more sharpness.
Setting realistic quality expectations
Fitting a long clip into a small cap means a low bitrate, and low bitrate shows up as blockiness in motion, smeared detail, and muddy fast-action scenes. Talking-head or static footage survives low bitrates far better than sports, gaming, or anything with lots of movement.
If quality after compression looks unacceptable, you have three honest choices: trim to a shorter clip, accept a slightly larger file on a platform that allows it (Discord Nitro, or a cloud link for email), or reduce what you're asking of the encoder. There's no setting that makes a 4K two-minute action clip look pristine at 10MB — the bits just aren't there.
The upside of doing it yourself: you decide the target and see the result before you send, instead of letting WhatsApp or Discord silently re-compress your upload with settings you can't control. Compressing locally in the browser also means the file never leaves your device.