Compress video online free — squish MP4, MOV, MKV and more

Pick a compression level, or type an exact size — 16MB for WhatsApp, 25MB for email. No app to install.

Free foreverNo file limitNo watermark

Drag & drop a video, or

MP4, MOV, MKV, AVI supported

Your video never leaves your device. Keep this tab open and active while it processes for the fastest speed.
Found this useful? Share it

How to compress a video online in 3 steps

SquishyFile is a free video file compressor that runs entirely inside your browser — drop in a file, pick how small you want it, download the result. It works as a straightforward video file size reducer: depending on the setting, it can shrink video file sizes by anywhere from half to well over ninety percent. There's no account, no install and no upload queue, because the compression happens on your own device rather than on a server. If you want the technical version of why that's possible now, I wrote up how browser-based compression actually works.

1.Choose your video

Drag a file into the box above, or click to browse. MP4, MOV, MKV, AVI, WebM and most other common formats are supported.

2.Set compression level or target size

Slide toward "Max squish" for the smallest file, or switch to the target size field if you need to hit an exact number of MB — for email, Discord, WhatsApp or any other upload limit.

3.Hit Squish and download

When it's done, download the compressed MP4 directly. Compress video free, with no file-size cap, no watermark and no limit on how many videos you run through it.

Compress MP4, MOV, MKV, AVI and WebM

As a video compression tool, SquishyFile reads pretty much anything a camera, phone or screen recorder produces, and always exports a widely-compatible H.264 MP4 — so whatever goes in, what comes out plays everywhere. You compress video online here without anything being uploaded, which is the part that surprises people.

MP4: reduce MP4 file size without changing format

MP4 is what most video already is, and it's the most common reason people land here. Used as an MP4 compressor, SquishyFile re-encodes the video stream at a lower bitrate and hands back another MP4 — same format, same filename extension, smaller file. If all you need is to reduce MP4 file size before an upload, that's exactly what the default compression level does, no settings to change — and the same applies if you simply want to reduce video file size across a mixed folder of formats.

MOV: compress MOV files from iPhone and cameras

MOV is Apple's QuickTime container — the default for iPhone recordings, Mac screen captures and a lot of mirrorless camera footage. It's also where file sizes get out of hand fastest. As a MOV compressor, SquishyFile does two jobs in one pass when you compress a MOV file: it shrinks the file and exports it as MP4, so a clip that was both too big and awkward to open on Windows comes out smaller and universally playable. More on that trade-off in MOV vs MP4 explained.

MKV, AVI, WebM and older formats

Less common containers work the same way. Compress MKV files from a desktop recorder, compress AVI clips out of an old camcorder archive, or compress WebM files pulled off the web — all of them go in, and an MP4 comes out. The one thing that changes is which engine handles the job, which is worth understanding if a file feels unusually slow.

The two engines that do the compressing

SquishyFile runs two different compression engines, and which one handles your file depends on its container, not on which browser you're using. MP4, MOV, MKV, WebM and most other modern containers go through the fast path: your own browser's built-in WebCodecs encoder, running directly on your device's CPU — or GPU, where the browser can use hardware acceleration. This is why a typical phone clip compresses in seconds. Chrome, Edge and Safari all ship this the same way, so the fast path isn't a Chromium-only thing.

A shorter list of older or less common formats — AVI, WMV, FLV, older MPEG-1/2 files, RealMedia, some old 3GP and TS variants — can't be decoded by any browser's built-in tools at all. For those, SquishyFile falls back to a second engine: a full software video compressor (FFmpeg) compiled to run in the browser via WebAssembly. It still never leaves your device, but it's noticeably slower, and the first time you compress one of these formats in a given browser it needs a one-time ~32MB download — cached afterward, so it only happens once. The one real per-browser wrinkle isn't about video at all: Firefox's encoder handles video fine but has no AAC audio encoder, so SquishyFile quietly switches the audio track to Opus there instead — you won't notice unless you go looking for it.

Reduce video size without losing quality

