Compress a video to fit an upload limit
«Too large to upload» is a narrower problem than «too large». Choose where you're sending the video and this tool works the bitrate backwards from that platform's published limit, picks the resolution that bitrate can carry, and encodes on your own device. Nothing is uploaded, and the result lands under the line rather than on it.
The limits these presets aim at
Every number below is set by someone else. Platforms raise and lower them, and several vary by account tier, so treat the table as what we last checked rather than as a promise about what will happen when you press send. The official page for each one is linked underneath — if a limit has moved since we looked, that page is right and we are wrong.
The second column is what the platform publishes. The third is what this tool actually aims at, which is lower for email and equal to the published figure everywhere else. The next section explains why the two ever differ.
| Platform | Published limit | This tool aims at |
|---|---|---|
| Discord | 10 MB | 10 MB |
| 16 MB | 16 MB | |
| 25 MB | 18 MB | |
| 25 MB | 25 MB |
None of this is a guarantee that a given file will be accepted. It is an attempt to land comfortably below a published number, using the number as published on the date shown.
Why aim under the limit instead of at it
A file that comes out a few hundred kilobytes over is rejected exactly as firmly as one that is twice the limit, so the margin is worth more than the detail it costs. Three separate things eat into it. «Megabyte» means 1,000,000 bytes to some systems and 1,048,576 to others, and you rarely get told which one is counting. Browsers differ in how closely they hit a requested bitrate, so the same settings can land at slightly different sizes on different machines. And the audio track is copied through untouched rather than re-encoded, which keeps your soundtrack intact but takes a fixed share of the budget that no video setting can win back.
Email is the one case where the gap is deliberate and large. Attachments aren't sent as raw bytes: they're encoded for transport, which inflates them by roughly a third on the way (that's how MIME works, not a quirk of any one provider). A file sitting exactly on the published limit can therefore arrive over it. Aiming lower means the file clears the line whether the count happens before or after that encoding — and it also leaves room for the recipient's mailbox, which has its own limit, and the smaller of the two is the one that decides.
Compressing a video for Discord
The figure in the table is the attachment limit for a free account, and it is the one worth targeting because it is the floor: Discord's own developer documentation notes the limit may be higher depending on Nitro status or server Boost tier. A file compressed to clear the free-account limit goes through everywhere, whereas one sized for a boosted server fails the moment you post it somewhere else.
Pick the Discord preset and the tool divides that budget by your video's length, subtracts what the audio needs, and chooses the resolution the remaining bitrate can actually carry — so you aren't guessing between 720p and 360p. If the answer is that no resolution fits, it tells you that before encoding rather than after.
Compressing a video for WhatsApp
The limit in the table applies to a video sent as a video in a chat — the kind that shows a thumbnail and plays inline when tapped. Attaching the same file as a document instead goes down a different path with a much higher ceiling, which is the standard way people move a large clip through WhatsApp without compressing it at all.
That workaround costs something, though: a document doesn't preview, the recipient has to download it before watching, and it won't be treated as media by their gallery. Compressing keeps the inline behaviour. Which one you want depends on whether the video is something to watch in the conversation or a file to hand over.
Limits here apply per file, so a recording that won't fit at any watchable quality is a candidate for trimming or splitting rather than for more compression.
Compressing a video for email
Mail is the one place where the published number is not the number to hit, for the transport-encoding reason described above — which is why the email preset aims visibly lower than the figure in the table. It is also the case where two limits apply at once: yours for sending and the recipient's for receiving, with the smaller one deciding, and you generally have no way to know theirs.
If the video still won't fit at a quality you'd want to send, the honest answer is the one mail providers themselves reach for: put the file somewhere and send a link. Compressing a long recording hard enough to survive an attachment limit usually produces something nobody enjoys watching, and that is a worse outcome than a link.
Compressing a video for WeChat
The table's figure is for sending a video in a chat. Moments works differently: the constraint there is on length rather than on file size, so a small file can still be turned away for being too long, and compressing it further won't help at all — that one needs trimming. Check the official page for the current rules; this tool only addresses the size side.
As with WhatsApp, sending the clip as a file rather than as media takes a different route with more headroom, at the cost of inline playback. If the recipient just needs the footage, that is often the better trade.
When the target can't be reached
Past a certain length, a tight limit stops being achievable at any resolution: divide a small budget by enough minutes and what's left after the audio can't carry a picture worth looking at. The tool works that out before it starts and says so, rather than spending your time producing something unwatchable and letting you discover it afterwards.
When that happens, the fix is to change the input rather than the setting.
- Trim it. Cutting the dead time at either end is usually the single biggest win, and it costs no quality at all.
- Split it into parts and send them separately, if the platform is what's limiting you rather than the recipient's patience.
- Send a link instead of a file. For anything long, this is what the platforms themselves do.
- Use a lower platform preset only if you genuinely need that ceiling — a file compressed for the tightest limit goes through everywhere, but it looks like it.
Nothing here modifies the original on your disk. The compressed copy is a separate download, so deleting the original stays your own explicit decision.
FAQ
How do I compress a video for Discord?
Drop the video into the tool above and pick the Discord preset. It works the bitrate backwards from the attachment limit for a free account, subtracts what the audio needs, and picks the resolution that fits — no guessing between quality levels. The free-account limit is the right thing to target because Nitro and boosted servers only ever allow more, so a file sized for the floor posts anywhere.
Why does the email preset aim lower than the published limit?
Because attachments don't travel as raw bytes. They're encoded for transport, which inflates them by roughly a third on the way — a property of MIME email itself rather than of any one provider. A file sitting exactly on the published limit can therefore end up over it. Aiming lower means the file clears the line whichever side of that encoding is being counted, and leaves room for the recipient's own limit, which you can't see.
Will the compressed file definitely be accepted?
No tool can promise that, and one that does is guessing. Limits are set by the platforms, they change, and several depend on account tier — so what this does is compress to comfortably under the limit as published on the date shown in the table, with the official source linked so you can check it yourself. If a platform has moved its limit since we last looked, its page is right and our table is stale.
Is my video uploaded anywhere?
No. The compression runs through WebCodecs, a browser API that hands frames to your own device's video encoder, and the result is written straight to local storage as it encodes. There is no endpoint receiving your file. Open your browser's network panel while it runs and you'll see no upload — or load this page, disconnect from the internet, and compress anyway.
What if the video is still too big?
Then the limit is the length rather than the settings. Trimming is the most effective move and costs no quality — cutting the dead ends of a recording often does more than any bitrate change. Otherwise split it into parts, or send a link. If a target genuinely can't be hit at any resolution, the tool says so before it starts rather than handing you mush.
Should I just send the video as a file instead?
Sometimes, yes. On several platforms attaching a clip as a document or file takes a different route with a much higher ceiling, so a large video can go through untouched. What you lose is the inline experience: no thumbnail, no tap-to-play, and the recipient has to download it first. Compress when the video is meant to be watched in the conversation; send as a file when it's a handover.
Does the audio get compressed too?
No — it's copied across untouched, including 5.1 surround tracks. That keeps the soundtrack exactly as it was, and it also means audio takes a fixed share of the size budget that no video setting can reclaim. On a long clip with a high-bitrate soundtrack, that share is worth knowing about, because it's the part of the file the tool can't shrink.
Which platforms can I pick?
Discord, WhatsApp, email and WeChat, with their current published limits shown in the table above and each official source linked. The generic 10 MB, 25 MB and 100 MB targets are there too, in the row above the platform presets, for upload forms and portals that state a number of their own.
Related reading
AskClean Team · Updated 2026-08-12