Five files, one recipe
The table runs five different files through the recipe Blog featured: 1200x675 WebP under 150 KB, metadata removed. Together they went from 4.99 MB to 508 KB, which is 90% smaller, and every file ended up at 1200 x 675 and under 150 KB. In the benchmark they ran one after another in 4.4 s. In the browser the work is shared between several workers, so a batch finishes sooner on a device with more cores.
| File | Original | After | Change | Pixels | Under 150 KB | Time |
|---|---|---|---|---|---|---|
| photo.jpg | 694 KB | 147 KB | 79% smaller | 1200 x 675 | Yes | 1.3 s |
| photo.png | 3.75 MB | 146 KB | 96% smaller | 1200 x 675 | Yes | 1.3 s |
| photo.webp | 403 KB | 150 KB | 63% smaller | 1200 x 675 | Yes | 1.3 s |
| screenshot.png | 46 KB | 33 KB | 28% smaller | 1200 x 675 | Yes | 296 ms |
| illustration.png | 94 KB | 33 KB | 65% smaller | 1200 x 675 | Yes | 192 ms |
| All five | 4.99 MB | 508 KB | 90% smaller | 4.4 s |
These ran one after another on a single thread. In the browser the work is shared between several workers, so a batch finishes sooner on a multi-core device. Test images are synthetic files made by this project: a 2000 x 1333 landscape photo, a 1600 x 900 interface screenshot and a 1200 x 1200 transparent illustration. Timings: one thread of WebAssembly on Node v22.23.4, Intel(R) Xeon(R) Processor @ 2.10GHz, 2 cores, measured 2026-10-31. Other devices will differ.
How a batch runs
- Add up to 100 images by drag and drop, the file picker, paste or a whole folder.
- The tool starts up to four workers, fewer on devices with few cores or little memory.
- Each file shows its own progress, and Cancel stops the batch and frees the workers.
- Download files one by one, or all as a single ZIP.
The daily limit and big batches
Free use covers 10 images a day. A larger batch runs until the day is used up, and the rest stay in the list with a note that they will be ready after the reset. Once the count has reset, press the button in the bar at the bottom and they continue, as long as the page is still open. Running the same image again with different settings does not count twice.
Recipes
A recipe is a saved set of settings. Four come built in: Blog featured, Social share (1200x630 JPEG under 200 KB), Form upload (JPEG under 50 KB, longest side 800) and Privacy clean (remove metadata only). Choose one from the Recipe list in Advanced settings, change anything, then save your own with a name. Your recipes live in this browser only.
File names, alt text and CSV
In the File names section, build names from tokens such as {name}, {width}, {height}, {index}, {format} and {date}. Names are lowercased with hyphens. Each row also has an alt text field. The CSV button exports the file name, alt text, width, height, size in bytes, format and original name for every finished image.
A typical batch
- Pick a recipe, or set the format, quality, size and file names yourself.
- Drop the files or a whole folder.
- Wait for the progress bars, then open the compare view on two or three results.
- Change a setting if something looks off and press run again to redo the files with the new settings.
- Download a ZIP, and the CSV if you need alt text.
Questions
How many files can I add?
Up to 100 at a time, each up to 120 MB. Add the rest after you clear the list.
Does the ZIP keep my folder names?
No. Files sit at the top level of the ZIP and are named by your pattern.
What if a file fails?
The row shows what went wrong and offers a retry. The other files carry on.
Does it use many cores?
It uses up to four workers, which keeps the page responsive on most devices.