Two hundred files per batch
No counter, no trial limit, no license prompt after the first hundred. The ceiling is your device's memory, and we say so.
Drop a whole folder, set the quality once, download the lot as a ZIP. No signup, no file counter, no watermark.
Drop your folder of images
JPG, PNG, WebP, AVIF, HEIC, GIF, BMP, TIFF · up to 200 files · 100 MB each
Drag the divider across the photo. Both sides are the same 1:1 crop: one from the original file, one from the file this tool made from it.


Select up to 200 files or drag a folder straight in. The whole run happens on your device.
Pick a quality for the batch, or an output format if you want everything converted on the way through.
Watch the totals as the queue runs, then take the whole set as one archive when it finishes.
No counter, no trial limit, no license prompt after the first hundred. The ceiling is your device's memory, and we say so.
One quality, format and metadata choice applied across the whole queue. Mixed formats in the same batch are fine.
Download the finished batch as a single archive, or grab individual files from the queue when you only need a few.
Moving a site and inheriting years of unoptimized uploads. Compress the whole media folder before it goes anywhere near the new host.
Dozens or hundreds of product shots at identical settings, so the grid loads evenly instead of one image at a time.
Export the library, compress the batch here, re-upload. No plugin, no server load, no per-image credits.
A shoot folder that is too heavy to email or share. Drop the quality a step and the whole set becomes sendable.
Email clients punish heavy images. Run every asset for the send through one pass at the same setting.
Texture and sprite folders where bundle size matters. Convert and compress the batch in one go.
Compressing images one at a time is the actual problem here. The work is not hard, it is repetitive: open a file, pick a quality, save, repeat eighty times. This page collapses that into a single pass. Drop everything, choose the quality once, and every file is re-encoded with the same setting and handed back as one ZIP.
The queue is per-file even though the setting is shared. Each row shows its original size, its new size and whether it succeeded, so an image that was already well compressed is visible as a small saving rather than being averaged away. If one file in two hundred is corrupt, that row fails with a reason and the rest of the run continues.
What actually limits a batch is your device, not a plan. Files are processed one after another so the WebAssembly encoder never holds more than one image at a time, but the queue does keep each source file and its compressed result in memory until you download. Two hundred is comfortable on a laptop and ambitious on an old phone. If a very large batch slows to a crawl, split it in half and run it twice.
Quality 75 to 80 is the sweet spot for photographs. Most people cannot see the difference, and the size drop is substantial.
Check the aggregate total before downloading. If the batch barely shrank, the folder was already optimized and there is nothing to win.
Mixed formats are fine in one batch. Leave the output on source to keep each file's format, or pick one format to convert everything.
If a very large batch stalls, split it. Memory is the real limit, and two runs of a hundred behave better than one of four hundred on a modest device.
Need every file under an exact size like 100 KB rather than a shared quality? That is a different job — use the KB-target tool.
Drop them all in together, pick one quality setting, and start the run. Every file is compressed with the same setting and the finished batch downloads as a single ZIP. You never open files individually.
Up to 200 per batch, at 100 MB per file. There is no usage counter and no paid tier waiting after a certain number of runs. What genuinely limits a batch is your device's memory, since the queue holds each source file and its result until you download.
No. Compression runs inside the page using WebAssembly, so every file stays on your device. That also means a folder of 200 images starts right away, with no wait to send files to a server.
Yes. Leave the output format on source and each file keeps its own format. Choose an explicit format instead and the whole batch is converted as it is compressed, which is handy when you want everything as WebP.
That row is marked failed with the reason and the run carries on. A single corrupt or unsupported file in a large batch never costs you the rest of the work.
No, deliberately. Files run one after another so the encoder only ever holds one image in memory, which is what makes a 200-file batch safe on ordinary hardware. Progress is shown live so you can see where the queue is.
Yes. Animated GIF and WebP files are rebuilt frame by frame and written back as animation, so they do not come out as a single still frame the way many batch tools return them.
Same engine, different framing. The hub is built around one image and its settings; this page is built around a folder, a shared setting and a ZIP. If you are compressing two or three files, either works.
The single-image compressor with the same engine and controls.
Resize a whole folder to the same dimensions and download as a ZIP.
WebP-specific compression with a lossy or lossless choice.
Make a single image smaller when you do not need the batch queue.
Hit an exact file size target instead of sharing one quality setting.
Two hundred images, one setting, one archive. Free, and nothing leaves your device.