Image Resizer
Scale images down to the dimensions you actually ship. Up to 5 images per batch.
How to use
Load up to five images
Sources can be PNG, JPEG or WebP and can be mixed freely. Each is checked against the 25 MB and 8192 pixel limits before it joins the queue.
Set the scale percentage
The slider runs from 10 to 100 percent and applies to the whole batch. Aspect ratio is preserved automatically, so both dimensions scale together.
Process and download
Each image is resampled once and written out as PNG, then packed into a ZIP with its original filename intact.
Key Features
Single resampling pass
The image is drawn once from full resolution straight to the target size. Nothing is scaled in stages, so none of the softening that comes from repeated resampling accumulates.
Aspect ratio locked
Scaling is expressed as one percentage applied to both dimensions, which makes it impossible to accidentally stretch an image by editing one side and forgetting the other.
Lossless output
Results are written as PNG, so the only change to your pixels is the resampling you asked for. No lossy re-encoding happens behind your back.
Applies across the batch
One percentage covers all five images in the queue, which is what you want when you are preparing a set of assets that need to be visually consistent.
Nothing is uploaded
Decoding and resampling both run on a canvas inside a Web Worker in your browser. No image data is transmitted and the tool works offline.
Handles very large sources
Images approaching the browser's maximum canvas dimensions are routed through a working buffer first, which prevents the blank output that otherwise appears on hardware with a lower ceiling.
Frequently Asked Questions
Can I resize by entering exact pixel dimensions?+
Why can I only scale down and not up?+
Does resizing lose quality?+
Should I resize before or after converting format?+
Resize here, then take the PNG output to the WebP or AVIF tool for the final encode.
Does the percentage apply to every image in the batch?+
Why the five image limit?+
Format Comparison
| Feature Specification | image resizing | Alternative |
|---|---|---|
| Resampling passes | One, straight to target | Several, compounding softness |
| Aspect ratio | Locked by construction | Easy to distort |
| Output compression | Lossless PNG | Often re-encoded lossily |
| Very large sources | Buffered to stay in platform limits | Can silently produce blank output |
| Where it runs | Entirely in your browser | Uploaded and processed remotely |
Technical Overview & Specifications
Deep dive into image resizing architecture and processing.
Show DetailsHide Details
Technical Overview & Specifications
Deep dive into image resizing architecture and processing.
Platform Overview
Most images on the web are far larger than the space they occupy. A photograph straight off a phone is four thousand pixels wide; the container it is being dropped into is eight hundred. The browser will dutifully download all four thousand pixels worth of data, decode the whole thing into memory, and then throw three quarters of it away on every single page load for every single visitor. Resizing before you ship is the least glamorous performance work available and reliably one of the most effective, because it reduces bytes on the wire, decode time on the client, and memory pressure on whatever device is unlucky enough to be rendering it.
This tool scales down in a single pass. You set a percentage between 10 and 100, and the image is drawn once from its full resolution source into a canvas of the target size. One resample, not several: repeatedly halving an image, or scaling it down and then back up, softens edges a little each time and those losses accumulate visibly. Output is PNG so the resize itself introduces no compression loss on top of the resampling. Five images per batch, all processed locally, and if you want to change format afterwards the WebP and AVIF tools will take the result.
What happens during a downscale
Resizing is resampling: the output grid does not line up with the input grid, so every destination pixel has to be computed from some neighbourhood of source pixels. Browsers do this with a filtered interpolation rather than nearest-neighbour sampling, which is why a canvas downscale looks smooth instead of aliased and full of jagged edges. The important consequence is that resampling is not free and it is not reversible. Each pass makes a set of decisions about how to blend neighbouring pixels, and doing it repeatedly compounds those decisions until edges that were crisp in the original have been averaged into something noticeably softer.
That is the reason this tool computes a single target size and draws once. Inside the worker the source is decoded to an image bitmap at full resolution, a target width and height are calculated from your percentage, and one drawImage call maps the source rectangle onto a canvas of exactly those dimensions. Any crop you have set is applied in the same call, as the source rectangle, so cropping and scaling together still amount to one resample rather than two. Before any of this, sources close to the browser's maximum canvas size are passed through a working buffer sized to stay within the platform limit, because exceeding it does not throw an error, it silently yields a blank canvas.