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 inside your browser. You drop in a file, pick how small you want it, and download the result. Depending on the setting, it cuts a video's file size by anywhere from half to more than ninety percent. You don't create an account, install anything or wait in an upload queue, because the compression happens on your own device instead of on a server. If you want to know why a browser can do this now, I wrote up how browser-based compression 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 work.

2.Set compression level or target size

Slide toward "Max squish" for the smallest file. If you need to land under an exact number of MB for email, Discord or WhatsApp, switch to the target size field instead.

3.Hit Squish and download

When the bar finishes, download the compressed MP4. You can run as many videos through it as you want, and I don't add a watermark.

Compress MP4, MOV, MKV, AVI and WebM

SquishyFile reads almost anything a camera, phone or screen recorder produces, and it always exports an H.264 MP4. Whatever format goes in, you get a file that plays on every phone, laptop and TV.

MP4: reduce MP4 file size without changing format

Most video already is MP4, so this is the most common case. As an MP4 compressor, SquishyFile re-encodes the video stream at a lower bitrate and gives you back another MP4 with the same extension and a smaller size. If all you need is to reduce MP4 file size before an upload, the default compression level does that without touching any setting. The same default works when you want to shrink a mixed folder of formats.

MOV: compress MOV files from iPhone and cameras

MOV is Apple's QuickTime container. iPhones, Mac screen recordings and many mirrorless cameras save to it, and it's where file sizes grow fastest. When you use SquishyFile as a MOV compressor, it does two jobs in one pass: it shrinks the file and exports it as MP4. A clip that was too big and also awkward to open on Windows comes out smaller and playable everywhere. I cover the trade-off in MOV vs MP4 explained.

MKV, AVI, WebM and older formats

Less common containers work the same way. You can compress MKV files from a desktop recorder, compress AVI clips from an old camcorder archive, or compress WebM files saved from the web, and each one comes back as an MP4. What changes is the engine that does the work, and that matters if a file feels slow.

The two engines that do the compressing

SquishyFile has two compression engines, and the container of your file decides which one runs, not your browser. MP4, MOV, MKV, WebM and most other modern containers take the fast path: the browser's built-in WebCodecs encoder, running on your CPU or on your GPU when the browser supports hardware acceleration. That's why a typical phone clip finishes in seconds. Chrome, Edge and Safari all ship WebCodecs, so the fast path works outside Chromium too.

No browser can decode a handful of older formats on its own: AVI, WMV, FLV, old MPEG-1 and MPEG-2 files, RealMedia, and some 3GP and TS variants. For those, SquishyFile switches to FFmpeg compiled to WebAssembly. The file still stays on your device, but this engine is slower, and the first time you use it in a browser it downloads about 32MB once and caches it. Firefox has one quirk of its own: its encoder handles video fine but has no AAC audio encoder, so SquishyFile writes the audio as Opus there. The video plays the same, and most people never notice.

Reduce video size without losing quality

The compression level slider controls what video engineers call CRF (Constant Rate Factor): how much detail the encoder throws away in exchange for a smaller file. "Light" keeps the picture close to the original and mostly trims redundant data. Pick it when you want to compress video without losing quality you could see on a phone or laptop. "Max squish" pushes the size as low as it can while keeping the video watchable. Pick it to compress a large video file such as a long screen recording or a 4K clip that has grown to several gigabytes. For the details, read my guide to how compression level, bitrate and resolution work.

Truly lossless video compression doesn't exist once you re-encode, because every encode discards some data. The lighter settings get close enough that most people can't spot the difference by eye. If a compressed file looks soft, run the original again at a lighter setting instead of compressing the compressed copy. Every re-encode adds a little more loss, and I explain how fast it adds up in how many times you can re-compress a video.

Here's roughly what each setting trades:

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 squishGoes for the smallest file over fine detail and caps resolution at 720pLong recordings, screen captures, or clearing a strict upload limit

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

A quality slider doesn't help much when you need a video under 25MB for an email or under 20MB for Discord. The target size field turns the problem around. You type the size you need in MB, and SquishyFile works out the compression that gets there, so you don't re-export five times hoping to land under the limit. Use it instead of the slider whenever you have a number to hit. Tap one of the platform presets under the field, or type your own:

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.

