Until recently, using image sprites was really useful to optimize the loading (single resource fetch, on a single connection) That said, with the support of HTTP2, this is no longer an issue. So the answer to your question might really depends on your setup. If you're still using http1.1 connections and have a huge number of images, then css sprites is the way to go (there's tools to automate their creation). If you already moved to http2 (and your primary target use modern browsers), then you might start considering using simple images without having to pay a huge performance bill.