Image compressor

Shrink JPG, PNG, WebP and AVIF in your browser with the same codecs Squoosh uses. Nothing is uploaded.

Drop images here, or browse

PNG, JPG, WebP, AVIF, HEIC · up to 50 MB each · mozjpeg + oxipng + libavif

75
smallersharper

Preserves the source format using its best codec.

Frequently asked

What codecs are used?+

JPG uses mozjpeg, PNG uses oxipng, WebP uses libwebp, and AVIF uses libavif — the same encoders Squoosh ships. They're compiled to WebAssembly and run entirely in your browser.

Why is this better than canvas.toBlob?+

Browser-built-in JPG encoders typically produce files 20–40% larger than mozjpeg at the same visual quality. Native canvas PNG output is essentially uncompressed; oxipng can shave another 30–60% on top.

What's the difference between Quality and Target size?+

Quality mode applies one quality setting to every file. Target size mode binary-searches the quality slider for each file until the result fits under the limit you set.

Why is AVIF slow?+

AVIF (libavif) is the slowest of the encoders by design — it's exploring far more compression options. For batch work, prefer WebP for similar size with much faster encoding.

Will compression damage my photos?+

Quality 80–90 is visually indistinguishable from the original for most photos. Below 60 you'll start to see compression artifacts in skies, gradients, and skin. PNG and oxipng are lossless — pixel-perfect.

Does it work offline?+

After the first visit, the page itself is cached. The codec WebAssembly is also cached after first use — so subsequent compressions of the same format work without a network connection.