Zero uploads · 100% in-browser No sign-up · No watermarks · Free forever

Drop up to 20 images here

or click to pick files — JPG, PNG, WEBP, GIF, BMP

Lower = smaller files. 70–80% works well for most photos.

Batch Image Compression — Free, Fast, Private

Compressing images one at a time is slow when you have a folder full of product photos, travel shots, or website assets. The Bulk Image Compressor lets you drop up to 20 images at once, compress them all in one click, and download a ZIP. Everything runs in your browser using the Canvas API — no files are ever sent to a server.

The tool preserves the original format: a JPG stays a JPG, a PNG stays a PNG, a WEBP stays WEBP. Only the quality (and therefore file size) changes. If you need to change format at the same time, use the Image Converter after compressing.

How Bulk Compression Works

  1. Select files — Drop up to 20 images or click to open the file picker. The file list appears immediately.
  2. Set quality — The slider controls JPEG/WEBP lossy quality. PNG is lossless by nature; the slider is ignored for PNG files.
  3. Compress All — Each file is processed sequentially in your browser. The per-file result (original size, compressed size, savings %) appears as each one finishes.
  4. Download — Click the Download link next to any individual file, or click Download All as ZIP to get everything in one archive.

Frequently Asked Questions

Up to 20 per batch. For larger sets, run multiple batches — each takes only a few seconds.

No. Every image is processed locally in your browser using the HTML5 Canvas API. Nothing is ever uploaded.

For JPEG photos, 70–80% typically cuts file size by 50–70% with minimal visible quality loss. For product images with text, try 85%. PNG files are always lossless — the slider has no effect on them.

Yes. PNG compression re-encodes the file as a lossless PNG, which often reduces size by removing unnecessary metadata. For further reduction, convert to WEBP or JPG using the Image Converter tool.

The ZIP is assembled inside your browser by JSZip, an open-source JavaScript library. No data is sent to any server during this process.