
I'm a web dev who does optimisation of images and loading speeds, so take this is as an educated opinion. Though this is a pretty basic topic in digital graphics. TL;DR for the investors: Roll20 could be saving a lot of money on their Amazon S3 (both bandwidth & storage) bills because they are storing about 10x too much image data due to some bugs bad decisions in the image sizes code. Fix those bugs, regenerate all the images = Profit. My testing: original image upload. 1000x688 391kb .jpg @ 89% lossy compression. thumbnail shown on home games list, rendered at 204x140: 512x352 546kb PNG lossles 50% bigger file but viewed at 1/4 of the original size notice it says med.jpg in URL but it isn't encoded as a JPG and it SHOULD remain as a JPG. <a href="https://s3.amazonaws.com/files.d20.io/images/161594927/kQNY2FD-Kp7UDFFWC4tHwQ/med.jpg?1598940281937" rel="nofollow">https://s3.amazonaws.com/files.d20.io/images/161594927/kQNY2FD-Kp7UDFFWC4tHwQ/med.jpg?1598940281937</a> image shown on campaign detail page 1000x688 1960kb PNG again, is a PNG pretending to be a JPG, download it and you will see. five times the file size. <a href="https://s3.amazonaws.com/files.d20.io/images/161594927/kQNY2FD-Kp7UDFFWC4tHwQ/max.jpg?1598940281937" rel="nofollow">https://s3.amazonaws.com/files.d20.io/images/161594927/kQNY2FD-Kp7UDFFWC4tHwQ/max.jpg?1598940281937</a> image in VTT, as above. "So what" you say? well the large image is the same file that is loaded in the VTT, it should just be the original file you uploaded but instead is this five times larger file for no reason. Quite often it is shrunk down and has less detail than the original, yet is much much bigger as a file. So it's larger, uglier and slower - that's what. What about PNGs uploaded? same issue. original PNG 2192 x 1648 8bit 2280kb (with alpha channel) resized to 2048 x 1539 32bit 8340kb (with alpha) proof - <a href="https://s3.amazonaws.com/files.d20.io/images/161569762/Z3k0T-OVsDSWlp63nr-o-w/max.png?159892761155" rel="nofollow">https://s3.amazonaws.com/files.d20.io/images/161569762/Z3k0T-OVsDSWlp63nr-o-w/max.png?159892761155</a> I am aware of why the image is resized to 2048, so that customers do not download huge images right? But is that solution working? No, it's causing more issues than it tries to solve. The Asset Library is a similar story, but there's a lot of thumbnail sizes generated and this just compounds the storage and bandwidth issue. Loading my VTT is about 30 megabytes, but really should be only about 5 megabytes. It's slow for no reason. This is a problem for both storage costs AND bandwidth costs. Not to mention slower speeds overall because of the massive overheads. It's easy to fix It affects every single user It's been around for years It wastes everyone's time and money. It annoys me to see such a lame bug in a premium service. Solution! If resized >= original, then load the original file. If format = JPG, use JPG (same compression rate, or 90% still much less than a PNG) If format = PNG, use PNG (same bit depth)