Skip to content
Pixora

Compress Video

Processed locally in your browser — nothing is uploaded.

Quick answer

To compress a video, re-encode it to H.264 at a higher CRF (quality) number — a lower bitrate means a smaller file. This tool does it in your browser with ffmpeg.wasm, so nothing is uploaded. Drag a quality slider, and it trades a little visible detail for a much smaller file that fits email, chat and the web. The first run downloads a one-time ~32 MB engine; short clips work best.

How to compress video

  1. Add your video

    Drop an MP4, MOV, WebM, MKV or AVI onto the page. The first time, the ~32 MB engine downloads and caches; after that it starts instantly.

  2. Set the quality

    Move the CRF slider — lower keeps more detail and a bigger file, higher shrinks harder. The default around CRF 23–28 is a good balance for sharing.

  3. Compress and download

    Click compress and wait — single-threaded encoding is slower than a desktop app. Download the smaller MP4 when it finishes.

How does the quality slider actually shrink a file?

The slider sets the CRF — Constant Rate Factor — of the H.264 encoder. CRF tells the encoder to hold a constant *visual quality* and spend whatever bitrate that needs, frame by frame. A low CRF (say 18) asks for near-transparent quality and produces a large file; a high CRF (say 30) tolerates more compression and produces a small one. Because the scale is roughly perceptual, raising CRF a few points can halve the file while most viewers notice nothing on a phone screen.

Unlike a fixed bitrate, CRF adapts: a still, simple scene gets few bits and a fast, detailed one gets more, so the quality stays even throughout. That is why it is the right default for general-purpose compression when you care about looking good rather than hitting an exact size. If you need an exact number of megabytes instead, use compress video to a target size, which works backwards from the size you name.

Which CRF should you pick?

A practical CRF guide for H.264 (libx264).
CRFQualityFile sizeGood for
18Visually losslessLargestArchival, re-editing
20–22ExcellentLargeKeeping detail for big screens
23Very good (default)MediumGeneral use, upload masters
26–28GoodSmallEmail, chat, social sharing
30+AcceptableSmallestQuick previews, tight limits

Why is it slower than a desktop encoder?

This runs ffmpeg compiled to WebAssembly, single-threaded, inside one browser tab. A desktop build uses every CPU core and often the GPU; here you get one core and a sandbox. That makes it private and install-free, but a long or high-resolution clip can take minutes, and very large files may exhaust the tab’s memory. Keep clips short — a minute or two of 1080p is comfortable; a full movie is not. The workbench warns on large inputs and always offers a cancel button.

Is my video uploaded to compress it?

No. The re-encode happens on your own device — your file is read into memory, compressed by ffmpeg.wasm and handed back as a download, never sent to a server. You can prove it: open your browser DevTools, switch to the Network tab, and compress a file. No upload request appears. You can even go offline after the page has loaded and it keeps working. That matters for unreleased footage, private recordings and client work.

Need an exact size ceiling? Use compress to target size. Want a smaller frame instead of more compression? Resize the video. If you only need the sound, extract the audio as MP3 — it is far smaller than any video. And when the file is final, you can add subtitles to it.

Your files never leave your device

Processed locally in your browser — nothing is uploaded. You can verify it yourself: open your browser’s developer tools, watch the Network tab, and use the tool — no upload request is ever made.

Frequently asked questions

What is the best setting to compress a video without losing quality?

Use CRF 20–23 with H.264. Around CRF 23 most viewers cannot tell the compressed clip from the original, while the file is much smaller. Go higher only when you need a smaller file more than perfect detail.

Why is my compressed file sometimes bigger than the original?

If the source was already heavily compressed at a high CRF or low bitrate, re-encoding at a lower CRF can add bits. Raise the CRF, or lower the resolution, so you are asking for less quality than the source already has.

How much smaller will my video get?

It depends on the source, but moving from a phone’s high-bitrate capture to CRF 26–28 commonly cuts the file by half to three-quarters. Detailed, fast-motion footage compresses less than simple, static footage.

Does compressing change the resolution?

No. CRF compression keeps the same width and height and reduces the bitrate. To change resolution as well, use the resize tool, which pairs well with compression.

Why is compression so slow in the browser?

The encoder is single-threaded WebAssembly, so it uses one core and no GPU. It is slower than a desktop app by design, in exchange for running privately with no upload and no install.

What output format do I get?

An H.264 MP4, which plays on virtually every device, browser and app. That universality is why H.264 is the default for sharing.

Can I compress a very large or long video?

Short clips work best. Long or high-resolution files can run out of the tab’s memory or take many minutes. Trim or resize first, or split the job into shorter pieces.

Is the compression really private?

Yes. Everything runs locally in your browser through ffmpeg.wasm. Check the Network tab of your developer tools — no upload request is made.