I♥.png

How to resize an image without losing quality

Shrinking an image can be done with no visible quality loss if the resize averages pixels rather than skipping them — step down in halves rather than in one jump. Enlarging is different: no tool can recover detail that was never captured, so an upscaled image is always softer than a native one at that size.

Why naive shrinking looks bad

A single large downscale samples one source pixel for each output pixel and ignores the rest. Fine detail that falls between the samples is thrown away unevenly, which shows up as jagged edges and shimmering on repeated patterns — aliasing.

Halving repeatedly fixes it. Each halving averages four pixels into one, so every source pixel contributes something to the result. Going 4000 → 2000 → 1000 → 600 preserves far more than going 4000 → 600 directly.

Enlarging: what is actually possible

Interpolation makes the file bigger and the edges smoother. It does not add information, because the information is not there. A 2× enlargement usually holds up; by 4× the softness is obvious at any size.

AI upscalers invent plausible detail rather than recovering real detail. For a hero image that is often fine. For anything where accuracy matters — a document, a product photo, evidence — the invented detail is a liability, not a feature.

The real fix is upstream: start from the largest original you have rather than an already-shrunk copy.

Picking the right size

Measure the space the image occupies on screen and double it for retina displays. A 600px-wide column wants a 1200px image. Beyond that you are paying bandwidth for pixels nobody will ever see.

Resize first, then compress. Doing it the other way round compresses pixels you are about to discard.

Resize an image