Compress a video for WhatsApp
WhatsApp caps video around 16 MB and re-compresses what you send anyway — which is why forwarded clips look soft. Compress it yourself first and you control the trade instead of WhatsApp making it for you.
Compress a video for WhatsApp
Pick a target and the bitrate is solved for you.
Choose a video or drop it here
Read by this page, never uploaded. MP4, MOV, MKV, WebM, AVI, WMV, FLV and more.
Resolution, frame rate, audio, codec
Nothing is uploaded
FFmpeg runs in this tab. Turn your Wi-Fi off after the page loads and it still works.
Hit an exact size
Say "under 25 MB" and the bitrate is solved for you, two-pass.
No account, no watermark
No sign-up, no email, no logo burned into your video.
No file-size cap
No 100 MB paywall. The only limit is your browser's memory, around 2 GB.
WhatsApp compresses your video anyway — that is the point
Send a video in a WhatsApp chat and it is re-encoded before it leaves your phone, to around 16 MB and often to 480p or 720p. You have no control over those settings, which is why forwarded clips get progressively softer: each hop re-compresses an already-compressed file.
Compressing first changes who makes that decision. Hand WhatsApp a file that is already under its ceiling at a resolution you chose, and its own pass has almost nothing left to do — so what your recipient sees is much closer to what you picked.
The limits
| What you are sending | Limit | Target here |
|---|---|---|
| Video in a chat | ~16 MB | 15 MB |
| Status | ~16 MB, 30 seconds | 12 MB |
| Sent as a document | 2 GB | No compression needed |
The document trick, and when it is the better answer
Attaching the video as a document rather than a video skips WhatsApp's re-encode entirely and allows up to 2 GB. The recipient gets the original file, bit for bit — but they get it as a download, with no inline preview and no thumbnail, and on some phones it will not open in the gallery. For anything where quality genuinely matters, that trade is worth it; for a clip your family will watch once in the chat window, it is not.
Sensible settings for phone-to-phone
720p is the sweet spot here. It is what most recipients' phones will display anyway, and at 15 MB it leaves enough bitrate for motion to stay clean. 1080p in 15 MB works for clips under about 45 seconds; past that, Auto will step down and it will look better for it.
How it works
Pick your video
It is read straight from your disk by this page. No upload, no queue, no account.
Set the target size
Type a number, or use a preset that matches the real limit. The bitrate is solved from the clip’s length.
Compress in the tab
FFmpeg runs in WebAssembly on your own machine. The first run downloads a 31 MB engine, once per browser.
Download it
The result is handed back as a file. Nothing was sent anywhere, so there is nothing to delete afterwards.
Compress for a specific limit
Compress a video for email
Targets 20 MB by default.
Open the compressor →Compress a video for Discord
Targets 9 MB by default.
Open the compressor →Compress a video to 8 MB
Targets 7.5 MB by default.
Open the compressor →Compress a video to 25 MB
Targets 24 MB by default.
Open the compressor →Compress an MP4
Quality-based, no target to pick.
Open the compressor →Compress a MOV file
Quality-based, no target to pick.
Open the compressor →Compress a video for Instagram
Quality-based, no target to pick.
Open the compressor →Reduce a video's file size
Quality-based, no target to pick.
Open the compressor →Compress a 4K video
Quality-based, no target to pick.
Open the compressor →Questions people actually ask
Short answers here, the full story in the guides.
Is my video uploaded to a server?
No. The compressor is FFmpeg compiled to WebAssembly and it runs inside this browser tab. Your file is read from disk by the page, processed in memory, and handed back to you as a download. You can load the page, disconnect from the internet, and compress anyway — which is the simplest proof there is.
Does compressing a video lose quality?
Yes, always — compression works by throwing information away. The honest question is whether you can see it. At a sensible bitrate for the resolution, most people cannot tell on a phone or laptop screen. Anyone promising "no quality loss" is describing the perception, not the file.
How do I compress a video to an exact size?
Switch the tool to Target size and type the number. It reads the clip's duration, subtracts the audio budget, solves for the video bitrate that fits, and encodes two-pass so the result lands under the target rather than near it.
Is there a file size limit?
No limit we impose, but a browser tab is bounded by WebAssembly's ~2 GB of memory, and a re-encode needs roughly three times the file's size free. Files up to a few hundred MB are comfortable. Above about 1 GB, the iPhone app is the better tool.
Is there a watermark?
No. No watermark, no logo, no intro frame, no account, and no upload cap to unlock by paying. The output is your video, compressed.
Which format should I compress to?
MP4 with H.264 video and AAC audio, unless you have a specific reason not to. It plays on effectively everything. H.265 gives you a smaller file at the same quality but encodes much slower here and is refused by some uploaders and older devices.
Compressing on a phone?
The iPhone app does this on the device, with the hardware encoder.