Compress video without uploading it anywhere
This compressor runs entirely inside your browser: your video is decoded and re-encoded by your own device through WebCodecs, and the compressed result is written straight to local storage as each piece of it is finished. Nothing is uploaded, and because the output is never held in memory, there is no file-size limit — the only ceiling is your own free disk space. Pick a file and it starts immediately.
Why compressing without uploading is different
Almost every free video compressor on the web is an upload service. You hand your file to a server you don't control, it sits in a queue behind other people's files, it gets processed, and you download the result. That model works, but it asks a lot: your footage is copied to someone else's disk, retention is whatever the privacy policy says it is, and a 400 MB clip has to travel up your connection before anything happens at all.
This tool inverts that. The browser reads the file straight off your disk, hands the frames to your device's own video encoder through the WebCodecs API, and writes the new MP4 back to local storage as it encodes. Nothing crosses the network — you can confirm it by opening your browser's network panel while it runs, or by disconnecting from the internet after this page has loaded and compressing anyway.
Two practical consequences follow. First, speed is bounded by your hardware rather than your upload bandwidth, which is why a short clip finishes in a couple of seconds. Second, there is nothing to rate-limit: no daily quota, no queue position, no sign-up, and no watermark, because there is no server whose costs need recovering.
The one thing a local compressor can't do is work in a browser without a video encoder. If your browser isn't supported, the tool above says so plainly instead of silently falling back to an upload.
Compressing a large video, without a size limit
Large files are where browser-based compression usually falls over, and the reason is memory. The straightforward way to build one of these tools is to assemble the finished video in memory and hand it over only once it's complete — which means the memory a job needs grows with the size of its own output. A long recording can end up asking for more RAM than the machine has to spare, and the tab dies somewhere in the middle. That is why in-browser compressors normally publish a maximum file size.
This one doesn't work that way. Each piece of the compressed video is written to your browser's local storage the moment it's encoded, so memory use stays flat no matter how long the video is. We measured it: compressing a 40-minute 1080p recording down to a 500 MB file peaked at 643 MB of memory and stayed level from beginning to end. The same job assembling its output in memory instead peaked at 1,246 MB and was still climbing when it finished. That difference is the whole reason there is no size limit here.
What replaces the limit is a check you can't fail by surprise. Before encoding begins, the tool estimates how big the result will be and compares it against the storage your browser actually has free. If it won't fit, you're told immediately rather than forty minutes in. And nothing is left behind: cancel partway through, or close the tab, and the half-written file is deleted.
The practical ceiling is your own free disk space, not a number we picked. Multi-gigabyte source files are fine — a two-hour video is a question of patience, not of capacity.
How to compress a video in your browser
The whole flow is three steps and no configuration is required — the default 720p setting is the one most people want.
- Choose a video, or drag it onto the box above. The file is read locally; you'll see its length, resolution, and size immediately.
- Pick a quality level. 720p keeps the video looking close to the original; 540p is sized for messaging apps; 360p squeezes hardest. The target resolution is shown before you commit.
- Press Compress and wait. Progress is real, not estimated. When it finishes you'll see the before and after size, and Download saves the new file.
Compression is one-way — the discarded detail can't be recovered. Keep your original until you've watched the compressed copy and are happy with it.
Which quality level should you pick?
Each level scales the video's short side down to a target and caps the average bitrate. The short side is used rather than the width so that portrait video from a phone is treated the same as landscape footage from a camera.
Nothing is ever upscaled. If you feed a 720p video into the 720p setting, the resolution is left alone and only the bitrate changes — which is worth knowing, because that case saves much less than a 4K source would.
| Level | Target | Best for |
|---|---|---|
| 720p · High quality | Short side 720 px, ~2 Mbps | The default. Sharing, archiving, watching on a phone or laptop. |
| 540p · Balanced | Short side 540 px, ~1 Mbps | Messaging apps, email attachments, upload size limits. |
| 360p · Smallest | Short side 360 px, ~0.6 Mbps | Getting a long video under a hard size cap. |
These are the same three levels and the same bitrates Photo Slim uses on iPhone, so a clip compressed here and a clip compressed in the app come out the same.
How to compress a video to 10 MB, 25 MB, or 100 MB
Sometimes the requirement isn't «smaller», it's a number: an upload form that rejects anything over 25 MB, a chat app that stops at 10 MB, a portal capped at 100 MB. Switch the tool from quality levels to target size and you hand it that number instead. It divides the budget by your video's length to get a bitrate, subtracts the share the audio needs, and then picks the resolution that bitrate can actually carry — so the choice between 720p, 540p and 360p is made for you rather than by trial and error.
It deliberately aims a little under the target rather than exactly at it, because a file that lands at 25.4 MB is just as rejected as one at 60 MB. Two limits are worth knowing. The audio track is copied through untouched, so it takes a fixed share of the budget that no quality setting can win back. And past a certain length a small target stops being achievable at any quality — a forty-minute recording will not become a 10 MB file worth watching. When that's the case, the tool tells you before you start instead of spending your time producing mush.
Because it aims under the target rather than at it, the result clears the limit whether the site counting it uses 1,000 or 1,024 kilobytes to the megabyte.
How much smaller will your video get?
It depends almost entirely on what the source is, and any tool promising a fixed percentage is guessing. The saving comes from two places: dropping the resolution, and lowering the bitrate. If your source is far above the target on both counts, the reduction is dramatic. If it's already close, there's little left to take.
Three real measurements make the range concrete. A 9-second 4K clip recorded at 96 Mbps went from 105 MB to 2 MB at the 720p setting — under 2% of the original, because the source bitrate was absurdly high for its length. A 121-second 1080p video went from 101 MB to 25 MB, about a quarter. A 150-second clip that was already 720p only went from 95 MB to 37 MB, roughly 39%, since the resolution couldn't be reduced at all.
The pattern is consistent: high-bitrate phone footage, screen recordings, and anything shot in 4K compress enormously. Video that has already been compressed once — a clip downloaded from a messaging app, say — has much less to give, and squeezing it again mostly costs quality rather than megabytes.
Browser support
The tool needs the WebCodecs API and a working H.264 video encoder. That combination is present in current Chrome, Edge, and other Chromium browsers, and in Safari 18 and later. Firefox does not expose a WebCodecs video encoder yet, so the tool detects that and tells you rather than failing halfway through.
Support is checked when the page loads, not when you press the button, so you find out before you pick a file.
| Browser | Works | Notes |
|---|---|---|
| Chrome / Edge (desktop) | Yes | Fastest path. Uses your GPU's hardware encoder when there is one. |
| Safari 18+ (macOS) | Yes | Supported. Output size can differ slightly from Chrome for the same setting. |
| Chrome / Safari on mobile | Usually | Works on recent devices, but long videos are slow and battery-hungry on a phone. |
| Firefox | Not yet | No WebCodecs video encoder. The page will tell you and offer alternatives. |
Limits worth knowing before you start
This is a single-file tool, and it is honest about where it stops. Being clear about the edges is more useful than discovering them mid-compression.
- One file at a time. There's no batch queue — for a whole camera roll, the app is the right tool.
- No fixed size limit, but there is a storage check. The ceiling is your own free disk space, and it's tested before encoding starts rather than discovered halfway through.
- Target size is best-effort, not a guarantee. Pick 10, 25 or 100 MB and the bitrate is worked backwards from it, aiming just under — but the audio is copied through untouched and takes a fixed share of the budget, and a long enough video won't fit a small target at any quality. You're told that before you start, not after.
- Audio is copied, not re-encoded. Your original soundtrack is preserved bit for bit, including 5.1 surround, which also means audio contributes nothing to the size reduction.
- The output is always MP4 (H.264 by default, HEVC if you turn it on). There's no format conversion, GIF export, trimming, or watermarking here.
- Very long videos still take a while. We measured ten to seventeen times faster than real time on a desktop with hardware encoding — a 10-minute video lands in about a minute — and phones are considerably slower.
Nothing you do here touches the original file on your disk. The compressed copy is a separate download, so deleting the original is always your own explicit decision.
FAQ
Is my video really not uploaded?
No, and it's verifiable. Compression happens through WebCodecs, a browser API that hands frames to your device's own video encoder. There is no endpoint receiving your file. Open your browser's network panel while compressing and you'll see no upload; or load this page, disconnect from the internet, and compress anyway — it still works.
How large a video can I compress?
There is no size limit. Each piece of the compressed video is written to storage as it is encoded rather than assembled in memory, so a two-hour recording needs roughly as much memory as a two-minute one — producing a 500 MB file measured a flat 643 MB peak from start to finish. The real boundary is your free disk space, and it is checked before encoding begins rather than discovered halfway through. Multi-gigabyte files work; they simply take longer.
Is there a watermark, an account, or a daily limit?
None of them. No watermark is added, nothing needs to be created or signed into, and there is no daily quota or queue position — there is no server doing the work whose costs would need recovering.
How long does compressing take?
On a desktop with hardware encoding we measured ten to seventeen times faster than real time: a 2-minute clip in around 9 seconds, a 10-minute video in about a minute, a 40-minute recording in under three. The speed comes from WebCodecs passing frames to the video encoder built into your device rather than running a software encoder inside the page. Phones are noticeably slower, and the tab has to stay in the foreground.
Will compressing reduce the quality of my video?
Technically yes, since compression discards data, but at the 720p setting the difference is hard to see on a phone or laptop. Visible softness appears when you push the resolution down aggressively — the 360p level is deliberately a trade. Keep your original until you've checked the result; compression can't be undone.
How do I compress a video to under 25 MB?
Switch the tool from quality levels to target size and pick 25 MB — 10 MB and 100 MB are there too. Instead of choosing a quality level you give it the number, and it works the bitrate backwards from your video's length, picks the resolution that bitrate can carry, and aims just under the target so the result clears the limit rather than landing on it. Two things bound what's possible: the audio is copied through untouched and takes a fixed share of the budget, and a long enough video can't fit a small target at any quality — when that happens you're told before you start, not handed something unwatchable.
Why is my video only slightly smaller?
Almost always because it was already compressed efficiently. A clip that is already 720p can't lose resolution at the 720p setting, so only the bitrate drops — typically a saving of around 40% rather than 80%. Try a lower level, or accept that there isn't much left to remove.
Should I use H.264 or HEVC?
H.264 is the default because it plays everywhere and encodes quickly on every device. HEVC is the more efficient codec, but on this page it won't give you a smaller file: both codecs get the same target bitrate, so HEVC spends that efficiency on a cleaner picture rather than on fewer bytes — in our own measurements it looked clearly better at the same bitrate and came out slightly larger. It also needs a hardware HEVC encoder to be practical: on machines without one it can be more than ten times slower, and older players may not open the result. Turn it on when you want the best picture at a given size and the output is only for you.
Does it work on iPhone or Android?
On recent phones, yes — Safari 18+ and Chrome both support the required API. It's not the ideal place for a long video, though: phones encode slower, the tab has to stay in the foreground, and it drains battery. For a phone library, a native app that processes in bulk is a much better fit.
What happens to the audio?
It is copied across untouched, not re-encoded — including 5.1 surround tracks. That keeps the soundtrack exactly as it was, and it also means the entire size reduction comes from the video. On a clip that is mostly speech at a low bitrate, audio may end up a noticeable share of the compressed file.
How do I compress a lot of videos at once?
Not here — this tool intentionally does one file at a time. On iPhone, Photo Slim scans your whole library, shows the estimated saving for each video before anything is touched, and compresses in bulk on-device, moving each original to Recently Deleted where it stays recoverable for 30 days.
Related reading
AskClean Team · Updated 2026-08-12