RunToolRunRunToolRun
Tools/Video Tools/Video Compressor

Video Compressor

Reduce video file size.

100% on device ยท 0 uploads
Target size (optional)
Drop files here
or click to select ยท .mp4, .mov, .webm vb.
01 ยท Unlimited
Use it as many times as you want โ€” completely free.
02 ยท Private
Your files never leave your device; everything runs in your browser.
03 ยท Fast
Processing happens locally and finishes in seconds.

How to Compress a Video Online

1

Select your video

Click the upload area or drop an MP4, MOV or WebM file. Everything is processed on your device โ€” nothing is uploaded.

2

Pick a target size or leave it automatic

Choose Automatic for the best quality-to-size balance, or a target like Discord (10MB) or WhatsApp (16MB) to shrink under a specific limit. No sliders to fiddle with.

3

Download the compressed video

The tool re-encodes to efficient H.264 in your browser and shows how much smaller it got. Download the MP4.

What actually happens when a video is compressed

A video file is a container (MP4, WebM, MOV) holding separately encoded video and audio streams. Compressing it does not squeeze the existing data the way a ZIP archive does โ€” it decodes every frame back to raw pixels and re-encodes them with a codec that is allowed to discard detail. That is why compression is lossy and why compressing an already-compressed file a second time always costs more quality than the first pass did.

Two things control the final size: the bitrate (how many bits per second the encoder may spend) and the resolution. Halving the bitrate roughly halves the file. Dropping resolution saves more, but it is irreversible โ€” once a 1080p frame is stored at 720p, the detail is gone. This tool keeps your original resolution and works on bitrate alone, because a slightly softer 1080p file is almost always more useful than a sharp 720p one.

Why there is no quality slider

Earlier versions asked you to pick a compression level on a scale. In practice nobody knows what level 31 means, and the honest answer is that the right value depends on the footage โ€” a static screen recording and a handheld night video need completely different settings to look equally good.

So the tool fixes a setting that is a good default across almost all footage: H.264 at CRF 28 with the fast preset, AAC audio at 128 kbps, and faststart enabled so the file can begin playing before it has fully downloaded. CRF is constant-quality rather than constant-bitrate, which means simple scenes automatically get smaller and complex scenes automatically get more bits. You do not have to guess, and the result is consistent.

Target size mode, and the arithmetic behind it

If you need a file under a hard limit โ€” Discord's 10 MB, WhatsApp's 16 MB, a mail server's 25 MB โ€” pick that target instead of automatic. The tool reads the video's duration, subtracts the audio budget, and solves for the video bitrate that lands just under the limit, keeping a small safety margin for container overhead.

Because a single encoding pass cannot hit a size target accurately, this mode runs two passes: the first analyses the footage and writes a statistics file, the second encodes using that analysis to distribute bits where they matter. It is slower, and it only runs when you actually ask for a target. If the file is already smaller than the target, the tool quietly falls back to automatic mode rather than re-encoding for nothing.

Hardware acceleration, and what happens without it

Where the browser supports WebCodecs, encoding is handed to the same hardware encoder your operating system uses, which is dramatically faster than software encoding and avoids downloading a large WebAssembly build. This is the path most current Chrome, Edge and Safari builds take.

When WebCodecs is unavailable or fails mid-run, the tool falls back to a WebAssembly build of FFmpeg. It is slower โ€” this runs single-threaded โ€” but it produces the same H.264 output and needs no server. Either way the video never leaves your machine, which is also why very long files are limited by your device's memory rather than by an upload quota.

When this is the wrong tool

If your source is already a heavily compressed download, there is little redundancy left to remove and you will lose visible quality for a modest saving. Compress from the highest-quality original you have, not from a file that has already been through this once.

The tool encodes H.264 only. H.265/HEVC and AV1 compress noticeably better at the same quality, but H.264 is the format that plays everywhere without argument, and the browser encoders available today do not offer the others reliably. If you need maximum compression and control playback of the result, a desktop encoder will beat any browser tool โ€” including this one.

Written by Mutaf โ€” Developer of RunToolRun. This section is written from the tool's own implementation.

Why Use This Video Compressor?

โœ“One click โ€” automatic best quality-to-size balance
โœ“Target sizes for Discord (10MB), WhatsApp (16MB), Email (25MB)
โœ“Fast in-browser encoding, no upload
โœ“100% private โ€” your video never leaves your device

Frequently Asked Questions

How do I compress a video to 10MB for Discord?+
Pick the 10 MB (Discord) target. The tool calculates the right bitrate from your video length and re-encodes it to stay under 10 MB โ€” no manual settings needed. WhatsApp (16 MB) and Email (25 MB) presets work the same way.
Do I need to choose compression settings?+
No. By default the tool compresses automatically at the best quality-to-size balance. Settings are optional โ€” only pick a target size if you must hit a specific limit.
Will compressing reduce video quality?+
Some quality is traded for size, but the automatic mode keeps it visually close to the original while cutting the file substantially. Resolution is preserved.
Is my video uploaded to a server?+
No. All processing runs in your browser using WebCodecs (hardware-accelerated where available) or WebAssembly. Your video never leaves your device.

Related Tools