The compression level slider is your shortcut to the trade-off video engineers call CRF (Constant Rate Factor) — how much detail to discard in exchange for a smaller file. "Light" keeps quality close to the original and mostly trims redundant data, which is the setting to reach for if you want to compress video without losing quality that's visible on a phone or laptop screen. "Max squish" pushes size down as far as it can go while keeping the result watchable, which is what you want for a compress large video file situation like a long screen recording or a 4K clip that's grown to several gigabytes. For the technical details, see my guide to how compression level, bitrate and resolution work.

There's no such thing as truly lossless video compression once you re-encode a video — some data always gets discarded — but SquishyFile's lighter settings get close enough that most people can't tell the difference by eye. If a compressed file still looks soft, try re-running it from the original at a lighter setting rather than compressing the already-compressed copy again, since each re-encode compounds quality loss a little more — see my guide to how many times you can re-compress a video before it becomes visible.

Not sure which setting to reach for? Here's roughly what each one trades off:

LevelWhat it doesBest for
LightTrims redundant data, keeps quality close to the original fileClips you'll rewatch, print, or re-edit later
Balanced (mid-slider)Noticeably smaller, with quality differences mostly invisible on a phone or laptop screenEveryday sharing — socials, cloud backup, chat apps
Max squishPrioritizes the smallest possible file size over fine detail, capping resolution at 720pLong recordings, screen captures, or clearing a strict upload limit

Compress video to an exact size — 10MB, 25MB or 50MB

Picking a quality slider and hoping for the best doesn't help much when the thing you actually need is a video under 25MB for an email attachment or under 20MB for a Discord upload. SquishyFile's target size field flips the problem around: enter the size you need in MB, and it works out the compression required to get there — no guesswork, no re-exporting five times to land under a limit by chance. Switch to it any time instead of the compression level slider — tap one of the platform presets below the field, or type your own number:

PresetTarget sizeNotes
WhatsApp16MBSent as a "document" instead of a video, the same file can go up to 2GB with no compression at all.
Discord (free)20MBDoubled from 10MB in 2026. The Discord video compressor shows only Discord's tiers.
Messenger / Gmail25MBCovers most email inboxes and Facebook Messenger's attachment cap.
Discord Nitro Basic50MBFor servers where you or the recipient has Nitro Basic.
LinkedIn200MBLinkedIn's native video upload limit.
Discord Nitro500MBFull Nitro's upload cap.
TikTok500MBTikTok's upload limit for standard video posts.

Limits like these change more often than you'd expect, so these presets get updated when a platform's do — type your own number any time you need something the presets don't cover, like compress video to 10MB for a strict form upload, or compress video to 25MB for an inbox that rejects anything over the line.

Still need a video under 8MB, Discord's old free limit? The 8MB video compressor has the target pre-set, plus a table of how long an 8MB clip can be at each resolution before it starts to look rough.

One thing worth knowing: the same target size behaves very differently depending on how long the video is. A 10-second clip has a lot of bitrate to work with at 25MB, so it can stay close to full quality. A 10-minute recording squeezed into the same 25MB has to spread that budget much thinner, so expect a more visible drop in sharpness — if the platform allows it, giving a long video a slightly higher target size preserves noticeably more detail. A rough rule of thumb worth knowing if you ever do the math by hand: part of a target bitrate always has to go to audio — usually somewhere between 24 and 128kbps depending on how tight the overall budget is — so a target computed from video alone comes out smaller than expected once sound is added back in. SquishyFile accounts for this automatically.

Need to batch compress video for a project — a folder of clips that all have to land under the same limit? Nothing gets re-uploaded between files, so the workflow stays quick: compress and download one, then drop in the next. Your target size stays set until you change it, so every file in the batch gets squished to the same number without re-entering it each time.

Compress video for email, WhatsApp and Instagram

Most people don't want a smaller video in the abstract — they want one that a specific app will finally accept. Each platform enforces a different cap, and the fastest route is almost always to type that number into the target size field rather than guessing at a quality level.

To compress video for email, 25MB is the safe number — it clears Gmail, Outlook and most corporate inboxes, and it's also Facebook Messenger's attachment cap. To compress video for WhatsApp, 16MB keeps the file sendable as a normal video; anything larger has to go as a document instead, which skips WhatsApp's own re-compression entirely and is often the better choice for quality. For Discord, the Discord video compressor has only the Free, Nitro Basic and Nitro presets, plus how long a clip each limit can hold. To compress video for YouTube, there's no practical size limit to clear — but a smaller upload finishes faster on a slow connection. To compress video for Instagram, TikTok or a Reels upload, size is rarely the blocker — length and aspect ratio are — but a smaller file still uploads faster and gives the platform's own encoder a cleaner source to work from.

