Google is making a significant change to Chrome’s Back/Forward Cache (BFCache), allowing web pages to be stored in the cache even if a webmaster specifies not to store a page in the browser’s cache. The BFCache is an in-memory cache that stores a complete snapshot of a page, enabling quick restoration if a user decides to return. While webmasters can use the “Cache-control: no-store” header to prevent a website response from being stored in the regular browser cache, Google proposes that web pages should be stored in the BFCache even with this header on HTTPS pages, enhancing the user experience.
This change aims to increase instances of instant back/forward navigations, resulting in a smoother browsing experience. Google engineer Fergal Daly clarifies that the primary objective isn’t to prevent the restoration of pages containing sensitive data but to avoid restoring pages with sensitive data that users should no longer have access to.
While some express concerns about breaking promises to web developers regarding the “Cache-control: no-store” header, Google emphasizes that this header only applies to the regular browser cache, not the BFCache, and developers should not interpret it as a promise against BFCaching. By redefining how BFCache interacts with the “Cache-control: no-store” directive, Google aims to create a more responsive browsing experience without compromising user security and privacy. This change is being tested in channels first, with Google gathering data to understand the impact and address concerns before widespread implementation.