What we tested
When shrinking an image, it is hard to know what JPEG “quality” to pick. So we saved images at a range of quality settings, using the same method as this site’s image compressor and resizer, and measured the file size and how much quality was lost.
- Quality 100% came out about 3.5 times the size of 95%, with almost no visible difference.
- At the same quality number, WebP was 30–60% smaller than JPEG. But WebP at 100% switches to lossless and ends up larger than JPEG.
- Re-saving the same image unchanged barely lost anything. Cropping even slightly before each save made quality drop every time.
Method
- Scale each sample image to 1920 × 1200 pixels, a common size for social media and the web.
- Save it as JPEG and WebP at quality 10% to 100% using
canvas.toBlobin the browser (Chromium 152) — the same saving method as the site’s image tools. - Load each saved image back and measure how far it is from the original with PSNR.
PSNR (peak signal-to-noise ratio) expresses how different an image is from the original; higher means closer. It is measured in dB. Above about 40 dB, differences are generally hard to see even side by side; around 30 dB, blocky noise and haze are clearly visible.
For samples we used three photo-like CG wallpapers that ship with Windows 11 (every Windows PC has them, so anyone can repeat the test), plus a figure of text and a chart that we drew ourselves.
What a quality “%” means differs from one program to another. These results come from Chromium-based browsers such as Chrome and Edge, and “90%” in an image editor or a phone camera may not match.
Result 1: quality versus file size
Results for the landscape image. Saved losslessly as PNG, the original was 3,268 KB.
| Quality | JPEG size | JPEG PSNR | WebP size | WebP PSNR |
|---|---|---|---|---|
| 10% | 23 KB | 31.5 dB | 17 KB | 35.0 dB |
| 30% | 46 KB | 36.2 dB | 27 KB | 36.5 dB |
| 50% | 66 KB | 37.6 dB | 40 KB | 37.9 dB |
| 70% | 95 KB | 38.9 dB | 53 KB | 38.8 dB |
| 80% | 130 KB | 40.0 dB | 75 KB | 40.1 dB |
| 90% | 237 KB | 41.8 dB | 153 KB | 42.1 dB |
| 95% | 412 KB | 43.4 dB | 272 KB | 43.2 dB |
| 100% | 1,426 KB | 56.3 dB | 1,718 KB | lossless |
What this shows
- 100% is not worth it: going from 95% to 100% made the file about 3.5 times larger (412 KB → 1,426 KB). PSNR rises a lot, but at 95% there is already almost no visible difference.
- Even 90% → 95% costs about 1.7×: a small step in quality means a big step in size.
- Around 70–85% is the sweet spot: 80% still gave 40 dB at about 1/25 of the PNG (130 KB). The site’s image compressor starts at 70%.
- WebP 100% is a different mode: Chromium’s WebP encoder switches to lossless when you ask for 100%, which made it 1,718 KB — larger than JPEG at 100%.
Result 2: differences between kinds of image
We saved all four images at quality 80% and compared them.
| Image | PNG | JPEG 80% | WebP 80% | WebP saving |
|---|---|---|---|---|
| Landscape (sky, water, grass) | 3,268 KB | 130 KB 40.0 dB | 75 KB 40.1 dB | −42% |
| Fine texture (grainy surfaces) | 1,582 KB | 148 KB 35.8 dB | 97 KB 36.6 dB | −34% |
| Smooth gradients | 2,432 KB | 139 KB 39.6 dB | 77 KB 40.2 dB | −45% |
| Text and a chart (drawn for this test) | 162 KB | 92 KB 40.9 dB | 40 KB 42.1 dB | −57% |
- For every image, WebP was smaller than JPEG with the same or higher PSNR.
- The fine-texture image scored lower at the same 80% (35.8 dB): the finer the detail, the more information compression throws away.
- PNG wins for text and diagrams: the text-and-chart figure was only 162 KB as PNG, with no loss at all. JPEG leaves haze (mosquito noise) around letter edges, so screenshots and slide figures are better as PNG or WebP.
Result 3: how much re-saving hurts
It is often said that a JPEG gets worse every time it is saved. We saved the landscape at quality 90% ten times in a row and compared each result with the original.
| Saves | Re-saved unchanged | Cropped by 1 pixel before each save |
|---|---|---|
| 1 | 41.8 dB | 41.8 dB |
| 2 | 41.7 dB | 40.5 dB |
| 3 | 41.7 dB | 39.7 dB |
| 5 | 41.7 dB | 38.4 dB |
| 10 | 41.7 dB | 36.1 dB |
- Re-saving unchanged barely hurts: at the same size and quality, the second and later saves were nearly identical, losing only 0.1 dB over ten saves. JPEG compresses the image in 8 × 8 pixel blocks, and a block that has already been compressed comes back almost the same under the same settings.
- Cropping or resizing in between hurts every time: removing just one pixel before each save shifts the block grid, so every save compresses fresh blocks. After ten saves PSNR fell to 36.1 dB — worse than a single save at 50% (37.6 dB).
When photos degrade after being forwarded through social media or messaging apps, it is likely because the service resizes or crops them and saves them again each time. When editing, work from the original image, not from a JPEG you have already saved.
Summary: choosing a quality
- Photos for websites and blogs: JPEG at 70–85%. Where WebP is supported, 70–80% WebP is smaller still.
- Skip 100%: 95% is plenty for JPEG. WebP at 100% switches to lossless and becomes larger.
- Screenshots and text-heavy figures: PNG (or WebP).
- Keep the original: repeatedly cropping or resizing and then saving steadily lowers quality.