1. Switch to WebP
The format is the multiplier for everything else. WebP needs 25–35% fewer bytes than JPEG and 60–85% fewer than PNG for the same look. Start here: convert to WebP.
When the file has to stay a JPG or a PNG (an upload form, a client, an e-mail), compress it in its own format instead: a camera JPEG re-encoded at quality 75 usually loses 50–80% of its weight, and a PNG reduced to a 256-color palette 50–80%, transparency included.
2. Resize to the displayed size
Pixels you never display are pure waste. A 4000 px photo shown at 1200 px carries 11× more pixels than needed. Cap the width at the largest display size × 2; the byte savings are typically 70–90% before compression even starts.
3. Use the right quality, not the maximum
Quality 100 is not 'no loss'; it is 'no visible gain'. For photos, 80 is indistinguishable from 100 at a third of the size. Graphics with text need 85–92. See our quality guide for the full data.
4. Strip metadata
Camera JPEGs carry EXIF data, embedded thumbnails and colour profiles that can total 50–100 KB. Browser-based conversion drops them automatically, which also removes GPS coordinates you may not want to publish.
5. Avoid compressing twice
Each lossy save discards a little more. Convert from the original (RAW, PNG export or first-generation JPEG), not from a copy that WhatsApp or a CMS already re-compressed. One well-chosen conversion beats three careless ones.
Putting it together
| Step | Example file size |
|---|---|
| Original phone photo (JPEG, 4032 px) | 4.2 MB |
| Resized to 1600 px (JPEG q92) | 780 KB |
| Converted to WebP q80 | 190 KB |
| Total reduction | 95.5% |
Need an exact size, like 100 KB?
Upload forms and portals often state a maximum in KB. Type it in the compressor's target size: it keeps the highest quality that fits and reduces the dimensions only when it has to. The specific-size guide explains which dimensions fit which size.