I'm using the official Firebase JS SDK in a Vue-based SPA. To get more useful analytics through Firebase's firebase.analytics()
Google Analytics integration, I would like to disable automatic reporting of page_view
events.
I'm aware that, under the hood, Firebase Analytics uses Google's gtag.js for reporting to Google Analytics and I know that I can configure gtag to not send that event automatically like so:
gtag('config', 'MEASUREMENT_ID', {
'send_page_view': false
});
My problem is that I can't seem to find a way to set that kind of configuration value through firebase.analytics()
. I've tried analytics.setUserProperties({ send_page_view: false })
, but that doesn't seem to work as the page_view event is still reported to Google.
Is there any way to set this configuration value in Firebase analytics or is there another way to disable automatic page-view reporting here?
I am currently searching for this same solution. I am using firebase analytics in a react spa app. For me, the solution proposed by @Draven does not seem to work.
Using the GA Debug chrome extension, I can see Processing GTAG command: ["config", "G-3MVDF7WX31", {send_page_view: false}]
being called, but shortly after I also see Sending event "page_view" to undefined
being called. After that, Processing GTAG command: ["config", "G-3MVDF7WX31", {send_page_view: false}]
is called again. Using the Google Analytics DebugView I can still see the page view event being logged.
UPDATE
Looking through the Firebase JS SDK, there does not seem to be a way to disable the default page_view, which occurs during the call to firebase.analytics()
. However I came up with a workaround which, after light testing, seems to work.
Place the following BEFORE you call firebase.analytics()
:
<script>
window.dataLayer = window.dataLayer || [];
function gtag() { dataLayer.push(arguments); }
gtag('set', { 'send_page_view': false });
</script>
See github issue: https://github.com/firebase/firebase-js-sdk/issues/3988