Google Tag Manager (GTM) Not Firing Default PageView Event

Posted on 11/08/2017 at 12:21 pm by Kevin Wentworth
Viewed 7,827 times | 0 comments

We had an interesting issue here today regarding Google Tag Manager not firing the default PageView event.  Instead it was firing the /gtm.js event.  WTF?!

Turns out, the system we were using was reading event: 'gtm.js'  in the GTM container snippet as a link to a javascript resource.  So, it was turning the "url" into an absolute path, like so: event: '/gtm.js'.

Google Tag Manager doesn't know what to do with an event named "/gtm.js"

How were we going to solve this?  A little ASCII magic to the rescue.

String.fromCharCode(46) to the Rescue!

  1. (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':<br />new Date().getTime(),event:'gtm'+String.fromCharCode(46)+'js'});var f=d.getElementsByTagName(s)[0],<br />j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=<br />''+i+dl;f.parentNode.insertBefore(j,f);<br />})(window,document,'script','dataLayer','GTM-XXYXYXY');

Instead of:

  1. (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':<br />new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],<br />j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=<br />''+i+dl;f.parentNode.insertBefore(j,f);<br />})(window,document,'script','dataLayer','GTM-XXYXYXY');



Bookmark and Share

Tags for Google Tag Manager (GTM) Not Firing Default PageView Event

Web Programming | Javascript | Google Tag Manager

Comments for this Posting

No comments. Be the first to post a reply.

Sorry, comments are closed for this posting.

Please Email Kevin if you have any questions. Thanks!

Meet Site Avenger - Hosted Content Management System

Powered By: Site Avenger | Site Production: Saco Design