What bfcache means
The bfcache is an optimization that belongs to the browser, not to your server or your code. When someone leaves a page by clicking a link or typing a new URL, the browser doesn't necessarily destroy that tab: it can pause JavaScript execution and keep the document's entire state in RAM. If that person comes back later using the back or forward button, the browser restores the page exactly as it was, without downloading a single resource again.
Google estimates that one in ten navigations on desktop and one in five on mobile are of this type, going back or forward. It's a proportion that rarely gets measured, because auditing tools tend to focus only on a page's first load, the one that feeds most Core Web Vitals reports. Anyone who only measures that first load misses this entire slice of what real users actually experience.
The bfcache shouldn't be confused with other forms of caching. The HTTP cache stores individual files, such as images, stylesheets, or scripts, so they don't have to be downloaded again. The bfcache stores the entire page, including its JavaScript state, ready to reappear without executing anything from scratch. That's why a page with bfcache active feels instant when you go back, while a full reload, even a well optimized one, always involves at least one network request.