Image Resizer
Choose an image
Pick a file above and the resized version appears here. Nothing is uploaded. The image is read and processed in this page.
Resizing takes an image to exact pixel dimensions or scales it by percentage, and saves as JPEG, PNG or WebP. Large reductions are done in stages rather than one jump, which is the difference between a sharp result and a soft one, and it is the thing most browser-based resizers get wrong.
How it works
When a browser shrinks an image by more than about half in a single draw, it switches to a cheap sampling filter that simply throws pixels away. Detail that should have been averaged into the result is discarded, and the output looks soft and aliased.
- The image is halved repeatedly until one more halving would overshoot, then drawn once at the target size. A 4000px image heading for 200px goes 2000, 1000, 500, 250, then 200.
- Each intermediate step uses high-quality smoothing, so detail is averaged rather than dropped.
- Keeping the aspect ratio derives the locked dimension from the exact ratio rather than from the rounded one, so repeated resizes do not drift.
- Enlarging cannot add detail. Scaling a 200px image to 800px interpolates between the pixels that are there; it does not recover anything.
The file is read with the browser file API and processed on a canvas in this page. Nothing is uploaded, which matters for photographs more than for most file types.
Examples
A photo down to a thumbnail
From
4000 × 3000
To
200px wide
Result
200 × 150, drawn in 5 steps
The area factor is 300× smaller. Done in one draw the result is visibly soft; stepped down it holds its edges.
Halving by percentage
Scale
50%
Result
Both dimensions halved, area quartered
Halving each side quarters the pixel count, which is why a 50% resize saves far more file size than it sounds like it should.
A ratio that does not divide evenly
From
1920 × 1080
To
500px wide
Result
500 × 281
1080 × (500/1920) is 281.25, rounded to 281. The locked dimension is computed from the exact ratio so the shape stays right.
Frequently asked questions
Why does resizing here look sharper than in other browser tools?
Because large reductions are done in halving steps. A browser drawing a 4000px image straight down to 200px uses a fast filter that discards pixels rather than averaging them. Stepping down keeps every pixel contributing to the result.
Can I make a small image bigger without losing quality?
Not really. Enlarging interpolates between existing pixels. It invents plausible values. It does not recover detail that was never captured. Up to about 150% is usually acceptable; beyond that the softness is obvious. Machine-learning upscalers guess convincingly, which is a different thing from accuracy.
Which format should I save as?
JPEG for photographs, WebP for photographs where the destination supports it since it is typically 25 to 35% smaller, and PNG for anything with sharp edges, flat colour or transparency. Saving a photograph as PNG produces a very large file for no visible benefit.
Does resizing reduce the file size?
Substantially, because file size tracks pixel count. Halving both dimensions quarters the pixels, which usually cuts the file to roughly a quarter. Resizing saves far more than adjusting compression quality does, which is why it is the first thing to try.
Is my photo uploaded?
No. It is read with the browser file API and drawn to a canvas in this page. No network request carries the image, which is worth knowing before putting personal photographs into any web resizer.