Check for Google Analytics Using MooTools 1.2

By  on  

When I launched my new design last week, I used PHP to comment out Google Analytics because I didn't want to skew the stats. Well, I did skew my stats that day because I forgot to uncomment the damn GA code. Rook move, I know. With that in mind, I've created a MooTools script that checks to make sure Google Analytics is loaded. If not, you get a friendly JavaScript alert() reminder.

The MooTools 1.2 Code

window.addEvent('load', function() {
	if(typeof(eval(window)['_ufsc']) == 'undefined') {
		alert('David, turn on GA!');
	}
});

Not having 10 hours worth of stats is a big deal. This code will (hopefully) prevent this from happening again in the future.

Recent Features

  • By
    Detect DOM Node Insertions with JavaScript and CSS Animations

    I work with an awesome cast of developers at Mozilla, and one of them in Daniel Buchner. Daniel's shared with me an awesome strategy for detecting when nodes have been injected into a parent node without using the deprecated DOM Events API.

  • By
    Create a CSS Cube

    CSS cubes really showcase what CSS has become over the years, evolving from simple color and dimension directives to a language capable of creating deep, creative visuals.  Add animation and you've got something really neat.  Unfortunately each CSS cube tutorial I've read is a bit...

Incredible Demos

  • By
    Use Custom Missing Image Graphics Using Dojo

    A few months back I posted an article about how you can use your own "missing image" graphics when an image fails to load using MooTools and jQuery. Here's how to do the same using Dojo. The HTML We'll delegate the image to display by class...

  • By
    Simple Image Lazy Load and Fade

    One of the quickest and easiest website performance optimizations is decreasing image loading.  That means a variety of things, including minifying images with tools like ImageOptim and TinyPNG, using data URIs and sprites, and lazy loading images.  It's a bit jarring when you're lazy loading images and they just...

Discussion

  1. Jeff Hartman

    Why aren’t you using the same if statement as you do for your config file as mentioned in a previous post?

    http://davidwalsh.name/knowing-website-state-php

    As a matter of fact, you commented on your own post saying you use it for Google Analytics!

  2. @Jeff: Because I wasn’t developing locally, per say. I was dragging each file to my desktop, and then reuploading as I changed it. Again, not the best way of doing things.

    I do, however, use my “website state” strategy at work.

  3. @Jeff: Simply put….I was lazy with my own site and paid the price for it.

  4. Works great unless you are the type to upload something and not confirm the changes (and then have all your visitors get the popup). Hey, if you can make one lazy mistake you can make another, haha.

  5. @Sameer: Very true!

  6. A much simpler and easier to manage solution is to set up a filter in google analytics itself.

    For example, “exclude all traffic from user agents marked ‘website-tester.'” Then simply use Firefox’s user-agent switcher extension to use ‘website-tester’ whilst testing.

    This also allows more flexibility than the “website state” strategy as PHP, Google Analytics etc… can be clever about your own use of the site for testing purposes even on a website that is live and working for everybody else.

    Obviously the website state idea still has validity when when you have two near identical sites, one for production and the other live. As an example my platform generates a robots.txt automatically and on the staging site adds the “Disallow: /” directive to prevent the staging site from being indexed and all those duplicate content issues.

  7. Hey David, this post is a few years old now and it still works! :D but have you come across any new ways of detecting Google Analytics?

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!