🎬 Video Tools

Compress Video

Shrink an MP4, MOV, MKV, WebM or AVI right in your browser — pick a quality level and optionally a smaller resolution, and get a lighter MP4 that still plays everywhere. Nothing is uploaded; your video is compressed on your own device.

In short: drop a video below, pick Balanced or name a size to fit under, and press Compress. It re-encodes to a smaller H.264 MP4 using your device’s own video hardware where the browser exposes it. Free, no watermark, and nothing is uploaded.

Is it really free, with no watermark?
Yes. No signup, no account, no daily cap and nothing added to the picture. The compression runs in your browser rather than on a server, so there is nothing to meter.
Is my video uploaded anywhere?
No. It is encoded on your own device, so the file never leaves it. That also means no queue, no waiting for an upload, and no size cap imposed by somebody’s server.
Can I hit an exact file size?
Yes. Switch to To a file size, name a number, and the tool works backwards from your clip’s length — then measures what it produced and re-encodes if it landed over.
How much smaller will it get?
Usually 40–80%. Phone and screen-recorder clips shrink most because they are stored at a far higher bitrate than they need. Dropping 1080p to 720p roughly halves it again.
How long does it take?
On most current browsers, a fraction of the clip’s own length — it drives the same H.264 hardware your phone records with. The software fallback is far slower and says so before it starts.
What will it not do?
Trim, crop, rotate, change the frame rate, or output anything but MP4. Those are listed row by row in the capabilities table rather than glossed over.
🎬
Drop a video here or tap to browse
MP4, MOV, MKV, WebM, AVI · short clips work best · nothing uploaded

How it works, and which encoder you get

Everything happens on your device — nothing is uploaded, so even sensitive footage stays private. Behind the button the tool picks the best encoder your browser offers. First choice is WebCodecs, which drives the same H.264 hardware your phone uses to record video and is not tied to playback speed, so a clip usually compresses in a fraction of its own length. If WebCodecs is missing, it records through that hardware in real time instead — a ten-minute clip then takes about ten minutes. Only when neither is available does it fall back to FFmpeg compiled to WebAssembly, which encodes in software: a one-time ~25 MB download and several minutes for a clip the hardware would finish in seconds. All three produce H.264 in an MP4, and the note under the button says which one ran.

The order matters more than it looks. A failure anywhere in that chain falls through to the next engine rather than failing the job, so a browser that cannot do the fast thing gets a slower conversion instead of an error — and a regression in the fast path costs speed, not your video.

What a size target guarantees

There are two ways to drive it. By quality picks a bitrate for you — Light stays close to the original, Balanced is the sweet spot for sharing, Strong and Extreme trade visible detail for the smallest files. Balanced is the default, with one exception: if your clip is already efficiently encoded — anything re-encoded once already, or exported by an editor — Balanced would barely dent it, so the tool starts you on the first level that actually makes it smaller and tells you it did. To a file size works backwards from a number: name 20 MB for Discord or 25 MB for email and the tool divides that budget across the clip’s length, reserving a slice for audio so the soundtrack never eats the picture.

A size target is only worth something if it is kept, and this is the part most tools get wrong. The first pass is an estimate — how many bits a clip really needs depends on how much it moves, and a static screen recording and a handheld pan differ by several times at the same setting. So the tool measures the file it produced and re-encodes at a corrected bitrate if it came out over, up to two extra passes. If a size genuinely cannot be reached without turning the video to mush, it says so before encoding rather than handing you a smear afterwards.

Two smaller promises come with it. The target is a ceiling, not a quota: a clip that already fits is left alone rather than inflated to fill the number. And the output is capped at the source bitrate, so a compressor can never hand you back something larger than you gave it.

Capabilities at a glance

What this tool does and does not do, stated plainly. The “No” rows are the point, not an omission.

