Compress Images Online — Private, in Your Browser
Make images smaller while keeping their format. Leave it on Best balance for a safe default, or pick a size to hit, such as 100KB or 1MB. Everything happens on your device.
Your image files never leave your device.
or drag and drop images here
Supports: JPG · PNG · WebP · AVIF · HEIC (beta) · GIF · BMP
Up to 100 images at once.
You can also paste an image (Ctrl+V or ⌘V).
Settings
Output format
Good to know
- Best balance keeps each file’s format and keeps the original pixels when a re-encode would not make it smaller. A photo with a rotation tag is the exception: it is re-encoded to stay upright and can come out larger.
- Pick a target such as 100KB or 1MB and PrivaPress searches for the best quality that fits.
- PNG is lossless, so a size limit on a PNG can only be met by shrinking the image. WebP or JPG keep more detail.
How to compress an image
- Add your images: drag them in, choose files, or paste from the clipboard. Up to 100 at a time.
- Leave Best balance on for a safe default, or pick a size to hit, such as 100KB, 500KB or 1MB.
- Press Start. The result list shows every file’s size before and after, and says which files could not be made smaller.
- Download one file, a selection, or everything as a ZIP. Your originals are never changed.
Best balance or a target size?
- Best balance keeps each file’s format and asks how small it can get without a visible change. If a new encode would not make the file smaller, the original pixels are kept and the file is marked.
- A target size works the other way round: it asks for a file under a number, such as 100KB, and gives up detail until the file fits. Use it when a form or upload limit sets the number.
- JPG, WebP and AVIF are lossy, so quality can be lowered to save space. PNG is lossless: the only way to make a PNG much smaller is to reduce its pixel dimensions.
- You can add JPG, PNG, WebP, AVIF, GIF and BMP. HEIC (iPhone photos) is in beta and only opens in browsers that can decode it.
Measured examples
These numbers come from our automated tests of the real engine on 1 November 2026, using test images we generated (synthetic pictures full of fine grain, which are harder to compress than most real photos). Your own results will differ, and the result list shows them. A 2400 × 1600 JPG of 1,276,298 bytes asked for 100KB came out at 97,077 bytes and 2391 × 1594 pixels: lowering quality was almost enough on its own. Asked for 50KB it needed 48,323 bytes and 1958 × 1305 pixels, so the picture itself had to shrink. A 1600 × 1200 PNG of 3,838,124 bytes could only reach 200KB (190,794 bytes) by shrinking to 395 × 296 pixels, while the same picture saved as a JPG fitted 100KB (98,777 bytes) at its full 1600 × 1200.
Limits
- Small targets cost detail. The lower the number, the more quality is given up, and below a floor the picture itself is made smaller (never below 240 pixels on its long edge).
- Some pictures cannot reach a very small target. In the same tests a noise-filled image asked for 1KB ended at 3,360 bytes and was reported as not reached, never as a pass.
- A target larger than the file does not make it bigger: a 1,276,298-byte JPG asked for 2MB came back unchanged.
- Flat graphics and screenshots can grow when saved as JPG. In the tests a 47,357-byte flat PNG became 78,229 bytes as a JPG but 14,540 bytes as a WebP.
- File size follows pixel count. Halving width and height leaves a quarter of the pixels, so for a very large photo Resize Images is the strongest lever.
- A photo with a rotation tag is re-encoded to stay upright and can come out larger.
Processed in your browser
Compression runs on your device. Your browser loads the page and the image engine from this site, then works on your files locally; they are not uploaded. Reloading the page removes the images you added.