Platforms change these limits more often than you'd expect, and I update the presets when they do. For anything the presets don't cover, type your own number: compress video to 10MB for a strict form upload, or compress video to 25MB for an inbox that bounces anything over the line.

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

The same target behaves very differently depending on the video's length. A 10-second clip has plenty of bitrate at 25MB and can stay close to full quality. A 10-minute recording squeezed into the same 25MB spreads that budget much thinner, so it will look softer. If the platform allows it, a slightly higher target keeps a lot more detail on a long video. If you ever do the math by hand, remember that part of the budget always goes to audio, usually 24 to 128kbps depending on how tight the target is. A target worked out from the video alone comes out too big once the sound is added back. SquishyFile subtracts the audio for you.

Need to batch compress video for a project, with a folder of clips that all have to fit the same limit? Compress and download one, then drop in the next. Nothing uploads between files, and the target size stays set until you change it, so every clip lands on the same number without retyping it.

Compress video for email, WhatsApp and Instagram

People rarely want a smaller video for its own sake. They want a file that one specific app will finally accept. Each platform has its own cap, and the quickest fix is to type that number into the target size field instead of guessing at a quality level.

To compress video for email, use 25MB. It clears Gmail, Outlook and most work inboxes, and it matches Facebook Messenger's attachment cap. To compress video for WhatsApp, 16MB keeps the file sendable as a normal video. Anything bigger has to go as a document, which skips WhatsApp's own re-compression and often looks better anyway. For Discord, the Discord video compressor has the Free, Nitro Basic and Nitro presets and shows how long a clip each limit can hold. To compress video for YouTube, you have no practical size limit to clear, though a smaller file uploads faster on a slow connection. To compress video for Instagram, TikTok or Reels, size is rarely the problem. Length and aspect ratio are. A smaller file still uploads faster and gives the platform's encoder a clean source.

Almost every platform re-compresses your video after upload, so a well-compressed file often ends up looking better than a bloated one. YouTube is the exception: it works best from a large, high-quality source, and compressing first costs you there. I listed which platforms do what in why apps compress your video after you send it. If a file still won't go through after you shrink it, videos that won't send on email or WhatsApp covers the other usual causes.

Compress video on iPhone and iPad

SquishyFile works in Safari on iPhone exactly as it does on a computer, with no app to install. Open this page, tap to pick a video from Photos, set a compression level or a target size, and save the result back to Photos or Files.

iPhone video runs large because of the camera's defaults. HEVC (H.265) at 4K, Cinematic mode's depth data, ProRes and slow motion's higher frame rate can each multiply a clip's size, even though it looks the same in Photos. If you need a specific number, like 25MB for email or 16MB for WhatsApp, use the target size field above.

You have other options on iPhone too. Mail's attachment sizes, the Shortcuts app's "Compress Video" action and plenty of App Store apps all shrink video, and each has its catch. I compared all four in how to compress a video on iPhone, including the cases where a built-in option is the faster choice.

Compress video on Android, Windows and Mac

Because the work happens in the browser, the device barely matters. On Android, Chrome runs the fast WebCodecs path. 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 asks for storage permission and shows an ad after every export.

On Windows, SquishyFile works in Chrome, Edge and Firefox with no installer, which is the main reason to use it over a desktop program for a one-off file. To compress video on Mac, use Safari or Chrome. You don't have to hunt for an Apple Silicon build the way you do with some desktop compressors. A Chromebook, an iPad, or a locked-down work laptop where you can't install software all get the same page and the same result.

The real limit is the hardware, not the operating system. A multi-gigabyte 4K file on an old phone takes a while and uses real battery, because that phone does the encoding. Keep the tab open and in the foreground while it works. Browsers throttle background tabs hard, and that is the most common reason a job looks stuck.

A free alternative to Handbrake, no install needed

Handbrake is powerful, and if you compress video every day it's still the right tool. It's also a desktop application. You download it, install the build for your system, and work through presets, containers and encoder options before your first export finishes. I built SquishyFile for the opposite moment: you have one video, you need it smaller, and you don't want to learn new software to do it.