CapabilitySupportedDetail
Input
MP4, MOV, MKV, WebM, AVI, M4VYesAnything your browser can decode.
File size limitNoThere is no server to protect, so nothing is capped by us.
Long clipsYesBounded by your device, not by a plan — see the speed section.
Several videos at onceNoOne clip at a time; the encoder wants the whole device.
Controls
Target file sizeYesName a size and the output is measured against it.
Quality levelsYesLight, Balanced, Strong, Extreme.
Resolution downscaleYes1080p, 720p or 480p, or keep the original.
Remove the audio trackYesA checkbox; useful when a target is tight.
Compress moreYesOne more real step on the same clip, after a weak result.
TrimmingNoUse our video trimmer first, then compress.
Frame rate controlNoThe source frame rate is kept.
Crop, rotate or filtersNoThis tool only changes size, never the picture.
Output
MP4, H.264 video, AAC audioYesPlays on every device, browser and platform.
Never larger than the inputYesCapped at the source bitrate, so it cannot inflate.
WebM, AV1, HEVC or GIF outNoH.264 in MP4 only — it is the format everything accepts.
WatermarkNoNothing is added to the picture.
How it runs
Nothing is uploadedYesThe clip is encoded on your device and never sent anywhere.
Signup or daily limitNoThere is no account and no quota.
Offline useNoThe page loads from the network; the software fallback also fetches an engine.
APINoThis is a page, not a service.

Platform limits, and the Discord one that is not fixed

Checked 19 September 2026. These move, so treat the date as part of the fact.

Where you are sending itLimitThe catch
Discord (free)10–25 MBDocumented at 20 MB, but rolled out in stages — see below. 10 MB always works.
Discord Nitro Basic50 MB
Discord Nitro500 MB
WhatsApp (as video)16 MBSent as a document instead it goes to 2 GB, but it will not preview.
Gmail25 MB statedReally about 18 MB of file: attachments are base64-encoded in transit, which inflates them by roughly a third.
Outlook.com20 MBSame base64 inflation — budget about 15 MB of actual file.
Slack1 GB per fileOn every plan. The free plan limits total storage instead, so a big clip is accepted and then eats into it.

Discord is the one worth reading twice. The free limit is documented as 20 MB, raised from 10 MB in August 2026 — but it has been rolled out to slices of accounts rather than switched on for everybody, so some people still hit 10 MB and some see 25 MB. Most guides print a single number and leave you to discover which one you have when the upload fails. If the clip is for someone else, or you have not checked your own account, compress to 10 MB and it will go through regardless. The presets offer both.

The email numbers have a different catch: attachments are base64-encoded in transit, which inflates them by about a third. Gmail’s stated 25 MB is therefore roughly 18 MB of actual file, and a 20 MB cap is about 15 MB. Aim at the smaller number — that is what the Email preset already does.

Where the savings come from

Most of it comes from two places. First, phone and screen-recorder videos are stored at a much higher bitrate than they need — the device is encoding in real time with no chance to think about it — so simply re-encoding them carefully shrinks the file a lot with no visible cost. That is why a clip straight off a phone typically loses 40–80% and an already-exported edit loses far less.

Second, dropping the resolution roughly halves the pixel count and the size again. 1080p to 720p is usually invisible on a phone screen, which is where most shared video is watched. If a size target is out of reach, that step buys more room than any quality setting will.

What suffers first is fast motion and fine texture — a handheld pan across foliage, confetti, rain. A talking head, a screen recording or a static product shot survives far harder settings, which is why a single “how much will I lose” number would be misleading and the estimate is shown against your own clip instead.

Where your video goes

Nowhere. There is no upload step: the encoding runs in the browser, on your device, and the page contains no code that could send a video anywhere. You can check that in the Network tab — the only requests are for the page itself and, on the software fallback only, the FFmpeg engine from a CDN. Our analytics and ad scripts load as they do on any page and see the page view, never the file.

The practical effects are worth naming, because they are the reason to prefer this over an upload-based compressor: there is no upload wait, which on a long clip is usually most of the time; there is no size cap, because the caps on those sites exist to protect their bandwidth; and nothing of yours is sitting on a server afterwards waiting to be deleted. We are not the only tool that works this way — a handful of browser-based compressors now exist — and the honest trade against a server is that a real CPU can run slower, higher-quality encoder settings than a browser will. For an archival master, a desktop tool like HandBrake still wins.

Frequently asked questions

