Video Compressor
Compress a video in your browser: choose a resolution, quality preset and frame rate, then download a much smaller WebM.
Drag & drop a video here, or click to browse
No uploads. Your files stay on your device.
How it works
Drop in an MP4, WebM, MOV or any other clip your browser can play, pick a resolution, a quality preset and a frame rate, then press Compress video. The page scales every frame onto a hidden canvas, pulls the sound through the Web Audio API and re-encodes the result with the browser's own MediaRecorder, producing a WebM file (VP9 or VP8 video with Opus audio). Nothing is uploaded: the video is read straight from disk with the File API, so private footage never leaves your device and there is no size cap imposed by a server.
Because the encoder runs in real time, a two-minute clip takes about two minutes to compress — the clip plays back silently while it works and the progress line shows how far along it is. Resolution is the biggest lever on file size, followed by the quality preset; dropping to 15 fps shaves off more again for screen recordings and talking heads. If the result comes out bigger than the original, the source was already heavily compressed — choose a smaller resolution or the "Smallest" preset.
Frequently asked questions
How do I compress a video without losing quality?
Start by lowering the resolution rather than the quality preset — going from 1080p to 720p removes three quarters of the pixels and is usually invisible on a phone or in a chat window. Then pick the Balanced preset, which targets a bitrate scaled to your chosen size and frame rate. Only drop to Small file or Smallest if you still need less; and for screen recordings or talking heads, 15 fps saves a lot more without looking wrong. The live estimate above the button shows the expected size before you commit.
Is my video uploaded to a server?
No. The file is read straight from disk with the File API, every frame is rescaled on a canvas in this page and the result is re-encoded by your browser's own MediaRecorder. Nothing is sent anywhere, there is no account, no watermark and no server-side size limit — you can even disconnect from the internet after the page loads and the compression still works. Unlike the upload-based compressors, your footage never sits on someone else's disk.
Why is the output a WebM file and not an MP4?
Browsers can only re-encode video into the formats their built-in recorder supports, which in practice means WebM with VP9 or VP8 video and Opus audio. Producing an MP4 would need a multi-megabyte transcoder shipped into the page, which would be slower and far less private. WebM plays natively in Chrome, Edge, Firefox, Android, Discord, Telegram and modern versions of Windows and macOS; if you specifically need MP4, convert the compressed WebM afterwards with a desktop tool.