Compress a video to 500 MB

Five hundred megabytes is the largest target here, and the first one where the limit you actually run into is your own machine rather than the platform you are uploading to.

Target preset: 500 MB 1080p up to ~32 minutes 720p up to ~72 minutes 480p up to ~135 minutes

Drop your video here

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

The compressor above is already set to a 500 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 500 MB. Nothing is uploaded.

What sits at 500 MB

The best-known one is Discord's full Nitro tier, which allows 500 MB per file where a free account gets a small fraction of that and Nitro Basic sits in between. Those numbers have moved more than once, so check the app before you commit an hour to an encode. The history of that limit covers how it got where it is.

Elsewhere 500 MB shows up as a per-file cap on enterprise file shares and asset portals, on some learning platforms for video assignments, and at the top of what upload-based converters will accept from a paying customer. And as with 200 MB, it is frequently self-imposed: the size somebody decided a delivered edit should not exceed.

What fits in 500 MB

There is very little to interpret in this table. Every row through ten minutes sits well above what 1080p asks for on ordinary footage, and even the half-hour row still holds 1080p. If your clip is under half an hour and the ceiling is 500 MB, picture quality is not the thing you are trading.

Video bitrate available inside a 500 MB ceiling, audio allowance already subtracted.
Clip length Video bitrate budget Realistic resolution
15 seconds 268,307 kbps 1080p or original
30 seconds 134,089 kbps 1080p or original
1 minute 66,980 kbps 1080p or original
2 minutes 33,426 kbps 1080p or original
5 minutes 13,293 kbps 1080p or original
10 minutes 6,582 kbps 1080p or original
30 minutes 2,108 kbps 1080p

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

At this size the browser is the constraint, not the ceiling

A 500 MB target implies a source considerably larger than that, and the source is where the real limit lives. Everything happens inside this tab: the input file is written into the FFmpeg module's memory, the decoder allocates working buffers on top of it, and the output accumulates alongside both. All of it is resident at the same time.

WebAssembly addresses memory in 32 bits, which puts a hard four-gibibyte ceiling on what the module can hold regardless of how much RAM the machine has, and browsers hand out considerably less than that in practice. A multi-gigabyte source can therefore fail on a machine with 32 GB of memory for reasons that have nothing to do with the memory, and when it fails it usually fails as a crashed tab rather than as a message you can act on.

The practical version: on a desktop with a few gigabytes free this works, slowly. On a phone it will not. Keep the tab in the foreground, because a backgrounded tab gets throttled and the encode stops making progress. If the source is very large and this keeps dying, that is a genuine case for a desktop tool. The comparison page is honest about where the browser stops being the right answer, and HandBrake handles sizes this one cannot.

A 500 MB target is usually a transcode, not a compression

At a ceiling this high you are rarely squeezing an already-efficient file. You are converting something that was never intended for delivery. Three sources account for most of it: a ProRes or DNxHD master out of an editor, which barely compresses on purpose so that colour work has room to move; an AVCHD dump straight off a camcorder, which is H.264 but at a capture bitrate and usually interlaced; and a multi-hour OBS recording written at a fixed high bitrate because dropping frames mid-stream is worse than a big file.

All three carry enormous slack, and the win comes from replacing a capture codec with a delivery one rather than from starving the encoder. Expect a large reduction with nothing visible happening, which is not a sentence this site gets to write often. The relevant pages are MOV for ProRes, MTS and M2TS for camcorder footage and MKV for long recordings.

Half a gigabyte takes real time in a tab

This is the cost nobody quotes. H.264 encoding here runs through libx264 compiled to WebAssembly, multi-threaded where the browser allows it, and it is slower than the same encoder running natively. A half-hour 1080p source is a long wait, long enough that it is worth setting the job up properly rather than iterating towards it.

Target-size mode makes a bad guess expensive. It measures the finished file, and if the encode landed over your ceiling it scales the bitrate and runs the whole thing again, up to three passes. At 8 MB that loop costs you seconds. At 500 MB it costs you the encode twice.

So set the resolution deliberately before you start instead of leaving it on original and hoping. And if 500 MB is a preference rather than a hard limit, use Best compression with the quality slider, which is a single pass. A file that lands at 480 or 540 MB is perfectly fine when nothing is actually measuring it. How the tool works goes through the modes.

Questions about the 500 MB target

Is 500 MB the Discord upload limit?

It is the per-file limit on the full Nitro tier. Free accounts and Nitro Basic are considerably lower, and the numbers have changed several times, so check in the app rather than trusting any page. The Discord page on this site covers the current tiers and the ways around them.

Can this compress a 5 GB file down to 500 MB?

Sometimes, and it depends on your machine rather than on any service limit, because nothing is uploaded. WebAssembly caps the module at four gibibytes of addressable memory and browsers allow less, so very large sources can crash the tab. A desktop with plenty of free RAM is the requirement; a phone will not manage it.

How long can 1080p run inside 500 MB?

About thirteen minutes before the budget drops under what a generous 1080p encode wants, and roughly half an hour before it falls out of 1080p territory altogether. Past that, drop to 720p or split the recording.

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 500 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 .