Using Immutable Caching To Speed Up The Web - Mozilla Hacks - the Web developer blog →

The benefits of immutable mean that when a page is refreshed, which is an extremely common social media scenario, elements that were previously marked immutable with an HTTP response header do not have to be revalidated with the server. Lacking this hint, the browser needs to guess which objects may or may not change on reload - wasting time on one hand or risking website incompatibility on the other.

For smaller objects, the work of this revalidation via a 304 HTTP response code can be almost as much work as just transferring the response fully.

It turns out this can save a lot of work. The page's javascript, fonts, and stylesheets do not change between reloads. More importantly, the dozens of images do not change either - different images may be included by the markup, but the content of individual images do not change. Indeed, about the only thing that might change is the markup itself.