Best way to losslessly optimize PNG images

by ,

We have by far the largest RPM repository with NGINX module packages and VMODs for Varnish. If you want to install NGINX, Varnish, and lots of useful performance/security software with smooth yum upgrades for production use, this is the repository for you.
Active subscription is required.

As a web optimizer, you might now that the Internet’s main bloatware is images. There are so many tools out there for lossless PNG optimization. Which one is the best now?

;tldr Zopfling


I took a sample .png image sized 46966 bytes and ran it across well established optimizing software. Each time maximum compression/optimization flags were passed.

What I’ve tested:

  • pngout (a less known optimizer with closed source deflate compression algorithm that beats most known tools)
  • optipng (an often choice for most)
  • pngcrush
  • zopflipng (the new folk by Google, actually a companion tool to their zopfli library)


Tool name Flags Result size, bytes
pngout   44519
pngcrush -brute -reduce 46813
optipng -o7 46657
zopflipng -m 43291

Install and use Zopfling

Without much further ado, I will tell you how to use Zopfling to crunch your PNG images without loss of quality.

In CentOS/RHEL, we have made it available for easy install. Setup our repository, then:

yum -y install zopfli

That’s it! Now you can run zopflipng -m /path/to/your.png /path/to/your_optimized.png to crunch size without losing a bit of visible information.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: