Image Tools

How to Reduce JPEG File Size Without Losing Quality

A practical guide to shrinking JPEGs while keeping the detail that matters, including the one encoder setting most online tools get wrong.

Almost every "compress your image" tool makes the same silent trade: it throws away half of your colour information and hopes you will not notice. You can usually spot the result on skin tones, red flowers, thin coloured text, and any photo with strong colour edges. Quality sliders do not fix it, because it is not a quality problem.

What actually makes a JPEG big

A JPEG stores brightness at full resolution and colour at reduced resolution. The ratio is called chroma subsampling:

Many cameras and image generators export 4:4:4. Many encoders, when asked for a "web" or "compressed" JPEG, quietly convert to 4:2:0. That conversion is irreversible: the colour detail is discarded before any quality slider is consulted.

We measured this on a set of 1,195 generated illustrations. Re-encoding at the same quality but dropping 4:4:4 to 4:2:0 pushed the worst colour channel from 0.984 SSIM down to 0.975, with the worst single image falling to 0.944. Raising the JPEG quality did not recover it.

The quality number is not a percentage

A JPEG "quality" of 80 does not mean "80% of the original". It is an index into a table of quantization steps that was defined in 1992 and has no physical meaning. Two encoders both claiming quality 80 can differ in file size by 40% at the same visual quality.

Practical ranges for photographic content:

What this tool does differently

We read the chroma subsampling out of your file's header before touching it, and keep it unchanged. If your image is 4:4:4, it stays 4:4:4. Most tools cannot tell you what your file used; we show it on every image before you compress.

We also refuse to spend your quality for nothing. If your file is already compressed (say an earlier export at q70), re-encoding it at q80 makes the file larger while looking no better — the encoder is spending bits describing compression artifacts. We detect that case and, instead of guessing, run a lossless pass: the entropy coding is rewritten, the image data is left bit-for-bit identical. On baseline JPEGs that typically saves about 4%.

A workflow that works

Everything runs in your browser. Your images are never uploaded.

Open the compressor