Cat Toolbox
Help CatBlog About Partnership 中文

Batch Resize and Convert Images: What to Know Before You Run It

ImageUpdated 2026-09-29

Doing twenty files one at a time is where batch tools earn their keep — and where they surprise you, because a batch run applies one rule to inputs that are never quite alike. Here is what Image Batch Processing does, precisely.

Only PNG, JPEG and WebP get in

This is the first thing that trips people up. The file picker is restricted to image/png, image/jpeg and image/webp, and the code repeats the check with a strict type test. Anything else — GIF, BMP, TIFF, HEIC, SVG — is skipped silently. No error, no counter, no message. It just never appears in the list.

So if you are converting from an exotic format, run those files through Image Format Converter one at a time first, then batch the results.

Re-selecting a file you already added is also ignored when both its name and its byte size match an existing entry. Two genuinely different files that happen to share a name are both kept — and since output names are derived from the input name, one will overwrite the other inside the ZIP. Give colliding files distinct names before uploading.

No hard cap, but processing is one-at-a-time

There is no maximum file count and no maximum file size enforced. What the tool does guarantee is that it processes images serially, with a short pause between each, precisely so that memory does not blow up on a large set. Practically:

  • A big batch runs steadily rather than all at once, and the progress bar advances file by file.
  • A single very large image can still exhaust browser memory — that limit is your machine, not the page.
  • If an individual image fails to process, the failure is written to the browser console and the image is left out of the results. The progress bar still completes, because it counts errors as progress.

That last point is the one to check: compare the number in the results header against the number you selected. If they differ, files were skipped — either by the format filter, the duplicate rule, or a processing failure. Do not assume a complete run.

Resize modes, and what aspect locking really does

Three modes: No resize, Pixels, and Percentage.

  • Pixels defaults to 800 × 600.
  • Percentage accepts 1–500 with a default of 100 — so enlarging is allowed here, unlike in the stitching tool, which can only shrink.
  • Lock aspect ratio is on by default.

With locking on and both width and height filled in, the tool does not produce the exact box you typed. It fits the image inside that box: it computes the two possible scale factors (target width ÷ source width and target height ÷ source height) and uses the smaller one, so nothing is cropped and one axis usually ends up shorter than requested. A 3000 × 2000 photo into an 800 × 600 box becomes 800 × 533.

Two more consequences worth knowing:

  • "Fit inside" can enlarge a small source. If every image must not grow, check your smallest input against the target.
  • The width and height fields do not recalculate each other as you type. The ratio is applied at processing time, so the numbers on screen are inputs, not a preview of the output.

If you want every file at exactly one width regardless of height, use Percentage or set a width that matches the sources' ratio — or process a homogeneous set, which is the sane way to work anyway.

Format, quality, and transparency

Output format defaults to Keep original format, with PNG, JPEG and WebP also selectable. Quality defaults to 90 and is sent to the encoder as 0.01–1.00. As with any canvas encoder, the quality number does nothing for PNG output — PNG is lossless.

Transparency is where batch runs quietly ruin things. When the output is JPEG, each image is painted onto a solid white rectangle before drawing, because JPEG has no alpha channel. A logo with a transparent background comes out boxed in white — correct for JPEG, but not what you wanted. For transparency, choose PNG or WebP, or mix: run the opaque photos as JPEG and the graphics separately as PNG.

And note the general rule: every file is re-encoded, even with "No resize" and "Keep original format" and untouched quality. The output bytes are freshly produced by the canvas, so metadata is dropped and an already-optimised JPEG may end up slightly larger. A pass with default settings is not a no-op.

Names and the ZIP

Output filenames keep the original basename and replace the extension according to the actual output format — photo.jpeg processed as JPEG becomes photo.jpg, and a PNG saved out as JPEG becomes photo.jpg too. The extension always tells you the truth about the contents.

Download packages everything as batch-images-<timestamp>.zip, with the images inside a batch-images folder. Packaging needs a ZIP library loaded from a CDN; if that script has not finished loading you get an explicit alert, and nothing is lost — press the button again a moment later.

Two jobs this is not

  • Compressing one image carefully. Single-file tools give you a before/after readout you can inspect; see how to compress an image.
  • Combining images. Joining screenshots into one long picture is a different operation with its own limits; see how to stitch screenshots.

Privacy

Files are read into the page and processed in the tab. There is no upload step and no queue, and the only external script the operation depends on is the ZIP library. The practical caveat is memory rather than confidentiality: a huge batch on a low-RAM device is the failure mode to expect.

Tools used in this guide

Advertisement