Tag Manager now counts back-button returns as page views
Published 2026-11-10 ·primary source
What it means
A page restored from the back/forward cache used to be invisible to Google's page view tags, so views on pages people return to were undercounted, and by how much depended on the browser. From 9 November those returns count, so expect a step up in views with no new visitors, and check two setups that can now count one return twice: a page_view listener added by hand for bfcache, and a key event built on the page_view of a thank-you page.
If your page views went up on 9 November and your traffic did not, the Tag Manager release notes explain it. Google tags that send page views on history changes now also count a page the browser restores from its back/forward cache. Until now those returns were not counted.
What changed
The back/forward cache (bfcache) keeps a page in memory after the user leaves it. When they press Back, the browser shows the stored page again. It does not load it again, so no page load event fires and no history state changes. Google’s web.dev guide says this plainly: many popular analytics libraries “don’t measure bfcache restores as new pageviews”.
Google’s Tag Manager release notes for 9 November 2026 change that for one group of tags: web measurement tags that subscribe to “page view on history change” events. These tags now record a page view on a bfcache restore, “mirroring the behavior of these tags on non-cached back and forward navigation”. If the browser did not cache the page, Back reloads it, and the tag counted that return already.
Google does not list the tags. The best-known one is the Google tag sending Google Analytics page
views. Its enhanced measurement page view option has an advanced setting that sends page_view on
browser-history events (pushState, popState, replaceState). That setting is a subscription of this
kind, so a Google Analytics property with it on is our working assumption for what is affected.
The read: the old count depended on the browser
Before 9 November, a return with the Back button counted only when the browser did not cache the page.
That depends on the browser, on the device’s memory, and on things the page does that block bfcache,
such as Cache-Control: no-store or an unload handler. Two visitors with the same journey could give
two different view counts. The undercount was largest on the pages people come back to: category
pages, search results, comparison tables.
How big is the jump? Google’s own Chrome usage data puts back and forward at 1 in 10 navigations on desktop and 1 in 5 on mobile. That is the upper limit. Only the share of those that land on your pages and are restored from the cache gives new views. So expect a step up in Views on mobile, and on listing pages, from 9 November, with no change in users or sessions. Views per session and any rate that divides by views move with it.
The same change can count one return twice in two setups:
- A pageshow listener added by hand. web.dev’s bfcache guide gives a fix for the undercount: listen
for
pageshowand sendgtag('event', 'page_view')whenevent.persistedis true. A site that added this and has the history setting on can now send two page views for each bfcache restore. - A key event built on a thank-you page. Google’s help shows how to create a key event from
page_viewwhen the URL is the thank-you page. “Once per event” counting is the default for key events not migrated from Universal Analytics goals. A buyer who leaves the thank-you page and comes back with Back can now add a second conversion, whether the browser cached the page or not. If that key event goes to Google Ads, bidding learns from it.
What to do
- Annotate 9 November in your Google Analytics reports. Read a jump in Views from that date as measurement, not demand, until users and sessions confirm it.
- Search your site code for
pageshow. If a listener sends apage_viewonevent.persisted, test one back-button return in DebugView. Twopage_viewevents for one return means you remove the listener. - Check key events made from
page_view. A purchase or lead counted from a thank-you page view is safer counted from thepurchaseorgenerate_leadevent the page sends once. Or set it to “Once per session” if the event is a lead you count one per visit.
The jump moves every number that divides by views and leaves every number that divides by sessions or users the same. Which one does your conversion rate use? The answer can move the rate by more than any campaign change, and the denominator decides it.
Sources
- Google's Tag Manager release notes, in an entry dated 9 November 2026, say web measurement tags that subscribe to "page view on history change" events will record page views when a page is restored from the browser back/forward cache (bfcache), "mirroring the behavior of these tags on non-cached back and forward navigation." verified 2026-11-10
- Google's web.dev bfcache guide says Chrome usage data shows 1 in 10 navigations on desktop and 1 in 5 on mobile are either back or forward. verified 2026-11-10
- The same guide says many popular analytics libraries do not measure bfcache restores as new pageviews, and gives a code sample that listens for the pageshow event and sends gtag('event', 'page_view') when event.persisted is true. verified 2026-11-10
- Google Analytics' enhanced measurement documentation says page_view is sent each time the page loads or the browser history state is changed by the active site, that an advanced setting controls whether it is sent on browser-history events, and that the option listens for pushState, popState and replaceState. verified 2026-11-10
- Google Analytics' help on creating key events uses the example of creating a new event from page_view when the page URL is a thank-you page, and marking it as a key event. verified 2026-11-10
- Google Analytics' counting-method help says "Once per event" counts a key event every time it is triggered, and is the default for all key events except those created from Universal Analytics goals. verified 2026-11-10