Image resizer

Resize by pixels or percentage, in your browser. The file never leaves your device.

How it works

Resizing happens on an HTML canvas in this tab. The file is read with createImageBitmap, drawn at the new dimensions, and re-encoded. It is never sent anywhere — there is no server to send it to.

Downscaling versus upscaling

Downscaling discards information and generally looks fine. Upscaling has to invent pixels; the browser interpolates between neighbours, which produces a blurry approximation. No amount of resizing recovers detail that was never captured.

Choosing a format

PNG
Lossless with transparency. Best for screenshots, logos and line art. Large for photographs.
JPEG
Lossy, no transparency, excellent for photographs. Quality 80–90% is usually indistinguishable from the original at a fraction of the size.
WebP
Typically 25–35% smaller than JPEG at the same visual quality, with transparency support. Supported by every current browser.

Re-encoding a JPEG loses a little each time

JPEG compression is lossy and generational: opening and re-saving repeatedly accumulates artefacts. Resize from the original wherever possible rather than from a previously exported copy.

Transparency and JPEG

JPEG has no alpha channel, so transparent areas are filled with white before encoding. Choosing JPEG for an image with transparency is a one-way change.