Media

Video Compressor

Make a video small enough to send. Name the limit you have to clear — 25 MB for an email, 10 MB for a chat app, anything you type — and the bitrate is worked out for you. FFmpeg re-encodes it in your browser tab, and nothing is uploaded.

  • Compress to a file size you name, not a quality slider you have to guess at
  • Tells you whether the target is realistic before the encode, and whether the file fits after it

Drop a video file here

The file stays on your machine — it is never uploaded

Reads MP4, MOV, WebM, MKV, AVI, M4V, and most other formats FFmpeg understands.

No video selected yet

Choose a video file to begin. The engine is only downloaded once you do.

Compress

Overview

Compressing to a size is a budget problem rather than a quality setting: the length of the video and the size it has to fit determine the bitrate, and resolution, frame rate and audio decide whether that bitrate is enough to look like anything. This tool does that arithmetic in the open.

  1. 01

    Compress to a size you name

    Type the limit you have been given — 25 MB, 10 MB, 8 MB, anything — and the bitrate is worked out from the length of the video and what the audio needs. Most compressors offer a quality slider and leave you to run it three times to find out what comes out; here the number you care about is the one you set.

  2. 02

    It tells you when the target is unrealistic

    Ten minutes of 1080p inside 25 MB is roughly 350 kbps, which no encoder can make watchable. Rather than encoding for several minutes to produce something blocky, the tool compares the budget against the frame first and says plainly whether there is enough to work with.

  3. 03

    And it tells you what would fix it

    When a target is out of reach it names the specific settings that would meet it — 480p at the source frame rate, say — and applies them in one click. Resolution is spent before frame rate, because a smaller picture reads as a small video while a stuttering one reads as broken.

  4. 04

    A verdict on the finished file

    The job was never "compress", it was "make this fit". So the result says whether it fits, in the same units as the limit you set, instead of leaving you to check the file manager and work it out. When rate control overshoots, it says that too, and what to change.

  5. 05

    The levers that actually move file size

    Resolution, frame rate and audio rate are separated out because they behave differently: halving each side of the frame quarters the pixels, capping frame rate helps most on screen recordings, and audio is a fixed cost that matters on short clips. Nothing is enlarged and no frames are invented — every control only ever reduces.

  6. 06

    Local processing, with no upload

    FFmpeg is compiled to WebAssembly and runs in the tab. Nothing is uploaded, queued, watermarked, or tied to an account. Browser memory still sets a practical ceiling for large files, while client footage and internal recordings stay on the machine they were already on.

How to use

From a file that will not send to one that will, in four steps.

  1. 01

    Drop a video onto the page, or use the file picker. The engine starts downloading at this point — it is about 31 MB and only happens once — and the file is then read for its resolution, frame rate, and length.

  2. 02

    Enter the size it has to come in under, or pick one of the presets. If no particular limit applies, switch to a quality level instead and let the size follow.

  3. 03

    Check the verdict on the right. If the budget is too thin for the frame, apply the suggested resolution and frame rate; otherwise adjust the audio rate or leave everything as it is.

  4. 04

    Press Compress. The finished MP4 appears on the right with its real size measured against your limit, ready to play before you download it.

Details

The details that decide whether the file you get is the one you needed.

  • A target file size in megabytes, with presets at 8, 10, 16, 25, 50, and 100 MB
  • Bitrate calculated from duration and the audio budget, aimed under the limit with a margin, and measured against it afterwards
  • A feasibility verdict before the encode, based on bits per pixel rather than guesswork
  • One-click settings that would make an unrealistic target realistic
  • A constant-quality mode for when no specific limit applies
  • Resolution presets that name the short side, so portrait video stays portrait
  • Frame rate caps at 60, 30, 24, and 15, offered only when the source is faster
  • Audio at 192, 128, 96, or 64 kbps, or removed entirely
  • Nothing is ever upscaled, and the source's own bitrate caps what the target budget will spend
  • A fits-or-not verdict on the finished file, measured against the limit you set
  • Faststart applied so the file plays before it finishes downloading
  • Real byte-level progress while the engine downloads, and encode progress after that

