Why we developed Animated PNG compression?

In this article I'd like to share the background of our choice to develop Animated PNG (APNG) support in our image compression product.

JPEG, PNG, WebP and GIF image formats

We released TinyPNG for compressing PNG images back in 2012 and in 2014 we added intelligent JPEG compression. We are still continuously evolving this image compression product. With average size savings between 40 to 90 percent it is growing in popularity every day.

In the past we received a number of feature requests for APNG development but at that time there was little support for the format. For web it only worked in Firefox and Safari browsers. Google on the other hand seemed more interested in advocating the use of Animated WebP. So at the time supporting APNG really was not worth the investment.

But things seem to be changing and APNG is getting momentum. Last July Google Chrome said it would move forward with implementing support for the APNG format. And Apple contacted us last month whether we had any plans for APNG compression, as they are launching animated iMessage stickers with the release of iOS 10.

Wow! Animated GIF became so popular when Netscape started supporting it more than 20 years ago. Does that mean the new kid in town will become a competitor to this ancient file format?

Anyway, APNG is likely to become very big really soon!

Product development

I like to take a step back first and give some insight in the way our product development efforts are organized. We tend to balance these efforts between product innovation and product improvement. Innovation is seemingly important for the long term and product improvement for making the current offering more popular. For the best results we usually focus on one thing at a time, finish it, get it out of the way and move on to the next.

Product innovation

With product innovation we try to re-invent the way users are using the products on a day-by-day basis. This may seem quite daunting, but in the end users have simple goals which can be addressed. In the case of "image compression" users just want to have "a website that loads fast with small images" or "a website that ranks higher in the search engines".

With these goals in mind it becomes quite easy to investigate the steps that are taking place from the point of image creation down to publication. And based on that we can think of ideas to simplify or remove steps from this process.

Product improvement

Product improvement is focussed on expanding the current offering with complementary tools and features. It is focussed on improving what's already there and on adding platforms, file types, libraries, plugins and extensions. This is where the development of APNG compression fits in.

Developing Animated PNG compression

When Apple reached out if we had any plans to support the Animated PNG format we felt we had to think about it. Did we not think about it before? What has happened in the mean time? More importantly what is going to be changed in the future?

We decided to change course in our development efforts and focus completely on APNG development. It meant postponing our product innovation efforts for the time being in favour of APNG compression.

So we had a new goal: release APNG compression on September 13th, at the same time Apple would release iOS 10 with iMessenger APNG emoticons. With a maximum size of 500KB per sticker a lot of developers will likely be looking at ways to get the file size down, and what better way than using TinyPNG to get it done!

iMessage animated sticker examples

To round off I'd like to show the preliminary compression results. We tried out the APNG stickers from the official iMessage sticker packs shipped with the latest iOS software development kit. The original stickers are shown on the left with on the right hand side the compressed versions. Interestingly if we compress all the shipped iMessage stickers we an see average saving of 41%.

Original heart sticker
Smiley sticker
Original size 461 KB
Compressed iMessage sticker
Smiley sticker
Compressed size 272 KB
Original heart sticker
Hands sticker
Original size 490 KB
Compressed iMessage sticker
Hands sticker
Compressed size 346 KB
Original heart sticker
Heart sticker
Original size 197 KB
Compressed iMessage sticker
Heart sticker
Compressed size 94 KB

Please notice that these examples have been created with an early development version. The final compression results will differ of course, but still the results are quite amazing!

If you like to know more about creating and compressing iMessage stickers you can take a look at the example APNG iMessage sticker project on GitHub.

Summary

The APNG format is likely to become very big real soon. In this blog article I hope to have given an insight in what made us decide to go ahead with developing APNG compression at this point in time and the way we organize product development. To finish off we look at the preliminary compression results with the just released animated iMessage stickers from the iOS 10 SDK.

Happy compressing!