Bulk Image Compressor

All in your browser, with nothing uploaded

Loading…

Compress a folder of photos in one run: pick a quality, or type one target size, such as "every image under 200 KB", and the search runs per image, locally. The report shows each file’s output size.

How it works

  1. Drop an image, or many, or a ZIP, for a batch.
  2. Pick the format and either a quality level, a maximum dimension, or an exact target file size.
  3. Convert & download. The panel shows the real output size and dimensions.

Questions

How many files can one batch take?
Up to 500 files or 2 GB of input per run, dropped as loose files or a single ZIP. Items process one at a time on your device, nothing is uploaded, and the progress strip shows a per-item ETA. Bigger jobs: split into two drops.
What do I get back?
One ZIP: every processed file, named exactly like the single-file download would be, plus _report.txt and _report.json listing each input and what happened to it, including any that failed and why. A cancelled batch still downloads the items finished so far, with the report saying so.
Does my file get uploaded?
No. The models and all processing run inside your browser on your own device. You can verify this yourself: open your browser’s DevTools, watch the Network tab, and process a file: there are no uploads. After the first visit most tools also work fully offline.
How does "compress to target size" work?
The tool searches the quality setting until the output lands under your target at the highest quality that fits, using at most a handful of encode passes, all local. If even the lowest quality overshoots, it steps the resolution down and says so.
Why is AVIF not offered?
Browsers can decode AVIF but cannot encode it from a canvas today. Rather than shipping a broken option, it is not offered; WebP typically gets most of the size benefit.
Does converting remove metadata?
Yes. Re-encoding drops EXIF and GPS data as a side effect, and the panel says so. For lossless metadata removal that keeps the original pixels, use the metadata remover instead.

Related tools