I'm kinda doing that with the Jigsaw. It's one image, used as a background for 16 images. If you open the template, heh, you can see it is quite kludgy.
https://photics.com/free-template-tuesday-33-tumult-hype-jigsaw/
"Sprite Sheets" doesn't do what you're looking for?
β https://youtu.be/d_PKAJJhRoM?t=1550
I was recently thinking about all the work people used to do to optimize websites, like splicing images to reduce the overall download speed. Heh, so it's kinda funny to me how one giant image would be seen as optimized. I don't know if it's not, but that goes against a lot of history.
This is also one of those things that seem opposite. It might depend on the web server, no? With HTTP/2, it's better about sending multiple files at once. So, while I could Base64 all of my images to reduce the number of downloadable files, I'm not sure if that's going to help or hurt download speed.
(Base64 can make images slightly larger, so I usually don't bother with converting my Hype images to Base64.)
I suppose you could try analyzing your project with https://web.dev. I did some work to optimize Photics.com β got a perfect score. I didn't really worry about reducing the number of files. Instead, much of the focus was reducing things like image sizes. That meant switching graphics to SVG... boom... 100% x4.
With SVG, you could do either... add the image as HTML code or load it as a separate file.
I mainly focus on building games and websites. It's a somewhat different world for ads. I think the answer... and this is not a copout ...it depends. There are modern tools that help with performance, so I tend to stay away from giant singular images... I didn't even cover Sprite Sheets in the book.
As an example, lazy loading is great for performance. But if you're making banner ads, does your ad even scroll? If it does, then you can't take advantage of lazy loading with a giant single image. But heh, I haven't done web advertising in a while. I don't know if lazy loading is even a thing with ads.
And looking at the example, that's a lot of empty space. Personally, I prefer using vector graphics when possible. Because simply adding an @2x raster image dramatically increases the file size. That's a huge factor with large images. I see a lot of shapes that could easily be made with SVG... or even elements with border radius. Years ago I could see avoiding SVG. But today, the support is really good...