Use cases

The jobs that bring people to a video compressor in the first place.

  1. A file too large to email

    Attachment limits are commonly 25 MB, and a couple of minutes of phone video clears that several times over. Set the limit, let the resolution drop to whatever fits, and send the file itself rather than a link to it.

  2. Getting under a chat app's upload cap

    Messaging apps reject anything over a fixed size, and the number depends on the app and the account. Type whichever one applies to you and the encode is sized to it, rather than compressed by a guess and tried again.

  3. A screen recording for a bug report

    Captures of a UI are mostly static, which compresses extremely well, and a frame rate cap costs almost nothing on them. A two-minute recording of a reproduction usually drops under 10 MB with the text still readable.

  4. Trimming down phone footage before it syncs

    Modern phones record at high bitrates, and a few clips fill a backup allowance quickly. Compressing to a sensible size before they leave the device keeps the archive usable without needing more storage.

  5. Meeting an upload limit on a form or ticket

    Support portals, applications, and course submissions all cap attachments, and often reject the file only after a long upload. Sizing it correctly first turns a failed submission into one that goes through.

  6. Making a long recording practical to share

    A lecture, a meeting, or a demo does not need broadcast quality to be useful. Dropping to 720p at a moderate bitrate keeps speech clear and slides legible while turning a multi-gigabyte file into something people can actually download.

  7. Cutting the weight of video on a page

    A background clip or a product demo that arrives at full bitrate slows a page for everyone on it. Compressing to a fixed budget makes the cost of that video a decision rather than an accident.

  8. Footage that should not be uploaded

    Interview recordings, medical video, client footage, and captures of internal tools all carry things that have no business on a converter site. Everything here happens in the tab, which you can confirm from the network panel.

See also

Size is spread across the whole length of a clip, so the shortest route to a smaller file is often fewer seconds rather than fewer bits — that is Video Trimmer. When the frame itself is the problem, and the picture needs cropping or reshaping rather than shrinking, there is Video Resizer & Cropper. For something short enough to belong in a README or a chat message, an animation travels further than a video, which is what Video to GIF is for.

Best practices

Habits that get a file under the limit on the first run.

  • Set the target slightly below the real limit — a platform that says 25 MB sometimes counts encoding overhead differently, and 24 leaves room for the disagreement
  • Drop resolution before frame rate: a smaller picture reads as a small video, while a stuttering one reads as a broken one
  • Cut the clip down first when only part of it matters, since the budget is spread across the whole length and every second you keep takes a share
  • Leave audio at 128 kbps unless the clip is short, where dropping to 64 frees a meaningful slice of a small budget
  • Remove the audio outright for a silent screen recording rather than spending the budget on a track of nothing
  • Trust the verdict over the preset: a target that reads as poor will look poor, and a minute of encoding will not change that
  • Do long or high-resolution work in a desktop browser, since a phone gives a tab far less memory to hold the file in

Limitations

What this tool deliberately does not do, and where it will struggle.

  • Compression here means re-encoding, so the result is one generation further from the original. There is no way to make a video meaningfully smaller without decoding and encoding it again.
  • It does not crop, trim, rotate, join, add captions, or change the shape of the frame. It reduces file size, and scales the frame only because that is the strongest way to do it.
  • Output is always MP4 with H.264 video and, when audio is kept, AAC audio. Nothing here writes WebM, HEVC, or AV1, and only the first audio track comes along — extra language tracks and subtitles do not.
  • The encode is single pass. Two passes would land closer to the target, but they encode the whole video twice on one thread, and the result panel reports the real size rather than assuming the mark was hit.
  • Rate control aims at the target rather than guaranteeing it. Footage that changes constantly can overshoot by a few percent, which is why the target is set a little under the limit and the outcome is measured.
  • A target far too small for the length of the video cannot be rescued by any setting. The tool says so rather than producing something unwatchable and calling it done.
  • Encoding runs on a single thread in WebAssembly, so it is slower than the same job in a desktop copy of FFmpeg. Long or high-resolution footage takes real time.
  • The whole video is read into memory before encoding starts, and WebAssembly is 32-bit, so files beyond roughly a quarter of a gigabyte become unreliable.
  • The engine is about 31 MB on first use. It is cached afterwards, but the first run in a fresh browser profile carries that download.
  • Some containers FFmpeg reads fine, such as MKV with HEVC, will not play in the browser preview. Compression still works; only the preview is missing.

