Video Compressor
Re-encodes to H.264 with a chosen CRF and an optional downscale. The 31 MB engine downloads once and then runs locally.
How Video Compressor works
Shrink a video with ffmpeg running in your browser: choose a CRF quality and an optional width, and download a smaller H.264 MP4. Everything happens inside this page: the tool reads your input, runs the calculation or conversion locally, and hands the result back to you. Nothing is transmitted, because there is no backend to transmit it to.
That design choice is deliberate. Most free tool sites upload your files to a server, process them there, and quietly keep a copy. Toolcin cannot do that — the site is a set of static files. If your connection dropped the moment the page finished loading, every tool would still work.
What CRF actually controls
CRF — constant rate factor — tells the encoder how much detail it may throw away. Lower is better quality and a bigger file; 18 is visually lossless, 23 is high quality, 28 is a good default for sharing, and 32 is visibly soft.
The key property is that CRF targets quality, not size: a simple scene compresses to a small file and a busy one gets the bytes it needs. That is why the same CRF can halve one video and barely touch another.
Resolution is the bigger lever
Dropping from 1920 to 1280 wide removes 55% of the pixels before any compression happens, and a phone viewing the result cannot tell. For a clip destined for chat or a social feed, scaling to 854 px wide usually saves more than any CRF change.
Aspect ratio is preserved — the encoder is told to keep the height proportional to the new width, so nothing is stretched.
| Setting | Typical saving | Looks |
|---|---|---|
| CRF 23, original size | 20–40% | Essentially identical |
| CRF 28, original size | 50–70% | Good on a laptop screen |
| CRF 28, 1280 px | 70–85% | Fine on a phone |
| CRF 32, 854 px | 85–92% | Soft, acceptable for chat |
Speed, heat and honesty
Encoding runs on your CPU through WebAssembly, so it takes roughly the length of the clip on a laptop and longer on a phone, which will also get warm. The tab must stay visible or the browser throttles it.
The first run downloads about 31 MB of engine; after that it is cached. If the original was already compressed — a video sent through a chat app — the output may be no smaller, and the tool reports that instead of pretending.
What is kept
The video is re-encoded to H.264 in an MP4 container, and the audio track is re-encoded to AAC at 128 kbps. That combination plays everywhere, including iOS and older Android devices, which is the real reason to convert rather than just shrink.
Good to know
- Works offline once loaded, including on flights and in locked-down networks.
- No file size limit beyond your device's own memory.
- Free to use, with no account and no usage counter.
- Results are produced locally, so they are not logged or shared with anyone.
Questions
How much smaller will it get?
A typical phone clip drops 50–80% at CRF 28. A file that was already compressed will shrink much less.
Does it keep the audio?
Yes, audio is re-encoded to AAC at 128 kbps.
Will it reduce quality?
Yes — it is a re-encode. CRF 28 is close to invisible on a phone screen and noticeable on a large monitor.
Can I compress a clip longer than a few minutes?
Technically yes, but memory and time grow with length; a long video is better handled by a desktop tool.
Video and audio tools
Keep going
More files tools
PDF to Word
Turn a text-based PDF into an editable Word .docx with one paragraph per extracted line. Runs in the browser, nothing uploaded.
Open toolPDF Page Editor
Reorder, delete, rotate and duplicate pages from a PDF, then download the result. Pages are copied, so text stays selectable.
Open toolCSV to JSON
Convert CSV data into clean JSON with a custom delimiter, header detection and pretty or compact output.
Open toolJSON to CSV
Convert an array of JSON objects into CSV, with quoted fields for commas, quotes and newlines.
Open toolXML Formatter
Format and validate XML with clear parse errors, using two-space, four-space or tab indentation.
Open toolJSON to YAML
Convert JSON into clean YAML with correct quoting, nesting and indentation.
Open tool