DevTools

Image Compressor

Fast, multi-threaded image compression — shrink many images at once by quality or to a target file size, with WebP/JPEG output and optional resizing, entirely in your browser.

Prefer the terminal? See the CLI equivalent →
Loading tool…

About the Image Compressor

  • Batch — many images at once
  • Multi-threaded processing
  • Compress to a target file size
  • Download all as a ZIP
  • Instant results
  • 100% private — runs in your browser
  • Free, no sign-up

This tool shrinks image file sizes so pages load faster and attachments fit under upload limits — a whole batch at once. Drop in JPEGs, PNGs, WebP, or GIFs, choose how hard to compress, and download the smaller files individually or as a single ZIP.

Everything runs in your browser using the Canvas API: each image is decoded, optionally downscaled, and re-encoded to WebP or JPEG locally. Nothing is uploaded, so private screenshots and photos stay on your device, and re-encoding strips EXIF and GPS metadata as a side effect. There are no file-count or size limits beyond your own machine.

Two ways to compress: pick a quality level and see how small each file gets, or set a target file size (in KB) and let the tool search for the highest quality that fits your budget. When a "compressed" result would actually be larger than the original — common for already-optimised files or flat PNG graphics — the original is kept instead, so you never end up with a bigger file.

How to use it

  1. Drop images onto the box, or click to choose several at once.
  2. Pick an output format (WebP is usually smallest), then compress by quality or to a target size in KB.
  3. Optionally cap the largest dimension to downscale big photos before compressing.
  4. Review the per-file and overall savings, then download files individually or all together as a ZIP.

Getting the smallest files

WebP
Usually 25–35% smaller than JPEG at the same quality, with transparency support. The best default for the web.
Quality ~75%
A good balance for photographs — visually near-identical to the original at a fraction of the size.
Target size
Binary-searches the quality to fit a KB budget. Useful for upload limits or email attachments.
Max dimension
Downscaling a 4000px phone photo to 1600px often shrinks the file far more than quality alone.

Frequently asked questions

Are my images uploaded anywhere?+

No. Decoding, resizing, and re-encoding all happen locally in your browser with the Canvas API. Your images never leave your device — there is no server — so it is safe to compress private photos and screenshots.

How is this different from the Image Converter?+

The Image Converter focuses on converting a single image between formats with a live before/after preview. The Image Compressor is built for shrinking many images at once, with a target-file-size mode, overall savings, and a one-click ZIP of the whole batch.

Why was one of my files "kept original"?+

Re-encoding does not always help — already-optimised JPEGs and flat PNG graphics can come out larger. When that happens the tool keeps the original bytes, so a file is never made bigger by compressing it.

Can it compress PNGs a lot?+

The browser’s Canvas API is not a dedicated PNG optimiser, so lossless PNG re-encoding rarely shrinks much. For big savings on PNG photos or screenshots, choose WebP as the output format — it typically produces far smaller files.

What happens to animated GIFs?+

They are compressed to a single still frame. The Canvas API cannot re-encode animation, so use this tool for static images; keep the original if you need the animation.

Related tools