Yes. Switch to To a file size, then either tap a preset — Discord 20 MB, Discord safe 10 MB, WhatsApp 16 MB, email 25 MB, Nitro 50 MB, Roomy 100 MB — or type any size you like. The tool works out the bitrate from your clip’s length, checks the file it produced, and re-encodes at a corrected bitrate if it landed over. The number you type is a ceiling, not a goal: a clip that is already smaller is left alone.
Add the clip, choose To a file size, tap a Discord preset and compress. Check which limit your own account has first — Discord has been rolling the larger cap out in stages, so 20 MB is the documented free limit but some accounts still see 10 MB and some see 25 MB. If you are sending to someone else, or you are not sure, the 10 MB preset is the one that always works. If the estimate says a size is not reachable, drop to 720p or 480p, tick Remove audio track, or trim the clip first.
Usually 40–80% smaller. Videos from a phone or screen recorder shrink the most because they are stored at a much higher bitrate than they need. Lowering the resolution too (1080p to 720p, say) can cut the size by another half, and on a phone screen that step is usually invisible.
Some quality is traded for size — that is what compression is — but Balanced is visually close to the original for most footage. Use Light to stay near-original, or Strong and Extreme when small size matters more than fine detail. Fast motion and fine texture are what suffer first; a talking head or a screen recording survives far harder settings than a handheld pan.
No. It is encoded inside your browser tab — by your device’s own video encoder where the browser exposes one, and by FFmpeg compiled to WebAssembly otherwise. The video never leaves your device, so there is no upload wait, no server-imposed size cap, and nothing of yours to delete afterwards. We are not the only tool that works this way; what differs is the verified size target and that there is no watermark or account.
Two practical reasons and one principle. You skip the upload entirely, which on a long clip is often most of the wait; and there is no file-size cap, because the cap on those sites exists to protect their bandwidth, not yours. The principle is that a file you never send cannot be kept. The honest trade is that a server with a real CPU can run slower, higher-quality encoder settings than a browser will, so for archival masters a desktop tool like HandBrake still wins.
On the hardware paths, length matters far more than file size, and a clip takes roughly as long as it runs at worst. On the software fallback keep to a few minutes: large files can exhaust the browser’s memory, and the fix is to lower the resolution or trim the clip rather than to retry the same thing.
MP4, MOV, MKV, WebM, AVI and M4V go in — anything your browser can decode. The output is always MP4 with H.264 video and AAC audio, which plays virtually everywhere: every phone, every browser, Discord, WhatsApp, email, Slack and every social platform.
Because the point of compressing a clip is almost always to send it somewhere, and H.264 in an MP4 is the one combination every destination accepts. AV1 and HEVC compress better at the same quality, but support for encoding them in a browser is patchy and a file the recipient cannot open is not a smaller file, it is a broken one. If you specifically want another container, use the format converter instead.
With WebCodecs — the path most current browsers take — compression is not tied to playback, so a clip normally finishes well inside its own running time. Without it the tool records through the same hardware in real time, so a 40-second video takes about 40 seconds and the bar counts down. The software fallback is the slow one: a one-time ~25 MB engine download and several minutes for the same clip. Keep the tab open while either of the slower paths runs.
Whichever is fastest and available, decided for you: WebCodecs first, then MediaRecorder driving the same hardware in real time, then FFmpeg in WebAssembly. The note under the button tells you which one ran, and a failure in one falls through to the next rather than failing the whole job — so a regression in the fast path costs speed, not the conversion.
Press Compress more. It takes exactly one real step — the next quality level, or the next resolution down once the levels are exhausted — and re-runs on the same clip, moving the visible setting so the page never lies about what ran. A clip that was already efficiently encoded (anything an editor exported, or that has been compressed once already) has much less to give, which is also why the tool may start you on a stronger level than Balanced.
Yes, and the fast paths are the ones phones have — the H.264 encoder in a modern phone is a dedicated piece of hardware. Keep the tab in the foreground while it works. If your clip is 4K, choose 1080p or 720p as well: a phone re-encoding 4K at full size is where memory runs out on the software fallback.
Yes. The output is H.264 video with AAC audio in an MP4, which is exactly what those players expect. There is no watermark and no metadata added. If a platform still refuses it, the reason is the size rather than the format — check the limits table above.
Not from cold: the page has to load, and the software fallback fetches its engine the first time it is needed. Once the page is loaded, the compression itself needs no network at all.
No — one clip at a time. Video encoding wants the whole device, and running several at once on a phone is how a browser tab gets killed mid-job. Compress them one after another; the settings stay where you put them between runs.

Related tools