How to use
- Drop your file(s) into the box above — or click it to browse.
- Conversion starts immediately; the tabs switch to a different output format. Adjust the quality slider to re-encode instantly.
- Click Download on each finished file — or Download all (.zip) for a batch. Nothing was uploaded at any point.
Where the size actually goes
Two things make a photo heavy: pixel count and encoding quality. A modern phone shoots 4,000+ pixels wide, but a web page, chat app or upload form rarely displays more than 1,600 — so downscaling alone often cuts 80% with zero visible cost. The quality slider then trims what the encoder keeps: our measured curve shows size climbing gently up to ~80, steeply after 90, and exploding at 100. The practical recipe for "make this fit under 1 MB" is almost always max-width first, quality second.
Choosing WebP output applies the same recipe with a better encoder — in our measurements it ran 30–61% smaller than JPG at the same quality setting. Stick to JPG when the destination is old software, e-mail or print.
| Control | Effect | Visible cost |
|---|---|---|
| Max width | Removes pixels (e.g. 4032 → 1600) | None at typical display sizes |
| Quality 92 (default) | Light encoding loss | None in normal viewing |
| Quality 70–80 | Strong size cut | Minimal on photos |
| Quality ≤ 50 | Aggressive | Softness, ringing on edges |
| JPG → WebP switch | 30–60% smaller at same setting | None (modern browsers) |
When NOT to compress
- Archival originals — compression is one-way; keep the camera file and compress copies.
- Images that will be edited again — every lossy re-save stacks artifacts; edit first, compress last.
- Text-heavy screenshots — lossy encoders blur small text first. Keep PNG, or downscale without dropping quality.
- Already-optimized files — a 40 KB thumbnail has little left to give; check the size line before keeping a re-encode.