Google Open Sources Image Encoder that Compresses Image Files by 35%

google image encoder guetzli

If you use images on your website, app, or blog, then here’s great news for you!

Google just open sourced an Image Encoder called Guetzli that creates High quality JPEG images with file sizes 35% smaller than currently available methods. Now you can load your websites and apps a lot faster as well as use less data. The best part is that it’s already compatible with existing browsers, image processing applications and the JPEG standard.

Typical image compression algorithms compress files by reducing visual quality of the image, in a process known as quantization during compression. As a result, smaller file size means poor image quality. However, Guetzli tries to compress the file without compromizing much on image quality.

According to Google Research Blog,

Guetzli strikes a balance between minimal loss and file size by employing a search algorithm that tries to overcome the difference between the psychovisual modeling of JPEG’s format, and Guetzli’s psychovisual model, which approximates color perception and visual masking in a more thorough and detailed way than what is achievable by simpler color transforms and the discrete cosine transform. 


Although Guetzli creates smaller files without much visual loss, it takes significantly longer to create compressed images, compared to existing methods. However, Google also mentioned that in its experiments, it found that human raters consistently preferred images produced by Guetzli instead of libjpeg, even if the compressed images’ file sizes were the same. So the slower compression is worth it.

Here are couple of examples, uncompressed original is on the left. Guetzli (on the right) shows less ringing artefacts than libjpeg (middle) and has a smaller file size

google image encode guetzli

google image encode guetzli

                                 source : Google Research Blog


You can download Guetzli from GitHub and implement it in your project. Hopefully, it will help you provide a smoother user experience, reducing load times and bandwidth costs.