WebP Compression to an Exact Size

WebP is the format the modern web quietly standardised on, and this page is its dedicated workshop: a WebP compressor where you set a byte budget — 100 KB by default — and a binary search finds the best-looking result that fits it. Around the tool, the sections below cover what the format actually offers, why it reaches a target size more readily than its rivals, and how to handle the shrinking set of tools that still cannot read it. If you have been told to “make the image smaller” with no further specification, this is the page that ends the negotiation in one pass. As everywhere on this site, the encoding runs in your browser; nothing is uploaded.

Drop images here, click to browse, or paste from clipboard (Ctrl+V)

JPEG, PNG or WebP · up to 30 MB per file · up to 5 images at a time · processed locally

What WebP offers beyond small files

WebP is built on the same video-compression lineage that powers modern streaming, adapted to still images, and it carries capabilities that cover nearly everything a web image is asked to do. It has a lossy mode that beats JPEG’s efficiency substantially, a genuine lossless mode for graphics, an alpha channel for transparency, and support for animation — the territory GIF owned for decades, at a fraction of the weight. One format, four jobs.

Support is no longer the question it once was. Every current browser — Chrome, Edge, Firefox, Safari and their mobile counterparts — renders WebP, and it has carried production traffic at enormous scale for years across sites of every size. For anything consumed in a browser, the format-support argument ended a while ago; the remaining holdouts live in older desktop software and some backend pipelines, which is a matter the last section below handles.

Why a target size is easier to hit in WebP

Every compression target has an implicit quality floor, and WebP’s floor is higher. At 100 KB, a photograph that looks rough as a JPEG often looks clean as a WebP, because the format describes visual detail more efficiently and wastes less of the budget on artifacts. Concretely: where a 100 KB JPEG of a textured scene starts showing blocky edges, the same scene at 100 KB in WebP typically still reads as a photograph. The binary search here exploits that headroom automatically — it climbs the quality ladder until the file just fits, and WebP’s efficiency means the climb ends higher.

The efficiency also widens what 100 KB can be asked to do. Higher resolution survives at acceptable quality; gradients band less; interface captures keep their text sharper. If you arrived here because some form or platform demanded a figure that felt impossible, switching the output to WebP is frequently the difference between failing the check and passing it — the same arithmetic, spent by a smarter encoder.

The rare exception, and the graceful fallback

The clients that cannot read WebP cluster in predictable places: some long-in-the-tooth desktop applications, certain mail setups that render images with their own aging engines, and occasional backend systems that validate uploads against a fixed list of types. None of these are browsers, and each year the list shrinks — but if your destination is on it, no amount of format superiority helps.

The fallback costs one click. Switch the output to JPEG for photographs — universally readable, and close in quality to what WebP achieved, only heavier — or to PNG when transparency must survive and losslessness is non-negotiable. A practical pattern for websites: serve WebP as the primary asset and keep a JPEG sibling for edge cases, generated in the same sitting from this page. The format buttons above make producing both sets a two-minute job.

Frequently asked questions

Is WebP safe to use everywhere on a website in 2026?

For browser-facing content, yes — every current browser renders it, and it has years of large-scale production behind it. The residual risk is not browsers but tooling: old image-processing pipelines, some desktop editors, certain mail clients. If your images only ever appear on the web, WebP is the pragmatic default; if they feed into unknown software, generate a JPEG fallback alongside, which this page can produce in the same batch.

Does WebP really support transparency like PNG?

Yes — the alpha channel is a first-class citizen in both lossy and lossless WebP, and a transparent WebP typically weighs a fraction of the equivalent PNG. Edges between opaque and transparent areas stay clean, which makes it suitable for logos, overlays and cutouts destined for web pages. PNG keeps its crown only where losslessness must be absolute and file size is irrelevant — an increasingly narrow set of jobs.

Can WebP hold animations the way GIF does?

It can, and does it better: animated WebP supports full colour, alpha transparency and both lossy and lossless frames, typically weighing far less than the GIF equivalent. This page compresses still images, so animation is mentioned as format context rather than a feature of the tool — but it is one more reason a platform that accepts WebP accepts nearly everything you might need to ship.

Why does the same photo weigh less as WebP than as JPEG?

The encoders describe images differently. JPEG divides the picture into blocks and rounds detail within each, spending bytes on artifacts the eye then has to ignore; WebP’s underlying codec predicts content from its surroundings and encodes what remains far more economically. The result at equal quality is typically 25 to 35% fewer bytes — which is exactly the headroom a fixed target like 100 KB converts into visible quality.

The upload form rejects WebP — what now?

Switch the output format on this page to JPEG and compress again; the search will find the best quality that fits the same target in the compatible format. The image will weigh a little more at the same quality or look slightly softer at the same size — that is the tax of the older format — but the form will accept it. If you control the destination, meanwhile, it is worth asking whether its format list is a policy or just an unexamined default.