Compress video — in your browser

Drop in an .mp4, .mov, .mkv, .webm or .avi. Pick a quality level. Get a smaller file. Your video never uploads.

+

drop a video here

or click to choose — MP4, MOV, MKV, WebM, AVI, FLV up to ~2 GB

How compression works here

ShrinkVideo runs FFmpeg compiled to WebAssembly inside your browser. Pick a quality level and it re-encodes to H.264 at that quality. Pick a target size instead and it measures the clip, works out the bitrate that fits, and tells you what to expect before you start.

Quality presets, explained

How fast is it?

FFmpeg-WASM runs about 10–20× slower than native FFmpeg. A 5-minute 1080p video typically takes 4–6 minutes to compress on a modern laptop. Phones are slower. We're working on a WebAssembly.

File size limits

Your browser caps WebAssembly memory at roughly 2 GB. Videos up to about 1 GB work reliably; bigger files may run out of memory mid-encode. For multi-gigabyte 4K source files, use desktop FFmpeg.

FAQ

Does the file get uploaded anywhere?

No. Nothing is uploaded. Open your browser's network tab while you convert and you will see your file never leaves the page. Once the converter itself has downloaded, it keeps working on this device even with no connection.

What output codec is used?

H.264 in an MP4 container, which plays on essentially everything. WebM with VP8 is also available, though it encodes more slowly here and usually ends up larger.

Why is it slow on my phone?

FFmpeg-WASM uses your CPU, not hardware video encoders. Phones have less CPU. There's no upload to wait on, but the math has to happen somewhere.

Can I cancel mid-encode?

Yes — the Cancel button terminates the worker immediately. You'll need to wait a few seconds the next time you start, while FFmpeg reloads.

Related tools