20×24 pixel zoomed areas from a picture of a cat’s eye. Uncompressed original on the left. Guetzli (on the right) shows less ringing artefacts than libjpeg (middle) without requiring a larger file size. /Google

Google recently posted on a blog stating that they’ve created an encoder that creates high quality JPEG image with 35% smaller file sizes.

Guetzli, meaning “cookie” in Swiss German, is an open source algorithm. It’s a JPEG encoder for digital images and web graphics, producing smaller JPEG files that maintains compatibility with existing browsers, image processing applications and JPEG standard. This allows for faster load times, using less data.

This is actually similar to Google’s Zopfli algorithm – which is used to produce smaller PNG and gzip files without needing to create a new format. However, there’s a slight downfall for this – the search algorithms take significantly longer to create compressed images than currently available methods.

16×16 pixel synthetic example of a phone line hanging against a blue sky. Uncompressed original is on the left. Guetzli (on the right) shows less ringing artefacts than libjpeg (middle) and has a smaller file size. /Google


Google Research Europe Software Engineers, Robert Obryk and Jyrki Alakuijala explained that Guetzli uses multi-stage compression process, searching for a balance between minimal loss in visual quality, while maintaining a small file size.

Interestingly, Google ran experiments noting that human subjects “consistently” preferred Guetzli outputs compared to libjpeg images, even when the libjpeg files were the same size or even slightly larger. Obryk and Alakuijala wrote that “We think this makes the slower compression a worthy tradeoff.”