Skip to content
I Hate Online Tools

Batch compress

Compress many images to JPEG in one pass.

This runs in your browser. Nothing is uploaded.

About Batch compress

Re-encodes every image in a selection as a JPEG at a quality you choose and returns them as a zip, with all the compression work done on your own machine.

The usual trigger is a size cap. A CMS that rejects anything over 2 MB, an email thread that will not carry the attachment, a client portal with a per-file limit, or a site that has grown slow because every hero image came straight off a camera. You have a folder of them and no appetite for opening each one in an editor.

Set a quality value and every selected file is decoded and re-encoded as a JPEG at that level, then zipped as batch-compress.zip. One setting applies to the whole set, which is what makes it fast to run and slightly blunt in effect: a clean studio shot and a noisy night photo respond quite differently to the same number.

Be aware that the output is JPEG regardless of what went in. A PNG comes back as a JPEG with its transparency flattened onto black, and a WebP comes back as a JPEG that may well be larger than it was. If you want to keep the original formats, use batch convert to pick one deliberately, or compress those files individually.

How to use Batch compress

  1. 1Drop or select the images you want to shrink.
  2. 2Set the quality; 0.75 to 0.85 is the usual working range.
  3. 3Click Process & download zip.
  4. 4Spot-check two or three results before you delete the originals.

What it won't do

  • Output is always JPEG, whatever the input format was.
  • One quality value for the entire batch; no per-file tuning.
  • No target file size — that is single-file work.

Common questions

What quality setting should I use for a whole batch?

Between 0.75 and 0.85 for photographic images. That range typically removes most of the file size while staying hard to distinguish at normal viewing distance. Since one value covers every file, err slightly high: the cost of being too generous is a larger zip, while the cost of being too aggressive is visible blocking you cannot undo.

Will this keep PNG transparency?

No. Every file comes out as a JPEG, and JPEG has no alpha channel, so transparent areas are flattened. If your set includes logos or cut-outs, run those through the PNG or WebP compressors instead, or use batch convert with WebP selected, which keeps transparency and compresses well.

Can I compress a batch to a specific file size?

Not in bulk. Hitting a target size means binary-searching the quality value for each individual image, which is what the compress-to-target-size tool does one file at a time. A single quality setting across a folder produces a range of file sizes, because the images themselves differ in complexity.

Does it re-compress files that are already small?

Yes, every selected file is re-encoded without checking whether it needs it. An already-optimised small JPEG can come back the same size or slightly larger, having taken a second lossy pass for nothing. Filter obvious candidates out of the selection rather than sending the whole folder.

Related tools

Why this one doesn't upload your file

There is no server to upload to. This page is a static file, and the work happens in your browser using the same graphics and WebAssembly code that renders every other site you visit. Your file is read from disk into memory, processed, and handed back as a download. Once the page has loaded you can disconnect from the network entirely and it keeps working. The longer explanation

Install the app