The short answer
- Too many pixels is the usual problem. A phone photo has about 12 million. Halving the width and height leaves a quarter of the pixels and, in our test below, a third of the KB, and on a screen or a form the picture looks just as sharp. Resize first.
- Quality 70–80 is the sweet spot for JPG, WebP and AVIF. Above 85 the file grows fast for detail nobody sees; below 60 blocks and smears appear. Compress JPEG.
- The format sets the baseline. Photos belong in JPG, WebP or AVIF; PNG is for screenshots, logos and transparency. A photo saved as PNG is many times larger. Convert images.
“Without losing quality” in practice means without visible loss at the size the image is viewed. Only lossless PNG keeps every pixel, and it is the largest option for photos.
The test images
To make the numbers comparable, every row below starts from the same files, processed with this site’s own tools on 28 October 2026:
- Photo: a 4032 × 3024 pixel landscape (the pixel count of a 12-megapixel phone photo) with sky, clouds, trees, a house, a sign with text, and fine texture and grain, saved as a high-quality JPG of 2.64 MB. It is a synthetic test image generated in the browser, not a real photograph; real photos with more fine detail (foliage, hair, fabric) come out somewhat larger, plain backgrounds smaller.
- Screenshot: a 1600 × 1000 pixel table of orders with 16-pixel text, saved as PNG (230 KB).
1. Pixels: fewer pixels, fewer KB
File size grows with the number of pixels, which is width × height. Every row here uses JPG at quality 75; only the longest side changes.
| Size in pixels | Megapixels | File size | Compared with the original |
|---|---|---|---|
| 4032 × 3024 (original size) | 12.2 | 674 KB | 74% smaller |
| 3000 × 2250 | 6.8 | 433 KB | 84% smaller |
| 2000 × 1500 | 3.0 | 224 KB | 92% smaller |
| 1200 × 900 | 1.1 | 91 KB | 97% smaller |
| 600 × 450 | 0.27 | 30 KB | 99% smaller |
Going from 4032 to 2000 pixels wide removes three quarters of the pixels and two thirds of the bytes (674 KB → 224 KB). On a laptop screen, in an email or on a web page, 2000 pixels is already more than is shown.
Reduce the pixels when: the image is bigger than it will be displayed, a form gives a pixel size, or a KB limit is far below the current size. Use Resize image (longest side 1600–2000 px for screens) or crop away background with Crop image.
2. Quality: the encoder’s setting
JPG, WebP and AVIF are lossy: the quality number decides how much fine detail the encoder may approximate. Same photo, resized to 2000 × 1500, JPG with MozJPEG:
| JPG quality | File size | Typical result |
|---|---|---|
| 95 | 936 KB | Practically identical to the original; four times the bytes of quality 75 |
| 85 | 376 KB | Hard to tell apart at normal size |
| 75 | 224 KB | Hard to tell apart; the usual choice |
| 60 | 146 KB | Slight softness in fine texture such as grass and skin |
| 40 | 93 KB | Blocks in smooth areas and halos around edges become visible |
Notice the trade-off between the two levers: 2000 × 1500 at quality 40 (93 KB) is about the same size as 1200 × 900 at quality 75 (91 KB). The smaller, cleaner image almost always looks better than the larger, blocky one, which is why Kilomill’s KB target keeps the quality reasonable and reduces the pixels instead when the limit is tight.
Lower the quality when: the pixel size is fixed (a form demands it) and the file is still too big, or for images on your own website. Stay at 70–80; check faces and text with Compare → Zoom to 100%. Use Compress JPEG or the image compressor.
3. Format: pick the right container first
Same photo at 2000 × 1500, quality 75 for the lossy formats:
| Format | File size | Notes |
|---|---|---|
| JPG (MozJPEG) | 224 KB | Opens everywhere; the safe choice for forms and email |
| WebP (libwebp) | 137 KB | 39% smaller than JPG; all current browsers |
| AVIF (libavif) | 88 KB | 61% smaller than JPG; browsers yes, many apps and forms not yet |
| PNG (smart) | 3.68 MB | 16 times the JPG: PNG is the wrong format for photos |
For the screenshot the picture is different, because sharp text matters more than smooth gradients:
| Screenshot saved as | File size | Pixels kept exactly? |
|---|---|---|
| PNG as originally saved | 230 KB | Yes |
| PNG, lossless (OxiPNG) | 112 KB | Yes |
| PNG, smart (reduced colours) | 92 KB | No: at most 256 colours, edges stay sharp |
| JPG quality 75 | 85 KB | No: lossy |
| JPG quality 90 | 162 KB | No: lossy |
| WebP quality 75 | 57 KB | No: lossy |
| WebP quality 90 | 82 KB | No: lossy |
Re-packing the PNG losslessly already halved it, without changing a pixel. JPG is smaller than the smart PNG only at quality 75, where JPEG compression starts to leave artefacts around sharp text; at quality 90 it is larger than both PNGs. WebP is the smallest, but not every app and upload form accepts it.
Change the format when: a photo is stored as PNG (PNG to JPG), an iPhone photo will not open elsewhere (HEIC to JPG), an image saved from a website will not open (WebP to JPG, WebP to PNG, AVIF to JPG), you will edit a photo many times (JPG to PNG stops further loss), or you control the website and can serve WebP or AVIF (JPG to WebP). Keep screenshots, logos and anything transparent as PNG and use Compress PNG.
4. When you only know the KB limit
Forms usually give a maximum file size and nothing else. Kilomill’s target mode searches for the highest quality that fits and reduces the pixels only when needed. From the same 2.64 MB photo:
| Limit | Result | Pixels | JPG quality |
|---|---|---|---|
| 200 KB | 194 KB | 2478 × 1859 | 57 |
| 100 KB | 98 KB | 1659 × 1244 | 57 |
| 50 KB | 50 KB | 1107 × 830 | 56 |
(Sizes here are in thousands of bytes; each file is below its limit counted either way, 1,000 or 1,024 bytes per KB.) If the form also gives a pixel size, set it under Dimensions first and the search works within it. For any other limit use compress to a size in KB; for exam and visa forms, the photo and signature size table fills the limits in for you.
Which lever to pull first
| Situation | First step | Then |
|---|---|---|
| Phone photo for email or chat | Resize to 2000 px longest side | Quality 75–80 |
| Form with a KB limit only | Target size | Crop away background if the result looks soft |
| Form with pixels and KB | Crop to the shape, set the pixels | Target size |
| Photo saved as PNG | Convert to JPG | Quality 75–80 |
| Screenshot or logo | Smart or lossless PNG | Crop and resize to the displayed size |
| Images for your own website | Resize to the layout width (×2 for sharp screens) | WebP or AVIF at 75 |
How these numbers were measured
All sizes were produced on 28 October 2026 with the Kilomill tools on this site, in Chrome, using the settings shown (resizing by longest side with Lanczos3; “keep the original when smaller” switched off so every row is a fresh encode). AVIF uses Kilomill’s quality scale, which maps 75 to the encoder’s 56. Your own images will give different absolute numbers, but the relationships hold: pixels and format move the size most, quality fine-tunes it.