Compress a video to 20 MB

Twenty megabytes is the cap software picks when somebody has to pick a number and nobody has a strong opinion. It is also the one most likely to reject your upload without ever telling you what the limit was.

Target preset: 20 MB 1080p up to ~1.3 minutes 720p up to ~2.9 minutes 480p up to ~5.4 minutes

Drop your video here

or click to browse — MP4, MKV, MOV, WebM, AVI and more

The compressor above is already set to a 20 MB ceiling. It solves the bitrate from the length of your clip, encodes on your own CPU, weighs what came out, and runs again at a corrected bitrate if the first pass missed 20 MB. Nothing is uploaded.

The cap nobody tells you about

Twenty megabytes is the default per-file limit in a long list of ticketing and helpdesk tools, in content management media libraries, in the upload widgets embedded in web forms, and in the reverse proxy sitting in front of all of them. Outlook.com is around 20 MB for attachments, and plenty of corporate mail gateways are configured to something similar or tighter.

What makes this number distinctive is not the number, it is the way it fails. Most limits announce themselves: the page says the file is too large and names a size. A 20 MB cap enforced by a proxy or a web server gives you a bare 413 Request Entity Too Large, or a progress bar that reaches the end and then does nothing, or a form that reloads with everything you typed gone and no explanation attached. You are left guessing at a number nobody wrote down.

What fits in 20 MB

Twenty megabytes is where a clip of ordinary length stops being a fight. Two minutes holds 720p, five minutes holds 480p, and it is only past ten that the budget starts to hurt. That covers most of what people actually attach to a ticket.

The table is generated from the compressor's own arithmetic, audio allowance already subtracted.

Video bitrate available inside a 20 MB ceiling, audio allowance already subtracted.
Clip length Video bitrate budget Realistic resolution
15 seconds 10,609 kbps 1080p or original
30 seconds 5,240 kbps 1080p or original
1 minute 2,556 kbps 1080p
2 minutes 1,214 kbps 720p
5 minutes 440 kbps 480p
10 minutes 204 kbps 360p
30 minutes Not viable

Work the same arithmetic for any size with the video file size calculator.

A 413 is a chain of limits, and the smallest one wins

An upload passes through more checks than the one you can see. A typical stack has a CDN or proxy with its own body-size limit, then a web server — nginx defaults client_max_body_size to one megabyte, which is why a fresh install rejects almost everything — then the language runtime, where PHP enforces upload_max_filesize and separately post_max_size, and only then the application's own validation. Any of them can refuse you, and only the last is likely to produce a message that mentions your file by name.

Two consequences worth knowing. The request is slightly larger than the file: multipart encoding adds boundaries and field names, and every other field on the form rides along with it, so a file sitting exactly on the limit can still fail against a limit applied to the whole request. And the vendor's documentation is often no help, because it describes the vendor's default rather than this particular install.

When you cannot find the number, bisect it. Compress to 20 MB and try. If it fails, try 10. If 10 works you know the wall is somewhere between, and 10 is fine. Two attempts beat an hour of reading configuration you do not have access to.

Record smaller instead of compressing harder

The dominant use of a 20 MB cap is a support ticket or a bug report, and the thing being attached is almost always a screen recording. That case has an advantage nothing else on this site can assume: the thing you are recording can usually be recorded again.

Capturing the window rather than the whole desktop removes pixels before an encoder is involved at all, and on a Retina or 4K display the recorder is probably capturing at twice the resolution the content is actually drawn at. Setting the capture to 1080p and framing just the application is often the difference between a 300 MB source and a 40 MB one, and every megabyte you avoid recording is a megabyte the encoder does not later have to throw away.

Compression still helps after that. It just starts from somewhere much better, and a recording that started small keeps its text readable, which is usually the entire reason anyone is going to watch it.

When 20 MB is the wrong target

If the destination is email and you do not know what the recipient runs, 20 MB is the right number, and the 25 MB page explains why the extra five megabytes are not really there. If the destination is Discord or WhatsApp, the limits are lower and this target will not save you.

And if the cap belongs to a system you administer, consider raising it rather than meeting it. A permanently worse video is an odd price to pay for a line in a config file you are allowed to edit. Compress the copies you send to other people's servers; do not degrade your own archive to satisfy your own default.

Questions about the 20 MB target

What does "413 Request Entity Too Large" mean?

That a server between you and the application refused the upload on size before the application ever saw it, usually a proxy or the web server rather than the site itself. It is why the message names no limit: the component that rejected you does not know what the site would have considered acceptable.

How long can a video be at 20 MB?

Roughly five minutes at 480p, close to three minutes at 720p, and about twelve minutes at 360p. Screen recordings comfortably beat all three, because most of the frame is identical from one moment to the next.

Is 20 MB a safe size for an email attachment?

Yes, and it is the number to pick when you do not know what the recipient is on. Attachments are base64-encoded in transit, which inflates them by about a third, and many receiving servers apply their cap to the encoded message rather than to your file. 20 MB leaves room for that.

Other size targets

Compressing for a specific platform instead? Discord, WhatsApp and email each have their own page.

Or start from the file you have. Whether 20 MB is a stretch or a formality depends on what is already inside the container: MP4 , MOV , MKV , WebM , AVI , WMV , FLV , M4V and MTS / M2TS .