Quality choice in a browser video compressor is not a single fixed setting — it is a decision between three explicit presets that trade file size against pixel resolution and frame rate, and the trade-off only becomes real once you measure the actual output size. The Video Compressor offers three named choices: Small, Balanced, and Quality, each with a fixed maximum output width and frame rate, a bits-per-pixel heuristic that drives the encoder, and a hard clamp of 180 kbps through 8 Mbps. None of the presets enlarges the source, all three preserve the source aspect ratio, and all three round output dimensions down to even pixel values for codec compatibility. Because compression depends on motion, noise, grain, and the original codec, the only reliable test is to run the preset, read the reported byte change, and play the file back before the original is deleted. That measured comparison — not the preset label — is what tells you whether the chosen quality actually fits your destination.

What the Three Quality Presets Actually Do
Every preset in the Video Compressor is a fixed combination of three values: a maximum output width, a target frame rate, and the source aspect ratio preserved. There is no slider, no CRF field, and no keyframe interval control — the tool exposes the trade-off as a named choice and lets you measure the result.
| Preset | Maximum output width | Target frame rate | Bitrate range | Aspect ratio | Enlarges source? |
|---|---|---|---|---|---|
| Small | 640 px | 24 fps | 180 kbps – 8 Mbps | Preserved | No |
| Balanced | 1280 px | 30 fps | 180 kbps – 8 Mbps | Preserved | No |
| Quality | 1920 px | 30 fps | 180 kbps – 8 Mbps | Preserved | No |
The encoder inside the page picks a target bitrate from a bits-per-pixel heuristic, then clamps the request so it stays between 180 kbps and 8 Mbps. Output dimensions are rounded down to even pixel values so the resulting stream is accepted by a wider range of decoders. None of the three presets enlarges a smaller source — if the source is 854 × 480, the Quality preset still outputs within its 1920 px ceiling, simply at the source's own 480-pixel height.
The actual codec inside the WebM container is chosen by the browser. The recorder tries VP9 first, then VP8, then a generic WebM MIME type, so the same preset can produce visibly different output from one browser to another. For size-versus-quality trade-offs inside the browser, the preset label is the lever and the reported byte change is the verdict.
How to Match the Preset to Your Content and Destination
Choosing quality is rarely about maximum resolution — it is about the largest size the destination will accept and the kind of motion the source contains. A short, low-motion screen recording of a slide deck and a 60-second hand-held clip of a busy street produce very different output sizes at the same preset, because the encoder spends more bits on detail that changes between frames.
Start with the destination. If the file must fit an email attachment, a chat upload, or a small embed, the Small preset is usually the starting point because it caps width at 640 px and frames at 24 fps — the result is far more likely to land under common size caps. If the destination accepts a larger file but a reasonable share-and-send size still matters, Balanced caps width at 1280 px at 30 fps and is the most common middle ground. Quality keeps the full 1920 px ceiling at 30 fps and makes sense when the destination accepts larger uploads or the file is intended for local playback.
Then consider the content. Animated diagrams, screen recordings, and talking-head clips usually shrink dramatically under any preset. Noisy footage, grain, fast camera movement, or rapidly changing detail spend bits faster, so the same preset may barely reduce the file. If the source already uses an efficient codec, a re-encode can even land larger — the page reports the actual signed byte change rather than promising a reduction.
For a tighter fit on a specific size target, see how a Discord-bound compression workflow sets its preset, and for a deeper look at the middle option, the guide on choosing Balanced in a video compressor walks through that preset's trade-offs in more detail.
Choose a Quality Setting and Run the Compression
Once the destination and content type are clear, the actual run is the same three-step flow regardless of which preset is picked.
- Open the Video Compressor and select a browser-decodable video file. The page accepts files named MP4, WebM, MOV, M4V, or Ogg, but only files whose codecs the current browser can actually decode. The hard input limits are 500 MiB, five minutes of duration, 4096 pixels on either side, and no more than 3840 × 2160 pixels of decoded area — anything outside those limits is rejected before compression starts.
- Pick a preset — Small, Balanced, or Quality — and start compression. The source plays in real time inside the page as the Canvas stream is recorded. Keep the tab focused and the source playing until the progress reaches the end of the clip; encoding runs in real time because MediaRecorder observes the Canvas stream while the source plays, so a two-minute source takes about two minutes rather than completing instantly.
- Read the result. The page reports output dimensions, input bytes, output bytes, and the measured percentage change calculated from the actual Blob sizes — not from preset estimates. Download the WebM, play it back fully with both picture and sound, and only retire the original after the output meets the destination's size, duration, and quality requirements.
If the result is the wrong size or quality, change the preset and run it again. Each new file selection, preset change, or cancel invalidates the active job and releases temporary Object URLs, so there is no leftover work to clean up.
Why the Output Can Still Be Larger Than the Source
Compression is content-dependent, and the page is honest about that. The reported percentage change is calculated only from the two actual Blob sizes, and the page does not promise that every result will be smaller — a larger output is reported as a larger output, not relabeled as a reduction.
A few common reasons the result can grow rather than shrink:
- The source is already highly compressed. If the original was encoded efficiently, a fresh re-encode at the same or lower bitrate can land near the same size or larger.
- The footage is noisy or grainy. Camera noise changes between almost every frame, so the encoder spends bits on detail the eye barely sees.
- The clip is high-motion or shaky. Rapid change forces the encoder to refresh detail constantly, leaving little room for savings.
- The browser's encoder differs from the source codec. The recorder picks VP9, VP8, or generic WebM according to the browser's reported support, and a different codec family can be less efficient on the same content.
When that happens, the practical move is to try a smaller preset, shorten the clip first, or accept that the file is already near-optimal for that source. The page never silently truncates the input — an over-limit duration, over-limit frame, unsupported decoder, missing Canvas stream, or unavailable WebM recorder produces an error and no download, so a bad result is always a measured, reported result rather than a hidden loss.
Verify the Output Before Deleting the Original
A preset label tells you what the encoder attempted; the played-back WebM tells you what you actually have. Before the source is deleted, open the downloaded file in a player you trust and check three things: dimensions and duration, picture quality at full-screen size, and audio presence and clarity.
Browser MediaRecorder exposes an audio track only when HTMLMediaElement captureStream surfaces one for the source, and support varies between browsers and codec combinations. If the source has audio and the output is silent, that is a browser support gap rather than a silent failure of the preset — the page still records the video stream, just without the audio track. Mute the system volume if needed; do not assume that muting the page tab stops the recorder from capturing the track.
The page does not preserve subtitles, chapters, attachments, rotation tags, color metadata, or HDR signaling. For archival masters, professional delivery specifications, exact codec profiles, two-pass rate control, fixed keyframe intervals, subtitle preservation, or deterministic cross-platform output, use a maintained desktop encoder such as FFmpeg with a reviewed command. For browser-side trade-offs between the Small, Balanced, and Quality presets, the rule is simple: pick a preset from the table, measure the reported byte change, and only retire the source after the output plays back the way the destination requires.