That last point matters more than most people realize: nearly every platform re-compresses your video after you upload it, so handing it a well-compressed file instead of a bloated one usually produces a better final result, not a worse one. The exception is YouTube, which is built to work from large high-quality sources — there, compressing first costs you. I unpacked which platforms do what in why apps compress your video after you send it, and if a file still won't go through after shrinking it, videos that won't send on email or WhatsApp covers the other common causes.

Compress video on iPhone and iPad

SquishyFile works the same way in Safari on iPhone as it does anywhere else — no separate app, no App Store download. Open this page, tap to pick a video straight from Photos, set a compression level or a target size, and save the result back to Photos or Files when it's done.

iPhone video runs large mainly because of what the camera defaults to — HEVC (H.265) at 4K, Cinematic mode's extra depth data, ProRes, and slow-motion's higher frame rate can all multiply file size well past a standard clip, even though it looks identical in Photos. For an exact number instead of a quality guess — under 25MB for email, 16MB for WhatsApp, or any other limit — use the target size field above.

SquishyFile isn't the only route. Mail's own attachment options, the Shortcuts app's built-in "Compress Video" action, and a pile of App Store apps all do a version of this, each with its own catch. I compared all four properly in how to compress a video on iPhone — including when the built-in options are genuinely the faster choice.

Compress video on Android, Windows and Mac

Because everything runs in the browser, the device barely matters. On Android, Chrome handles the fast WebCodecs path natively — tap to pick a clip from your gallery, set a size, and the compressed MP4 lands in Downloads. That's usually quicker than installing a video compressor app that wants storage permissions and shows an ad between every export.

On Windows, SquishyFile works in Chrome, Edge and Firefox without an installer, which is the main reason to reach for it over a desktop tool for a one-off file — nothing to download, nothing to uninstall afterward. To compress video on Mac, Safari and Chrome both work, and unlike most desktop compressors there's no separate Apple Silicon build to hunt down. A Chromebook, an iPad, a locked-down work laptop where you can't install software at all — same page, same result.

The practical limit isn't the operating system, it's the hardware: a several-gigabyte 4K file on an old phone will take a while and use real battery, because the encoding genuinely happens on that device. Keep the tab open and in the foreground while it works — browsers throttle background tabs hard, and that's the single most common reason a compression job feels stuck.

A free alternative to Handbrake — no install needed

Handbrake is powerful, and for anyone compressing video daily it's still the right tool. But it's a desktop application: you download it, install the platform-specific build, and work through a settings panel full of presets, containers and encoder options before your first export finishes. SquishyFile is built for the opposite kind of moment — you have one video, you need it smaller, and you'd rather not learn a new piece of software to do it.

That makes it a practical free alternative to Handbrake for occasional jobs, on any device, with no separate macOS or Windows build to install. If you'd rather stick with Handbrake, I wrote the settings guide I wish existed: Handbrake compression settings explained covers CRF, presets and hitting a target size with a two-pass encode. And if you're specifically looking to replace it, the best online Handbrake alternatives compares the realistic options.

Best free video compressor: how SquishyFile compares

Most "best free video compressor" lists compare features. The more useful question is where the compression actually happens, because that one decision drives everything else — speed, privacy, file-size caps and whether you end up with a watermark.

ApproachExamplesTrade-off
Browser-based (on your device)SquishyFileNo upload, no queue, no size cap; speed depends on your own hardware
Upload-based online toolsClideo, VEED, FreeConvert, Media.ioConvenient and hardware-independent, but your file leaves your device and free tiers commonly cap size, add watermarks or require an account — check the current terms of whichever you use
Desktop appsHandbrake, VLC, Shutter EncoderThe most control and the best quality per megabyte, at the cost of an install and a learning curve
Built-in phone toolsiOS Mail attachment sizes, ShortcutsAlready on the device, but only work inside one app and give almost no control over the result

SquishyFile's position is deliberate: browser convenience with desktop-app mechanics. No install, no upload, no queue, no watermark, no file-size cap and no sign-up — the trade-off you accept in exchange is that a very large file compresses at whatever speed your own machine manages.

