Why default to converting PNG to JPG?

Yes, I totally get that this is configurable (I’ve already disabled it on my site) and I understand the motivation. I still think that the feature is misguided in the first place and that it’d make sense to change the default.

Here’s an example — PNGs are the default file format for screenshots and rightfully so. If I just take a screenshot of this window and try to upload it, it gets converted to a JPG.

The original file was 361KB, your compressed JPG is 218KB. Sure, it’s smaller, but we’ve also lost the transparency — it looks awful for folks using a dark theme — and there’s artifacting around the text.

If, instead, I use optipng locally to optimize the PNG, I end up with a file that has transparency and sharp text that’s only 219KB. This will now remain a PNG when I upload it:


Converting PNG to JPG is a very lossy conversion. It’s one thing to do this on upload; it’s yet another to edit posts to do it automatically to external images after posting. There are other ways to save on bandwidth and storage, including PNG optimizers and even resizing (with the click-to-view-full-size feature it seems sensible to embed the smaller image in the post and only show the full-size image on click).

4 Likes