Video Compressor

Three quality tiers or a target size to shrink MP4 / MOV / AVI files a lot

📂

Drag & drop files here

or browse files

Compress MP4 / MOV / MKV / AVI / WebM videos to smaller MP4 files

About this tool

A 200 MB home clip that WeChat refuses, a cloud upload capped at 100 MB, a registration portal demanding videos under 50 MB - these situations need compression, not format conversion. This tool offers exactly that: compress by quality tier (pick a target quality and the size follows), or compress to a target size (type the number of MB and automatic two-pass encoding gets you there). MP4, MKV, MOV, AVI and WebM files are accepted; output is the most compatible MP4.

One honest note first: true lossless video compression does not exist in practice. Finished videos are already lossy H.264/H.265 files, and re-encoding them "mathematically lossless" usually multiplies the size. The useful option is the visually lossless tier here (CRF 18): indistinguishable from the original at normal viewing distance, yet dramatically smaller. If you only need the same streams in another wrapper, use the lossless remux in the Video Converter instead.

All processing happens in your browser with FFmpeg compiled to WebAssembly - files are never uploaded or stored, so private home videos and surveillance clips stay on your device. Encoding is CPU-heavy, so keep jobs under roughly 1 GB / 1 hour; a live progress bar and a cancel button are always available.

Features

  • Three quality tiers - visually lossless (CRF 18), balanced (CRF 23), aggressive (CRF 28)
  • Target-size mode: type the MB you need, bitrate is derived and two-pass encoding hits it
  • Optional resolution cap (1080p / 720p / 480p) - often saves more size than dropping quality
  • MP4 (H.264 + AAC) output with faststart, ready for web pages and chat apps
  • Local processing - no upload, no watermark, no limits, with live progress and cancel

How to use

  1. Drop the video into the box (or click to browse) - duration, resolution and bitrate are read automatically
  2. Pick a quality tier, or switch to target-size mode and enter the MB you need
  3. Optionally cap the output resolution, then click Compress
  4. Preview the result, compare before/after sizes and download

Frequently asked questions

Is truly lossless video compression possible?
Not in any useful sense. Finished videos are already lossy (H.264 and friends), and re-encoding them mathematically lossless typically makes files several times bigger. The practical choice is the visually lossless tier here (CRF 18): differences from the original are nearly impossible to see, while the size drops a lot. If you just need another container without any quality change, use the lossless remux in the Video Converter tool.
Which quality tier should I choose and how much smaller will it get?
Pick visually lossless for archiving or further editing; balanced is the everyday upload/share option (typical results land at 1/2 to 1/5 of the original); aggressive plus a 720p/480p cap can reach 1/10 or less for screen recordings, camera originals and surveillance footage, which carry very high bitrates to begin with.
How do I compress a video to an exact size, say 50 MB?
Switch to target-size mode and enter 50. The tool derives the needed bitrate from your video duration, runs a first pass to measure complexity, then a second pass to hit the target - expect roughly double the time. Final size usually lands within about 5% of the target; if the target is larger than the original, the page warns you before starting.
Why is compression slower than I expected?
Browsers cannot use GPU encoders, so everything runs on the CPU via WebAssembly. 1080p material typically needs 1-5x its own duration (double that in two-pass mode). That is normal; watch the progress bar and cancel anytime. For 4K or very long files, split them first.
Does it work on phones, and are my files uploaded?
Yes, the page is responsive and works in Android and iOS browsers - a few hundred MB is a sane limit on phones due to memory and thermal constraints. And no, nothing is uploaded: there is no backend able to receive video, all work happens in your device memory after a one-time ~31 MB engine download that is cached for offline use.

Related tools