Home / Analytics & Testing / Beware of Loading Multiple Google Analytics Scripts
Google Analytics

Beware of Loading Multiple Google Analytics Scripts

With so much integration of tools to so many content management systems, we’re seeing many more of our clients having issues with Google Analytics scripts being inserted into the page multiple times. This wreaks havoc on your analytics, resulting in huge over-reporting of visitors, pages per visit and nearly no bounce rate.

Just today we had a client who had 2 plugins loaded and configured to add the Google Analytics script to their blog. And neither plugin actually checked to see if there was already a script loaded! The result was that the visits were over-reported and their bounce rate was about 3%. If your bounce rate drops to under 5%, rest assured you have an issue with multiple scripts on your page.

Aside from Analytics, how can you tell if you’ve done this? One method is simply to view the source of your page and search for ga.js. Even if you want to monitor the site with multiple Google Analytics accounts, there should be only one script.

Another way is to open up your developer tools in your browser and view the network communication after you refresh the page. Do you see the ga.js script being requested more than once?

Google Analytics works by loading a script that assembles all the information, saves the information to browser cookies and sends it to Google’s servers through an image request. When the script is loaded more than once, it sometimes overwrites cookies, and sends multiple image requests to the server. That’s why the bounce rate is so low… if you visit more than one page on a site, you do not bounce. So… if the scripts are firing more than once when you visit a single page, it means you’ve visited multiple pages.

Check your page and your analytics to make sure your analytics script is properly installed on your site, and make sure you don’t accidentally load the script more than once. If you do, your data is not accurate.

About Douglas Karr

Douglas Karr is the founder of The Marketing Technology Blog and recognized MarTech expert. Doug is a Keynote and Marketing Public Speaker. He's the CEO of DK New Media, an agency specializing in assisting marketing technology companies with their inbound marketing - leveraging social media, blogging, search engine optimization, pay per click and public relations. He's assisted SaaS companies like Angie's List, GoDaddy, Salesforce, Webtrends, and SmartFOCUS with their digital marketing and product strategies. Douglas is also the author of Corporate Blogging for Dummies.

Check Also

Google Analytics Content Grouping

How to Implement Google Analytics Custom Groups with Google Tag Manager

In a previous article, I shared how to implement Google Tag Manager and Universal Analytics. …


  1. Thanks, I’ll take note on this. I think this is the reason why my ecommerce site doesn’t have really traffic going on its analytics report. the google script is different from the tracking code present on its google analytics report. thanks mate.

  2. Hi Douglas, great insight. I had a similar drop since I started some experiments on Google Tag Manager few weeks ago: 4 Page/ Visits 🙂 and bounce back of currently at 0.47% 😀

    Following your post, here my result:

    1.Scripts: There is 1 ga.js (I pasted only the code of Analytics and Tag Manager into my site). I cannot see in the second script (Tag Manager) any reference to ga.js but only gtm.js . I have no big code just those 2 pasted together (first analytic, then T.M.), so I don’t even need to use an application, however I checked with firebug too.

    2. In the Tag manager Console I created just one event (same time of creation, same time of start b.r. dropping). This event basically works as Link click listener for Outbound Links and it is the same as the one advised by James Cutroni into his blog. But I made a slight modification: One is the Non-Interaction Hit set to True (that shouldn’t be hit bounce rate?) but then I added a Label=referrer instead of leaving it blank, because I wanted to know there the clicks where from. (Anyway I removed it today as It is not so useful as I thought)
    3. I still have some few outbound links with old onClick=”_gaq.push()” embedded but all of them have been set the Non-interaction click to True.



Leave a Reply

Join 60,000 Marketing
and Sales Professionals

Your information will never be shared
Just Launched! Give and get advice from our new community online!
Request an Invite