Compress PNG images
Drop PNGs below and get smaller PNGs back, with transparency intact. Pick Lossless to change nothing, or Smart for the big savings. Up to 16 MB a file as a guest or 32 MB with a free account. Free. No account, no watermark.
Measured, not estimated
What compression did to four real PNGs
Two screenshots, a social card and a transparent icon from our showcase, compressed as PNG at each level.
| Sample | Original | Lossless | Smart | Ultra |
|---|---|---|---|---|
| Social card 1200 by 630 | 208 KB PNG | 152 KB 27.2% smaller | 44 KB 79.1% smaller | 36 KB 82.8% smaller |
| Phone screenshot 1170 by 2532 | 0.9 MB PNG | 745 KB 22.3% smaller | 260 KB 72.9% smaller | 216 KB 77.5% smaller |
| App icon 1600 by 1600 | 113 KB PNG | 100 KB 11.6% smaller | 19 KB 83% smaller | 19 KB 83% smaller |
| Desktop screenshot 1440 by 900 | 303 KB PNG | 180 KB 40.6% smaller | 87 KB 71.4% smaller | 78 KB 74.3% smaller |
Metadata stripped, no resize. On the icon, Smart and Ultra are the same file. Ultra tries its own colour range, then Smart's, then the full palette, and keeps whichever came out smallest, so it never loses to Smart.
How it works
Two ways to shrink a PNG
The lossless way is repacking. A PNG's pixels are squeezed with deflate, and most software does that quickly, not well. Iminify reruns it with zopfli, a much slower compressor that finds a shorter encoding of the very same pixels. Large files get optipng instead, because zopfli's cost grows with every pixel. Nothing about the image changes either way.
The lossy way is quantisation, and it's where the big numbers come from. A normal PNG can use 16 million colours. pngquant rebuilds it with a palette of at most 256, chosen for that image and dithered where it helps. A screenshot or a logo rarely needs more, and one byte a pixel in place of three or four is a very different file.
pngquant is given a quality range, not a colour count. If it can't reach the bottom of the range it declines to write anything, and the file is repacked losslessly instead. That's how a gradient-heavy PNG avoids visible banding.
What survives
What a PNG keeps when it's compressed
-
Transparency
Full alpha survives at every level, including partial transparency on anti-aliased edges.
-
Every pixel, at Lossless
Lossless changes the packing and nothing else. A wide-gamut colour profile is the one exception: it's converted to sRGB.
-
EXIF, when you switch it on
Rare in PNGs. It's written back as an eXIf chunk if Keep EXIF is on.
-
Animation
An animated PNG is reduced to its first frame, because neither pngquant nor optipng handles APNG.
When not to
When PNG compression is the wrong tool
- The PNG is a photograph. It will shrink, but a JPG, WebP or AVIF of it is many times smaller. PNG was never meant for photos.
- It has smooth gradients and you need them perfect. Use Lossless, not Smart.
- The format doesn't matter to you. PNG to WebP is smaller than any PNG at the same quality.
How to
Compress a PNG in three steps
-
1
Drop your PNGs
Change Format stays off, so you get PNGs back.
-
2
Lossless or Smart
Lossless for source assets. Smart for anything that only has to look right.
-
3
Check, then download
The difference map in Compare shows exactly which pixels changed, if any.
Questions
PNG compression questions
- PNG to WebP Lossless or lossy, transparency kept, every browser supports it.
- PNG to AVIF Big savings on screenshots and graphics, with transparency kept.
- Compress JPEG Lossless repacking, or a quality measured for each photo.
From the blog
Make your PNGs lighter
Drop a PNG, pick a level and check the difference map before you download.