IMG-05 · Compress

Compress an image

Reduce file size with a live quality slider. Watch the output size update in real time as you drag. Nothing leaves your device.

Image

📷
Click to browse or drag an image here

Could not read that file as an image.

What "compress" actually trades away

JPEG and WebP compression are lossy — lowering quality discards image detail permanently to shrink file size, and that loss is cumulative if you re-compress an already-compressed file repeatedly. PNG compression is lossless (no detail lost, smaller gains) since PNG is inherently a different, non-lossy format. Which one you want depends entirely on the image: photos tolerate lossy compression well since the eye doesn't notice most of what's discarded; screenshots and graphics with sharp edges or text show compression artifacts much more readily.

Finding the right quality setting

There's no universal "correct" quality percentage — it depends on the image and how it'll be viewed. The live preview and output-size readout let you find where file size drops meaningfully without visible quality loss, which is usually somewhere between 60–85% for photos, higher for anything with text or sharp detail.

Will compressing my image multiple times keep shrinking it?

Each lossy (JPEG/WebP) re-compression discards more detail on top of whatever was already lost, with diminishing file-size returns and accumulating visible quality loss. Always compress from the original source file, not from an already-compressed copy, whenever possible.

Why does the same quality setting look different on a photo vs. a screenshot?

Lossy compression works by discarding detail the eye is less likely to notice in natural photo gradients — it's much less forgiving on sharp edges, text, and flat color blocks typical of screenshots, which is why the same quality percentage can look fine on a photo and visibly blocky on a screenshot.

Does this tool upload my image to compress it?

No — compression runs entirely in your browser via the Canvas API. The image never leaves your device.

All processing runs locally in your browser · No image is ever uploaded