← All posts

September 20, 2026

How to Compress a Video Without Wrecking the Quality

Compress a video using four quality presets and an optional resolution drop. What the CRF number actually changes, and which of the two levers to pull first.

The upload form says 25 MB. Your file says 340 MB. That's the whole problem, and it has exactly two solutions: throw away detail, or throw away pixels. To compress a video is to decide how much of each you can live with. The MyTools video compressor puts both levers in front of you — a quality preset and a resolution drop — and runs the encoder on your own machine rather than shipping 340 MB to someone else's. Here's the three-minute version, then the part that actually matters: knowing which lever to pull.

Compressing a video, end to end

1. Drop in the file

The page opens on a drop zone that takes a single video, up to 500 MB. MP4 and MOV are the common arrivals; M4V and WebM load too. The file is handed straight to the page rather than uploaded, which is why a 300 MB clip is ready the instant you drop it.

The video compressor's drop zone, before any file is added
The video compressor's drop zone, before any file is added
No progress bar, because there's no transfer — the encoder comes to the file, not the other way around.

2. Pick a quality preset

Four presets, each labelled with the CRF number it maps to:

  • High quality (CRF 23) — visually near-identical to the source, modest savings
  • Standard (CRF 26) — the default, and the right answer for most attachments
  • Strong (CRF 29) — visible softening on detailed footage, excellent on screen recordings
  • Extreme (CRF 32) — artifacts you'll notice, for when a hard cap leaves no choice

3. Drop the resolution, if it helps

The Resolution dropdown offers 1080p, 720p, 480p and 360p — but only the ones smaller than your source. Feed it a 480×270 clip and the only option is "Keep original", because upscaling during compression would cost bytes and add nothing. Aspect ratio is preserved either way; you never get to stretch the picture by accident.

The Mute audio switch strips the audio stream entirely. Worth knowing what that's actually worth: the encoder writes AAC at 128 kbit/s, which is about 1 MB per minute of video. Muting a 90-second clip saves roughly 1.5 MB. On a screen recording with no narration that's free money; on a 3-minute video you're trying to squeeze under 25 MB, it's noise.

The compressor's settings panel showing the four CRF presets, the resolution dropdown and the mute switch
The compressor's settings panel showing the four CRF presets, the resolution dropdown and the mute switch
A 480×270 source, so the resolution dropdown has nothing smaller to offer. The preset column is doing all the work here.

4. Compress and download

Click Compress & download. The first run pulls in the video engine — about 30 MB, once, then cached — and after that it goes straight to encoding. Expect roughly the video's own runtime on a laptop: a 2-minute clip takes about 2 minutes. Phones run 2–3× slower, and iOS suspends background tabs, so leave the tab in front while it works.

The result screen showing 1.5 MB compressed down to 198 KB, an 87% reduction
The result screen showing 1.5 MB compressed down to 198 KB, an 87% reduction
The result screen reports both numbers and the percentage saved. This 30-second clip went from 1.5 MB to 198 KB at Standard with no resolution change.

What the CRF number actually does

CRF stands for Constant Rate Factor, and it is the single most misunderstood setting in video compression, because it is a quality target, not a size target.

Tell the encoder CRF 26 and you've said: "spend however many bits each scene needs to hit this quality level." A static talking head gets very few bits. A handheld shot of leaves in the wind gets a lot. The encoder decides per scene, which is why the same preset turns one 200 MB file into 30 MB and another into 90 MB.

The useful rule of thumb: every 6 points of CRF roughly halves the file size. That maps neatly onto the ladder above — Strong (29) lands near half of High quality (23), and Extreme (32) is about half of Standard (26). Lower CRF means higher quality and bigger files; the scale runs backwards from how people expect.

The consequence worth internalising: nothing here can promise you a file under 25 MB. A size-targeted encoder would hit the number exactly and let quality fall wherever it lands — often badly, on the one difficult scene in your video. A quality-targeted one protects the picture and lets size vary. If you're chasing a hard cap, you compress, check the number on the result screen, and step down one preset if you're still over. Usually that's one extra round.

Which lever first: pixels or detail

You have two independent knobs, and they are not interchangeable.

Resolution is a pixel-count lever, and the math is exact. Going 1080p → 720p discards 56% of the pixels. 1080p → 480p discards 80%. File size tracks that closely, and — this is the part people miss — it costs you nothing visible if the video will be watched in a chat window, a Slack thread, or an email preview pane at 400 px wide. Nobody is pixel-peeping your 720p.

CRF is a detail lever, and it degrades differently: fine texture goes first — grass, hair, fabric weave, gradients in a sky — while edges and flat colour hold up well.

So, in practice:

  • Screen recordings, slide decks, terminal captures. Drop the resolution last, not first. Text gets illegible fast when you scale it down, but it survives a high CRF beautifully, because it's all hard edges and flat colour. Strong or even Extreme at full resolution usually beats Standard at 720p.
  • Phone footage, handheld, anything outdoors. Drop the resolution first. 1080p → 720p buys you more than two preset steps, and the softening is invisible at normal viewing size.
  • Already small, still too big. You've probably hit the floor. Consider trimming instead — cutting 40 seconds off the front with the video trimmer removes those bytes outright rather than re-encoding them badly.

One more thing the tool does quietly: the output is written with the faststart flag, which moves the file's index to the front. That's what lets a video begin playing before it's fully downloaded. Without it, a 40 MB file posted to a forum has to arrive completely before the first frame shows.

When the numbers don't cooperate

The result came out bigger than the original. Re-encoding an already-compressed file can add bytes rather than remove them — if the source was exported at a bitrate below what your chosen CRF would spend, the encoder happily spends more. The result screen warns you when this happens. Step down a preset or drop the resolution, and if neither helps, the file was already near optimal.

The file won't load at all. MKV and AVI don't open here — the compressor needs a container the browser itself can play, so it accepts MP4, M4V, MOV and WebM. Run an oddball container through Video to MP4 first, then come back.

It ran out of memory. Everything happens in browser memory, so a long 4K recording can exhaust it. A smaller target resolution is the cheapest fix; trimming the clip first is the reliable one. The 500 MB input cap exists for the same reason.

It's taking forever. Encoding is genuinely expensive work, and it's happening on your CPU rather than a rented server. The progress bar shows a live estimate once it has enough data to extrapolate. Closing the tab cancels it.

The short version

Standard at the original resolution clears most upload limits and is hard to tell from the source. When it doesn't, decide what kind of footage you have before touching anything: filmed content gives up resolution cheaply, recorded screens give up detail cheaply, and knowing which is which saves you three rounds of guessing.

Where this isn't the right tool: if you need a specific output size guaranteed, or you're batching forty files, a desktop encoder with two-pass bitrate targeting will serve you better. For the 340 MB clip and the 25 MB form, this is the shorter path.

Compress a video with MyTools →