Resize & Crop Image
Client-side image resizing. 100% private, no server upload required.
What resizing actually does to your pixels
Resizing an image is resampling: the tool builds a new pixel grid at the size you asked for, and every pixel in that grid is derived from a weighted average of the source pixels sitting underneath it. That is a different operation from cropping, which throws away everything outside a rectangle and leaves the remaining pixels untouched. This page does both, and the distinction matters for what you get back.
Typing a new width scales the height to match automatically, and vice versa, so the image cannot end up stretched. If you genuinely want a different aspect ratio, switch to crop mode and select the region you want, rather than distorting the whole frame.
Shrinking is safe; enlarging is not
Discarding pixels is well-defined: several source pixels get averaged into one, and the result is a smaller image that is a faithful summary of the original. Going the other way is not. Enlarging past the source resolution has to invent detail that was never captured, which is why this tool will not upscale beyond the original dimensions. A 600-pixel-wide image blown up to 2000 pixels is still a 600-pixel image with softer edges.
Cropping loses nothing at all. No pixel that survives the crop is recalculated, so the region you keep is bit-for-bit what the camera or screenshot produced.
Where the quality actually goes
Any visible degradation almost always comes from re-encoding, not from the resample. The output format here follows the input: a JPEG comes back as a JPEG, and anything else comes back as a PNG. So resizing a PNG screenshot is lossless from end to end, while resizing a JPEG photo adds one more generation of JPEG compression on top of whatever the original already had. Repeatedly resizing and re-saving the same JPEG is what accumulates artefacts, not any single pass.
DPI is not resolution
A request for a 300 DPI image is really a request for enough pixels. DPI is a metadata field that tells a printer how densely to lay the pixels down; it does not change how many there are. If a print shop wants a 4-inch-wide image at 300 DPI, what they need is 1200 pixels across. Set the pixel dimensions and the DPI tag takes care of itself.
One practical limit worth knowing: the image is decoded into a canvas at full resolution before anything happens to it, so a 50-megapixel photo occupies roughly 200 MB of memory while it is being worked on, regardless of how small the compressed file on disk was. That, rather than any upload cap, is what a very large image runs into on a phone.