🎬 Video Compressor

Compress MP4, WebM, MOV — no upload, no signup, no watermark

✓ Free Forever · ✓ No Signup · ✓ No Upload · ✓ Works Offline

🔒 Your videos and audio never leave your device. All processing happens locally in your browser using FFmpeg.wasm (H.264 / AAC, runs entirely in your browser). No upload, no server, no tracking.

Features

  • Zero Upload — Your video file never leaves your device. Compression runs on your CPU via WebAssembly — verifiable in DevTools Network tab.
  • Adjustable Quality — Pick the CRF (18-35) and, if you like, a smaller resolution (1080p, 720p, 480p). Preview both, change the settings and compress the same video again before you download.
  • Up to 90% Smaller — Phone and camera clips often come out 50-90% smaller. A video that is already well compressed may not shrink — the page says so instead of handing you a bigger file.
  • No Watermark, No Signup — Unlike Clipchamp, Veed, or online compressors — no account, no watermark, no time limit.

How It Works

  1. Drop your video — MP4, WebM, MOV, AVI, MKV — any common format. Up to 1 GB to stay within browser memory limits.
  2. Pick quality and size — CRF 18 ≈ visually lossless, 28 = balanced (default), 32 = small file. Lowering the resolution saves the most.
  3. Wait for compression — FFmpeg.wasm loads once (~30 MB), then compresses on your CPU. A 1080p clip takes about twice its own length on a recent laptop; a smaller resolution is quicker.
  4. Compare and download — Preview original vs. compressed side-by-side, then download the MP4. The original is never touched.

Use Cases

  • Shrink videos under email attachment limits (Gmail 25 MB, Outlook 20 MB)
  • Send videos via WhatsApp, Telegram, Discord without quality loss from auto-compression
  • Speed up web pages by serving smaller MP4 hero videos
  • Save space on your phone — compress old recordings before archiving
  • Reduce upload time before posting to YouTube, TikTok, Instagram

How it compares

ToolKoalaClideoFreeConvertKapwingEzgif
Your video is uploaded to a serverNo — it is encoded in your browserYesYesYesYes
Watermark on a free exportNoneYesNoneYes, on the free planNone
Free file-size limit1 GB500 MB1 GBNo stated cap200 MB
Free usage capNoneFiles kept 14 days20 conversion-minutes a day4-minute maximum exportNone
Account neededNoNoNoTo remove the watermarkNo
Cost to lift the main limitFree — there is no paid tier$12/mo$12.99/mo$16/mo billed yearlyFree

Checked 14 August 2026 against each service’s own pages; these limits change often, so verify before relying on them. Ezgif is listed because it is genuinely free and watermark-free — it just uploads your file and caps you at 200 MB. Microsoft Clipchamp also encodes locally, so browser-side processing is not unique to us.

Frequently Asked Questions

Does the video upload to your server?

No. The video stays in your browser's memory the entire time. The only network request is loading the FFmpeg engine (~30 MB) from a public CDN the first time you use the tool. Open DevTools → Network tab to verify — you'll see the FFmpeg files load, but no upload of your video.

Why is it slower than online compressors that use servers?

Server-based tools use dedicated GPUs/CPUs. ToolKoala runs FFmpeg.wasm on your laptop's CPU through WebAssembly. The trade-off is privacy: your video never leaves your device. A 1080p clip takes about twice its length on a recent laptop (a 60-second clip ≈ 2 minutes); 4K takes several times longer, so pick 1080p or 720p to speed it up.

What's the maximum file size?

The cap is 1 GB: nothing is uploaded, so the video has to fit in your browser's memory. For files over 1 GB, use a desktop tool like HandBrake. Under 500 MB it runs smoothly on most laptops.

What does CRF mean?

Constant Rate Factor — H.264's quality knob. Lower = better quality, larger file. 18 = visually lossless, 23 = high quality, 28 = balanced (good default), 32 = noticeable compression, 35 = aggressive shrink.

What does the resolution setting do?

It shrinks the picture before encoding: 720p makes the shorter side 720 pixels (a landscape 1920 × 1080 clip becomes 1280 × 720, a portrait one 720 × 1280). Fewer pixels is the biggest saving and also makes the encode faster. A video smaller than the choice keeps its own size — nothing is enlarged.

Does it keep the recording date and the location?

It keeps the recording date, so your gallery still sorts the clip where it belongs, and removes the GPS location phones write into videos. The MP4 gets the video and its first audio track; extra audio tracks and subtitles are left out.

Does it work on mobile?

Technically yes, but compression is CPU-heavy. Phones may slow down or run out of memory for large files. We recommend desktop or laptop for files over 100 MB.

Why H.264 and not H.265 or AV1?

H.264 has universal device support (every phone, browser, smart TV). H.265 and AV1 produce smaller files but aren't universally playable yet.

Notes from Milo 🐨

2026-10-10

Three things I didn't like about my own video compressor. The quality slider disappeared the moment you dropped a video, so when the page said "try a higher CRF" you had to start over and drop it again — the settings now stay under the result, and "Compress again" runs the same video with whatever you changed. There was no way to make the picture smaller, which is where the big savings are: pick 1080p, 720p or 480p (the shorter side, so phone videos shot upright work too, and nothing is ever enlarged). And the compressed clip lost its recording date but kept the GPS position your phone wrote into it — the wrong way round. Now the date stays, so your gallery sorts it correctly, and the location is removed.

2026-10-03

I compressed a screen recording and watched "Compressing... 0%" for the whole run. Recordings made in a browser (and most screen recorders) don't store their length, so the engine had nothing to work a percentage out from. Now, when there's no real percentage, the bar pulses and counts the seconds and how far into the video it has got. Two more: a video saved with full-colour (4:4:4) chroma used to come back in a form iPhones and Safari refuse to play — it now always comes out as the standard kind every device plays; and the download is named after your video instead of compressed.mp4.

From the blog

Related Tools

  • 🎵 MP3 Compressor — Shrink audio files with adjustable bitrate — no upload, no signup, no watermark
  • 📦 Compress Image — Reduce file size without losing quality — all in your browser
  • 📺 M3U8 Player — Paste an M3U8 URL to play HLS streams directly in your browser — no software needed

💬 Bug, idea, or just to say hi? Tell Milo 🐨 · [email protected]