HakoTools

Bulk Image Resizer (Exact px, Batch Zip Download)

Drop in one image or fifty, set the exact pixel width, height, or percentage you need, and download the result — a single file, or a zip if you picked more than one. Format conversion between JPEG, PNG, and WebP is built in.

Published: / Published by the HakoTools team

Drag and drop JPEG, PNG, or WebP images, or

How to specify the size

How it works

What does this bulk image resizer do?

It resizes one image or a whole batch to an exact pixel width, height, or percentage, keeps the aspect ratio correct automatically, and can convert between JPEG, PNG, and WebP at the same time. One file downloads directly; more than one downloads together as a single zip.

How to use it

  1. Drag in the images you want to resize, or click to choose files (multiple at once is fine)
  2. Pick how to specify the size: width, height, or percentage
  3. Enter the value. Pick an output format, or leave it as "Keep original"
  4. Press Resize — one image downloads directly, several download as a zip

The output filename gets the new dimensions appended, like photo_600x400.jpg, so a resized copy never silently overwrites the original.

How is the height calculated when I only set the width?

New height = original height × (target width ÷ original width). The result is rounded to the nearest pixel, with a floor of 1px. Setting a percentage instead scales both dimensions by the same factor, so the ratio never changes no matter which mode you use.

For a typical 4032x3024 smartphone photo (a 4:3 sensor), here is what a handful of common target widths actually produce:

Target widthResulting size
400px400x300px
800px800x600px
1200px1200x900px
1920px1920x1440px

A 50% scale on the same photo gives 2016x1512px — half of each dimension, not half the pixel count (which would need roughly a 71% scale, since area shrinks with the square of the linear scale).

How large a batch can I resize at once?

There's no fixed file-count limit, but the longer side of any single output is capped at 20,000px. That's comfortably under the roughly 32,767px canvas limit most browsers enforce, left as a safety margin so a large batch doesn't exhaust memory and crash the tab. Very large source files or dozens of files at once will still take longer, since everything runs on your device's own CPU.

What formats are supported, and how do I convert between them?

JPEG, PNG, and WebP, both as input and as output. Pick a target format in the dropdown, or leave it on "Keep original" to resize without changing the format. Converting a transparent PNG to JPEG fills the transparent areas with white, since JPEG has no transparency channel.

Do I need to think about DPI, or just pixels?

Just pixels for anything on a screen. A digital image is only a grid of pixels; DPI (dots per inch) only enters the picture when that grid gets printed, as an instruction for how densely to pack those same pixels onto paper. This tool controls pixel dimensions only. If a print shop asks for a specific DPI, multiply the physical size you want in inches by that DPI to get the target pixel width, then resize to that.

Will resizing reduce image quality?

Shrinking loses very little visible detail, since it's averaging existing pixels down into fewer of them. Enlarging is different: the tool has to invent pixels that were never captured, interpolating from the surrounding colors, which is why enlarged images look soft or show jagged diagonal edges. JPEG and WebP output use a fixed 92% quality setting, high enough that the re-encoding itself is not the limiting factor for a single resize.

Are my images uploaded anywhere?

No. Resizing, format conversion, and the zip step all run locally in your browser's JavaScript — nothing is sent to a server, so the tool works offline and is safe for images you wouldn't want passing through a third party.

What else can I make with the other free tools?

Need a barcode instead of an image edit? Try the EAN-13 barcode generator. For a scannable QR code with a choice of error-correction level, use the QR code generator.

Notes

  • Supported formats: JPEG, PNG, WebP. Convert other formats to one of these first
  • Enlarging beyond the original size is allowed but looks softer, since new pixels are interpolated rather than captured
  • Output is capped at 20,000px on the longer side
  • EXIF metadata (capture date, GPS location) is not carried over during re-encoding
  • A batch zip is stored uncompressed, since JPEG/PNG/WebP are already compressed and re-zipping barely shrinks them further

Frequently asked questions

Can I resize more than one image at a time?
Yes. Add as many files as you like — the same width, height, or percentage setting applies to all of them. With one file you get that file back directly; with more than one, everything downloads together as a single zip so you're not saving dozens of files one by one.
Will the aspect ratio stay correct?
Yes, unless you deliberately fight it. Setting only the width calculates the height as original height times (target width / original width), and vice versa for height; a percentage scales both dimensions equally. A 1200x800 photo resized to width 600 becomes exactly 600x400.
What's the largest size I can output?
20,000px on the longer side. That's well under the roughly 32,767px canvas limit most browsers enforce, kept as a safety margin so a large batch doesn't crash the tab from memory pressure.
Are my images uploaded to a server?
No. Resizing, format conversion, and zipping all happen locally in your browser's JavaScript. No image data leaves your device, so it works offline and is safe for images you wouldn't want on a third-party server.
Share this tool: