iPhone Video Compressor

Compress MOV & MP4 videos from your iPhone directly in your browser — no upload, no server, no account. FFmpeg runs entirely on your device via WebAssembly.

🔒 100% private. Your video files are never uploaded anywhere. All processing happens locally in your browser using FFmpeg WebAssembly.

Settings

0 (lossless) – 51 (worst)

CRF 18 ≈ visually lossless · CRF 23 = default · CRF 28 = small but noticeable compression

Add videos

🎥
Drop MOV / MP4 files here
or click to browse — multiple files supported
Loading FFmpeg WebAssembly engine… this takes ~5–15 seconds on first run.

How it works

FFmpeg — the industry-standard open-source video tool — is compiled to WebAssembly and runs entirely inside your browser tab. No plugin, no extension, no server.

1. Pick files Drop or browse your iPhone MOV or MP4 files. Multiple files are queued and processed one by one.
2. Choose quality Pick a resolution preset and either a CRF quality level (simple) or a hard target file size (two-pass).
3. FFmpeg runs locally The WASM engine re-encodes to H.264 video + AAC audio inside your browser. CPU usage is high but brief.
4. Download results Each compressed MP4 appears with a download button as soon as it is ready. Compression ratio is shown.

CRF explained: Constant Rate Factor controls quality vs. file size. CRF 23 (default) is a good general-purpose setting. CRF 18 is near-lossless. CRF 28 cuts the file aggressively. For iPhone footage, CRF 22–26 with 720p is typically enough to email or share.

Two-pass target size: Enter a MB budget. The tool runs FFmpeg twice — the first pass measures the video, the second encodes to hit the target bitrate. Audio is always encoded at 128 kbps AAC.

Frequently asked questions

Does my video get uploaded to any server?
No. This tool uses FFmpeg compiled to WebAssembly, which runs entirely inside your browser process. Your video bytes are read from your local disk into browser memory and never sent over the network. You can even go offline after the page loads and compression will still work.
Why does it take a moment to start the first time?
The FFmpeg WebAssembly binary (~30 MB) needs to be downloaded from a CDN and compiled by your browser's WASM engine. This happens once per session. After it is loaded, subsequent files compress without any delay. Modern browsers (Chrome, Edge, Firefox, Safari 16.4+) cache the compiled binary, so revisiting the page is fast.
What is the difference between CRF and target file size?
CRF (Constant Rate Factor) tells the encoder to maintain a given visual quality level — the output file size depends on how complex the video is. A fast-moving scene will produce a larger file than a still room. Target file size mode uses two-pass encoding: the first pass profiles the video, and the second pass sets the exact bitrate needed to hit your budget. Use target size when you need to fit a specific limit (e.g. an email attachment cap or a form upload limit).
Will compressing reduce video quality noticeably?
At CRF 18–22 the quality loss is invisible to most viewers. At CRF 23–26 (the default range) slight softness appears in fast motion, but is acceptable for sharing. CRF 28+ noticeably blurs fine detail and is best reserved for preview clips. Lowering the resolution to 720p alongside a moderate CRF typically yields a 4–8× file-size reduction with barely perceptible quality loss on phone screens.
What format does the compressed file come out in?
All output is MP4 with H.264 video and AAC audio. This is the most widely compatible format — it plays on every iPhone, Android device, Windows, Mac, and streaming platform without any conversion needed. MOV files from iPhone (which are H.264 or HEVC inside a QuickTime wrapper) are re-wrapped and optionally re-encoded to H.264 MP4.
How large a video file can I compress?
Browser memory limits apply. Most desktop browsers can handle files up to 1–2 GB. The WASM engine reads the entire source file into memory during encoding. For very large files (10-minute 4K iPhone recordings can be 5+ GB), consider splitting first or using a desktop FFmpeg installation. Files under 500 MB work reliably on most devices.