Tools like Google Tag Manager and Adobe Tag Manager offer wonderful capabilities, but they can be detrimental to user experience
Andrew Welch / nystudio107
Tools like Google Tag Manager (GTM) and Adobe Tag Manager (ATM) are prolific in the corporate world for the marketing tracking capabilities that they offer. But not properly curated, they can hurt website performance and user experience.
This is empowering for marketing and analytics professionals, because they can add things like conversion tracking, remarketing, tracking “pixels”, and so on to a webpage without needing a pesky developer to make it happen.
They provide a centralized place where all sorts of wonderful and horrible things can happen.
As it turns out, a lot can go wrong. Marketing-types generally do not understand the implications of the “tags” that they are adding to a page — and it’s somewhat unfair to expect them to.
Tags can — and very often do — load other tags. So you may have included just 5 tags, but each tag can then end up loading as many other tags as it wants. Just like the 1980’s TV commercial, tags can spread like a social disease.
So why does this matter? Who cares how many tags are being loaded?
Each tag that gets loaded is another browser request. Granted, they are fairly small, but they add up, especially on high-latency mobile connections.
They are also inevitably served up from a variety of places, so there are additional DNS lookups that need to happen, and you are also at the mercy of the tag’s source web server for their expires header caching policy.
Your website that you’ve carefully tuned as per the A Pretty Website Isn’t Enough article can deteriorate into something like this:
So this looks bad, but is it really bad? After all, these tags are loaded asynchronously, after the webpage has (mostly) loaded. This is the argument that I’ve heard from some people (who coincidentally are in the business of tracking tags).
Tag sprawl like this is bad because while all of these tags are being loaded, your browser is working to pull the requests in.
Ever see a webpage load, but the Google Chrome activity indicator is still swirling away long after it looks like the page has loaded?
These are your tags loading.
Mobile devices have restricted CPU power that can be overwhelmed in a hurry by all of this activity, resulting in webpages that are jerky or unusable until after all of the tags have loaded.
This is bad. Google thought it was so bad that they created Google AMP specifically to address poor mobile web performance. Google’s initial target for AMP was news sites, because they are notoriously bad in terms of adding digital detritus in the form of tags to webpages.
How bad? Let’s have a look at the well-known news network CNN.com. There are a grand total of 254 requests on their home page, the overwhelming majority of which are tags.
If you’re into gore, have a look at the full CNN.com page waterfall. Hide the women & children.
Tags are not evil; they are actually fantastic in terms of the power that they put into the hands of your marketing and analytics folks.
It’s also important to note that there’s nothing wrong with Tag Managers themselves; they are excellent and useful tools. It’s a person (or multiple people) who ultimately are publishing these tags, and need to ensure they are doing so responsibly.
At the risk of looking silly and quoting a comic book:
I liken tags to prescription drugs; used appropriately, they can perform miracles. If they are abused, however, they can be detrimental.
The great irony here is that tags are most often added to a website to track conversion performance. But as we talked about in the A Pretty Website Isn’t Enough article, poor website performance negatively impacts conversions. In a big way.
This reminds me of the Observer Effect from physics:
So by cramming all of these tags onto our webpage to measure conversions, we may be lowering our conversion rate. Ooops.
So what can we do about all of this? What we need is a person as a Tag Manager for our Tag Manager, to whip our tags into shape. A digital lion tamer, if you will.
This person should establish a tag policy for their organization. Here’s what I suggest:
- Every tag should have an owner, in terms of a person who takes responsibility for that tag
- Every tag should be documented, stating what it does, and justifying its existence
- Tags should appear only on the pages where they are actually needed, not globally on every page on the website
- Tags that coincide with a marketing campaign should be set up to expire at an appropriate date
- Tags should be audited on a regular basis, and pruned back regularly
I’ve worked with more than one organization where they didn’t even know what all of their tags were doing. In cases like this, I’ve found the Tag Inspector service to be a good first step at getting a handle on your tag sprawl.
It’s also eye-opening to audit your webpage’s loading waterfall via WebPageTest.org to see what is actually loading when someone visits your website.
In addition, pay attention to the logistical side of things:
- You don’t need 5 different tags tracking the same thing.
- If your tags are intended to track conversions, make sure that they aren’t inhibiting conversions themselves!
- Be sure that there aren’t better ways to track what you’re trying to track, such as server-side tracking via the Google Analytics Measurement Protocol
- If you’re using the Tag Manager to implement A/B testing, be sure you’re doing it right
- If your A/B testing is negatively affecting your website performance or UX, your A/B test results may be suspect
In a nutshell, tag responsibly. And understand that there is a cost associated with the tracking that you’re doing.
Developers need to make the marketing & analytics folks aware of the cost of tags, and marketing & analytics folks need to make developers aware of what they are trying to accomplish.
This conversation is what is going to help you make something truly fantastic.
If you want to be notified about new articles, follow nystudio107 on Twitter.
Copyright ©2020 nystudio107. Designed by nystudio107