Limits worth knowing before you compress

SquishyFile is honest when a request doesn't quite add up, rather than silently handing back a broken file. A few things worth knowing: if your target is already bigger than the source, there's nothing to squish — SquishyFile tells you and leaves the file alone instead of pretending to compress it. A very tight target on a long or high-motion clip has to spend its bit budget somewhere — SquishyFile protects audio first, so quality loss shows up as blur, blockiness or a lower frame rate in the picture before the sound suffers. Resolution and frame rate only step down automatically when the target bitrate genuinely can't hold detail at the source size, otherwise your video keeps its original dimensions. And in a genuinely tiny budget — well under a megabyte for a full clip — there may not be room left for an audio track at all, so SquishyFile drops it rather than encoding sound so degraded it isn't worth keeping.

Frequently asked questions

How do I compress a video to 10MB?

Switch to the target size field, type 10, and hit Squish — SquishyFile works out the bitrate needed to land there. Short clips hold up well at 10MB; a long recording squeezed into the same number will look noticeably softer, so raise the target if the platform allows it.

How do I make a video smaller without an app?

Open this page, drop the file in, and pick a compression level — or type the size you need. It runs in the browser, so there's nothing to install on any device.

How do I compress a MOV file?

Drop it in like any other video. MOV goes through the fast browser path, and the output comes back as an MP4 — so the file gets smaller and more widely playable in the same pass.

How do I compress a video on Android?

Open this page in Chrome, tap to pick a clip from your gallery, set a compression level or target size, and the compressed MP4 saves to Downloads. No app install and no storage permissions needed.

Can I compress a 4K video?

Yes, and 4K is where compression pays off most. Expect it to take longer than a 1080p clip, since the encoding runs on your own device — keep the tab in the foreground while it works.

Is there a free alternative to Handbrake?

SquishyFile covers the common case — shrink a file, optionally to an exact size — with no install. Handbrake still wins when you need frame-level control over encoder settings; see my comparison of the realistic alternatives.

What video formats can I upload?

MP4, MOV, MKV, AVI, WebM and most other common formats. The compressed output is always exported as MP4 for the widest compatibility.

Is this a video resizer or a video size reducer?

A size reducer — SquishyFile shrinks your file's storage size (MB), not its resolution or aspect ratio. The video keeps its original dimensions; only the exported file gets smaller. If you need to change the actual width or height, that's a separate step this tool doesn't do.

Is there a limit on file size, and do I need an account?

No to both. There's no file-size cap, no limit on how many videos you compress, no watermark, no sign-up and nothing to install — and because compression runs in your browser, no byte of your video is uploaded anywhere.

Will compressing my video reduce its quality?

A little, like any compression, but the "Light" setting is built to keep the difference hard to notice. Use the slider to trade size for quality however suits the video. Compressing the same file repeatedly does compound the loss — see how many times you can re-compress a video before it becomes visible.

Does compressing remove the date or location info on my iPhone video?

No. SquishyFile changes the video and audio data to shrink the file — it doesn't strip the metadata Photos uses to sort and locate your library.

Does target size override the compression level slider?

Yes. As soon as you enter a target size, SquishyFile uses that instead of the compression level slider to decide how much to compress.

What if my target size is too small for decent quality?

Very aggressive targets — trying to compress a long, high-motion clip under 25MB, for example — can visibly reduce quality. SquishyFile keeps audio intelligible first, so an extreme target shows up as blurring, blockiness or a lower frame rate before the sound suffers. If the result looks too compressed, try a slightly higher target size.

Why did my file end up slightly over or under my target?

Compression isn't perfectly exact, since scene complexity affects how much a given bitrate actually weighs. SquishyFile aims a little under your target to leave a safety margin — if it's still off, try compressing again at a slightly lower size.

Why does it say the file doesn't contain a video track?

SquishyFile can only compress files with an actual video stream inside them. An audio-only file, or a corrupted or unusual container it can't parse, gets flagged rather than silently failing or handing back a broken file.

Video still won't send after compressing?

A size limit isn't the only reason a video fails to send — see my guide to fixing videos that won't send on email or WhatsApp for the other common causes.