That makes it a practical free alternative to Handbrake for occasional jobs on any device. If you'd rather stick with Handbrake, I wrote the guide I wanted when I started: Handbrake compression settings explained covers CRF, presets and hitting a target size with a two-pass encode. If you want 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. I think the better question is where the compression happens, because that one choice decides speed, privacy, size caps and whether you get a watermark.

ApproachExamplesTrade-off
Browser-based (on your device)SquishyFileFiles stay on your device and skip the queue; any size works, but speed depends on your own hardware
Upload-based online toolsClideo, VEED, FreeConvert, Media.ioConvenient and independent of your hardware, but the file leaves your device, and free tiers often cap size, add watermarks or ask for an account. Check the current terms of the one 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 they only work inside one app and give almost no control over the result

I built SquishyFile to sit between the browser tools and the desktop apps: the convenience of a web page with the encoding of a desktop program. You don't install anything, you don't wait behind other people's uploads, and I don't add a watermark or cap the file size. The trade-off is speed: a very large file compresses only as fast as your own machine can go.

Limits worth knowing before you compress

When a request doesn't add up, SquishyFile tells you instead of handing back a broken file. If your target is already bigger than the source, there's nothing to squish, so it says so and leaves the file alone. A very tight target on a long or high-motion clip has to cut somewhere. SquishyFile protects the audio first, so the loss shows up in the picture as blur, blockiness or a lower frame rate before the sound suffers. Resolution and frame rate only step down when the target bitrate can't hold detail at the original size. Otherwise the video keeps its dimensions. In a tiny budget, well under a megabyte for a whole clip, there may be no room for an audio track at all. SquishyFile drops the audio in that case instead of encoding sound too degraded to be 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 size will look 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 you install nothing on any device.

How do I compress a MOV file?

Drop it in like any other video. MOV takes the fast browser path and comes back as an MP4, so the file gets smaller and plays in more places 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. You don't install an app or grant storage permissions.

Can I compress a 4K video?

Yes, and 4K is where compression saves the most space. It takes longer than a 1080p clip because your own device does the encoding, so keep the tab in the foreground while it works.

Is there a free alternative to Handbrake?

SquishyFile covers the common job, shrinking a file and optionally hitting an exact size, with no install. Handbrake still wins when you need fine control over encoder settings. My comparison of the realistic alternatives goes through the options.

What video formats can I upload?

MP4, MOV, MKV, AVI, WebM and most other common formats. The compressed file always comes out as MP4 so it plays everywhere.

Is this a video resizer or a video size reducer?

A size reducer. SquishyFile shrinks the file's storage size in MB, not its resolution or aspect ratio. The video keeps its dimensions and only the file gets smaller. Changing the width or height is a separate job this tool doesn't do.

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

No to both. I don't cap the file size or the number of videos, and you never need to sign up. The compression runs in your browser, so your video isn't uploaded anywhere.

Will compressing my video reduce its quality?

A little, like any compression, but the "Light" setting keeps the difference hard to see. Move the slider to trade size for quality however the video needs. Compressing the same file again and again does add up, and how many times you can re-compress a video shows when it becomes visible.

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

No. SquishyFile re-encodes the video and audio to shrink the file. It doesn't strip the metadata Photos uses to sort and place your library.

Does target size override the compression level slider?

Yes. Once you enter a target size, SquishyFile uses it instead of the slider to decide how hard to compress.

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

An aggressive target, like a long high-motion clip under 25MB, visibly lowers quality. SquishyFile keeps the audio clear first, so an extreme target shows up as blur, blockiness or a lower frame rate. If the result looks overcompressed, try a slightly higher target.

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

Compression can't be perfectly exact, because some scenes take more data than others at the same bitrate. SquishyFile aims a little under your target to leave a margin. If it still misses, compress again at a slightly lower size.

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

SquishyFile only compresses files that contain a video stream. An audio-only file, or a damaged or unusual container it can't read, gets flagged instead of failing silently or producing a broken file.

Video still won't send after compressing?

A size limit isn't the only reason a video fails to send. My guide to videos that won't send on email or WhatsApp covers the other common causes.