FAQ

Questions that come up when making a video small enough to send.

How do I compress a video to a specific file size?

Choose Target size, type the number you have to come in under, and press Compress. The tool multiplies the size by eight to get a bit budget, subtracts what the audio will use, divides by the length of the video, and encodes at the bitrate that falls out — aiming slightly under so container overhead does not push it back over. The finished file then states its real size against your limit.

How do I compress a video for email?

Most email providers cap attachments at around 25 MB, so set the target to 25 or a little below and let the resolution drop to whatever fits. A couple of minutes of phone video usually lands at 720p and stays perfectly legible. If the clip is long enough that the verdict warns you the budget is too thin, trimming it first will do more for the result than any setting here.

Can I compress a video without losing quality?

Not literally, and no tool can. H.264 is a lossy format, and making a file smaller means describing the picture with fewer bits, so something is always given up. What is achievable is loss you do not notice: keeping the bitrate high enough for the frame, or lowering the resolution so the remaining bits are spread over fewer pixels. That second trade is usually invisible on a phone screen, which is why the tool reaches for resolution first.

Why is my video still too big after compressing it?

Usually the target was never achievable at that resolution — the verdict says so before you start, and applying the suggested settings fixes it. Occasionally rate control overshoots by a few percent on footage that changes constantly, which the result panel reports rather than hiding. Setting the target a little under the real limit, or dropping the resolution one step, clears it.

What actually makes a video file smaller?

Four things, in rough order of effect. Resolution matters most: halving each side leaves a quarter of the pixels, so the same bitrate has four times as much to spend on each one. Bitrate is the direct control, and it is what a target size sets for you. Frame rate helps on screen recordings and slides more than on real movement. Audio is a fixed cost that only matters on short clips, where it can be a large share of a small budget.

Is my video uploaded anywhere?

No. The engine is FFmpeg compiled to WebAssembly and it runs inside your browser tab. The file is read from disk into the tab's memory and the result is written back out as a download. Nothing about the file crosses the network, which you can confirm by watching the network panel while a compression runs.

Should I use a target size or a quality level?

Use a target size when a number has been handed to you by an email client, a chat app, or an upload form — that is the case this tool is built around. Use a quality level when the file simply needs to be smaller and nothing specific is being enforced: it holds detail steady across the clip and lets the size land where the footage takes it, which generally looks more even than forcing an arbitrary budget.

How much can I compress a video before it looks bad?

It depends on the frame far more than the file. The useful measure is how many bits each pixel of each frame gets, so the same bitrate that looks fine at 480p falls apart at 1080p. That is exactly what the verdict on the right is measuring, and why the answer to a too-small target is almost always a smaller frame rather than accepting a worse picture at the original size.

Does compressing a video reduce its resolution?

Only if you ask it to. Resolution starts at Keep and every preset is a deliberate choice, so a target size on its own changes the bitrate and nothing else. The tool suggests a lower resolution when the budget is too thin for the current frame, but it will not apply one behind your back — and it never enlarges a video, since a preset above the source is treated as leaving it alone.

How long does compressing take, and how large a file can I use?

Every frame is decoded and encoded again on a single thread in the tab, so the time scales with the length, the resolution, and your machine — a short clip is quick, a long high-resolution recording is not. The practical ceiling is memory rather than time: the whole file is held in the tab while it works, so beyond roughly 250 MB things become unreliable. Cutting the section you need out first keeps both numbers down.

Related tools

More local, browser-only tools for working with video.