FreePrivateConvert

Compress Video

To compress a video, add your file (.mp4, .mov, .mkv, .webm, .avi) below and press the button: it's processed on your own device and you download the result, with nothing uploaded. It's free, needs no account, and works with files up to 500MB.

Output is H.264 MP4 with 128 kbit/s AAC audio. Lower resolution shrinks files the most; videos are never upscaled. Long videos take a while: encoding runs on one CPU core.

About the Compress Video tool

You can compress a video entirely in your browser — no software to install, no file upload, and no account required. The conversion runs on a WebAssembly build of ffmpeg directly on your device.

How to compress a video privately

Every step below runs on a WebAssembly build of ffmpeg inside this browser tab. Your .mp4 file is never uploaded to a server — there's no network request carrying it anywhere.

  1. Add your video file

    Drag and drop, or click to select, a file (.mp4, .mov, .mkv, .webm, .avi). It's read straight from disk into browser memory — no upload step exists.

  2. Compress locally

    FreePrivateConvert does this with a WebAssembly build of ffmpeg, entirely within this browser tab.

  3. Download the result

    Save your new file. It only ever existed in this tab's memory — closing the tab without downloading discards it completely.

Convert Video to MP4 with ffmpeg (command line)

Prefer the terminal? This is the exact ffmpeg command this page runs for you:

ffmpeg -i input.mp4 -c:v libx264 -preset veryfast -crf 28 -c:a aac -b:a 128k -movflags +faststart output.mp4
-i input.mp4
Your Video file.
-c:v libx264
Encode the video as H.264, the format virtually every phone, browser and TV plays.
-preset veryfast
Encoding speed vs. file size trade-off: veryfast encodes quickly with a slightly larger file.
-crf 28
Constant quality level 28 (lower = better quality and bigger file; 23 is ffmpeg's default, so 28 trades some quality for a smaller file).
-c:a aac
Encode the audio as AAC.
-b:a 128k
Audio bitrate of 128k per second: high quality for AAC.
-movflags +faststart
Move the MP4 index to the start of the file so playback can begin before the download finishes.
output.mp4
The MP4 file to create. ffmpeg picks the container from this extension.

This is the default (Balanced) setting. High quality uses -crf 24 and Smallest uses -crf 32; choosing a maximum resolution adds -vf scale=-2:'min(720,ih)' (for 720p).

Don't have ffmpeg installed? You don't need it: use the converter at the top of this page. It runs the same conversion on your own device, and your file is never uploaded.

FAQ

Is my file uploaded anywhere?
No. Your file is read and processed inside this browser tab and never leaves your device. You can confirm it in your browser's developer tools: the Network tab shows no upload.
Does it reduce quality when you compress a video?
Yes, by design: the video is re-encoded as H.264 at the quality level you choose (CRF 24, 28 or 32) with 128 kbit/s AAC audio, optionally at a lower resolution. Higher CRF means a smaller file and softer picture; Balanced (CRF 28) usually looks fine on a phone.
Is there a file size limit?
Yes: 500MB per file. There's no account and no limit on how many files you convert.
What is the ffmpeg command to convert Video to MP4?
Run: ffmpeg -i input.mp4 -c:v libx264 -preset veryfast -crf 28 -c:a aac -b:a 128k -movflags +faststart output.mp4. This is the exact command FreePrivateConvert runs for this conversion, so you can use this page instead of installing ffmpeg: it runs the same conversion inside your browser. This is the default (Balanced) setting. High quality uses -crf 24 and Smallest uses -crf 32; choosing a maximum resolution adds -vf scale=-2:'min(720,ih)' (for 720p).

Last updated

Looking for something else? Browse all conversion tools.

Related conversion tools