How image compression actually works

A short explanation of the two families of image compression, why lossless and lossy behave so differently, and what that means for repeated conversions.

Every image format in common use belongs to one of two families, and knowing which one you are dealing with explains most of the surprises.

Lossless: the pixels are the data

PNG, GIF, BMP and TIFF all store pixels without discarding information. PNG and TIFF achieve their compression by describing the image more cleverly, not by throwing anything away. Rows of identical pixels become a short instruction meaning "repeat this", and the result can be reversed exactly.

A useful consequence: you can convert between lossless formats as many times as you like. PNG to BMP to TIFF and back to PNG returns you to precisely the pixels you started with.

BMP is the exception, in that it is lossless but barely compressed. A 1920 by 1080 BMP is roughly six megabytes regardless of content, because it stores three bytes per pixel with no cleverness at all.

Lossy: keep what the eye will not miss

JPG divides the image into blocks, transforms each block into a description of its frequencies, and then rounds the fine detail away. Smooth gradients survive well; sharp edges are expensive to describe and get approximated. WebP lossy and AVIF work in the same spirit with more modern tools.

The rounding is where the damage comes from, and it is permanent. There is no way to reverse it, because the information is gone rather than hidden. This is why converting JPG to PNG never improves anything: PNG faithfully preserves the artefacts JPG introduced.

Why repeated lossy saves are worse than one

Each save re-analyses the already-damaged image and damages it again. Errors compound, and the visible result after several rounds is a soft, mottled image with halos around high-contrast edges. The usual advice, keep a lossless master and export a lossy copy when needed, exists to avoid exactly this.

What this means for conversion

  • Lossless to lossless: no quality change at all. Do it freely.
  • Lossless to lossy: quality is set once by the quality control. Going back to lossless afterwards does not undo it.
  • Lossy to lossless: the file gets much larger and the quality stays exactly the same.
  • Lossy to lossy: two rounds of loss. Convert once, and if you need to go back, start from the original.

Alpha, the other axis

Transparency is independent of the lossless question. PNG, WebP and AVIF store an alpha channel; JPG and BMP do not. Converting an image with transparency to JPG means compositing it onto a solid colour, which is a visible change rather than a quality setting. The conversion tool reports when this happens.


Convert an image now

The converter reads PNG, JPG, GIF, BMP, TIFF, ICO, WebP, AVIF, HEIC and SVG, and writes PNG, JPG, WebP, GIF, BMP, TIFF, ICO, AVIF and PDF. It states for each file whether the work happened on your device or on the server.

Converters mentioned in this guide

More guides