Image Compressor

Shrink a JPEG, PNG, or WebP image's file size with a live quality slider — see the before/after size and preview instantly, entirely in your browser.

runs locally on your browser. Your data never leaves your device.

Drag & drop a JPEG, PNG, or WebP image

or

Common Use Cases

Shrink a phone photo before attaching it to an email or a form upload
Compress screenshots or images for a website or blog post without losing much visible quality
Convert a transparent PNG to a smaller JPEG or WebP file for faster page loads
Compare quality levels side-by-side before choosing how much to shrink an image

About Image Compressor

A photo straight off a phone camera or a screenshot fresh out of an editor is often far larger than it needs to be for emailing, uploading to a form, or embedding on a web page — and most people don't have a dedicated compression app installed, so they either upload it as-is or turn to a random online converter with no clue what happens to the file in between. This tool does the shrinking directly in your browser: drop in a JPEG, PNG, or WebP image, drag the quality slider, and watch the compressed size and a live preview update instantly, with nothing ever leaving your device.

Under the hood it's the same approach a native photo-editing app would use: the image is decoded with the browser's own `createImageBitmap` API, drawn onto an in-memory canvas, and re-encoded with the canvas's built-in `toBlob` compressor at whatever quality percentage the slider is set to. JPEG and WebP are true lossy formats, so the quality slider has a real, visible effect on both size and appearance — lower it for a smaller file, raise it for cleaner detail. PNG is included as an output option too, but PNG is lossless by design, so the slider doesn't change anything there; picking PNG mainly matters if you need to preserve transparency or need a format that never introduces compression artifacts.

The before/after comparison is exact, not an estimate — because the tool actually re-encodes the image every time you move the slider (debounced slightly so it doesn't fire on every intermediate value while dragging), the size shown is the real size of the file you're about to download, not a prediction. Switching from a transparent PNG or WebP to JPEG output automatically flattens transparency onto a white background first, since JPEG has no alpha channel — this is done for you rather than silently turning transparent areas black.

Once you're happy with the result, download it with one click. The whole pipeline — decoding, resizing internally to a sane working resolution for very large photos, re-encoding, and generating the downloadable file — runs locally using the Canvas API already built into your browser. Your image is never uploaded, transmitted, logged, or stored anywhere, even for a moment.

Frequently Asked Questions