Resize Image by Pixels
Set an exact width or height in pixels for a JPG, PNG or WebP and keep its proportions, without uploading the file.
1 · Choose an image
2 · New dimensions
While locked, the two fields move together and the picture keeps its own proportions. Unlocked, they describe a box the image is fitted inside — still never stretched and never cropped.
Off by default. Making an image bigger cannot restore detail that was never captured — it only spreads the pixels it has over a larger canvas.
3 · Output
Result
No file chosen yet.
The resized image appears here.
Resizing happens in this browser through a canvas. The file is not uploaded, stored or logged.
Your file is never sent to a server. It is read and processed by your own browser, and the results are not stored.
How to use it
- Choose an image or drag it onto the drop area. Its real width, height and file size are read from the file itself.
- Type a width or a height. With the ratio locked, the other box fills in from the image’s own proportions.
- Or pick a common size. The image is fitted inside that box, which is why the numbers may not match it exactly.
- Press Resize, check the measured output dimensions and file size, then download.
Limits worth knowing
- This tool resizes; it does not crop or pad. A request that does not match the image’s own proportions is fitted inside the box rather than stretched or trimmed to fill it, and the result is stated before you press Resize.
- Enlarging is off by default. Making a 400 px image 1,200 px wide cannot recover detail that was never captured — it only spreads the existing pixels over a larger canvas, and the file usually gets bigger without getting sharper.
- A side may not exceed 8,192 pixels, and the decoded bitmap may not exceed 20 megapixels. Those are the ceilings at which browser tabs fail rather than merely run slowly, so the request is refused before encoding.
- Resizing re-encodes the picture, so the output is not bit-identical to the input and embedded metadata such as EXIF, camera model or GPS position is not carried into a JPEG. Keep the original.
- Transparent areas survive in PNG and WebP. JPEG has no alpha channel, so a background colour is flattened behind them instead.
Why the requested size is not always the result
An image has one fixed ratio. Resizing a 3:2 photograph to a 1:1 frame means either squashing it, which distorts every face in it, or cutting parts off, which is cropping. This tool does neither, so a preset that disagrees with the source becomes a box the image is fitted inside: a 6000 × 4000 photo at the 512 × 512 preset comes back as 512 × 341.
The planned output is shown before anything is encoded, and the measured output is reported from the finished file afterwards. If those two ever disagree, the page says so rather than quietly presenting the number it wanted.
Exact-frame cropping and padding are a different feature and are not offered on this page.
Width, height, or both
With the ratio locked, either box drives the other, and entering a width of 1920 on a 16:9 image fills 1080 in beside it. That is the normal case.
Unlocked, the two numbers describe a maximum width and a maximum height. The image is scaled down to fit inside both, whichever edge binds first, so it never exceeds the box on either side.
Entering the size the image already is produces no operation: the unchanged file is offered instead, because re-encoding it would lose detail for nothing.
Choosing an output format
Keeping the original format is the default and is right almost always. Converting to WebP usually gives the smaller file for the same pixels; JPEG is the most widely accepted; PNG is the one that keeps transparency and is lossless, so its size is whatever the image needs.
On a photograph, resizing to a smaller frame typically reduces the file too, because there are fewer pixels to encode. On a flat graphic or screenshot the file can grow, particularly when converting from JPEG to PNG, and the measured size is reported either way.