Proper method/tips for setting up Facebook Pixels with no errors

I’m finding a lot of people lately complaining about their Facebook Pixels throwing an infamous “duplicate pixel” error: fbevents.js:9 Facebook Pixel Error: Duplicate Pixel ID: XXXXXXXXXXXXXXXXX This ¬†error is thrown because we’re trying to initialize a pixel ID twice and therefore FB complains about it. And nope you are not alone ūüôā   For example you may have a FB pixels that fires on the page load like this: fbq(‘track’, “PageView”); And then you may […] Read More

Integrating Google Optimize with Google Tag Manager

You may need to know if the current page has any Google Optimize Experiment running, to track that info on any tool, or to fire some vendor tag based on the current experiments statuses. The following snippet will take care of sending a dataLayer push if there’s any active experiment running, including: The Experiment ID The Optimize Container ID where the experiment is running on The current experiment variation being shown to the current user/device […] Read More

SEO meets GA: Tracking search bots visits within measurement protocol

I’ve been attending lately (and having) to some talks about the logs parsing from the SEO perspective, (from @David Sottimano on Untagged Conference and Lino¬†Uru√Īuela¬†during some dinner time), and I’ve decided to publish a WordPress plugin that I started to work on some years ago, and that for work reasons I had it left on my “I’ll do it”¬†drawer and it never came back to my mind. First thing I need to the point to, […] Read More

Cross-Domain tracking with clean urls

I’ve been told by a lot of clients that the way that Google Analytics cross-domain tracking works is “ugly”, referring to having the linker param attached to the URL. I must admit is not elegant having all that long hash on the url, thougt it won’t affect the page functionality. In the other side there isn’t any other to pass the current client Id from the Universal Analytics cookie to the destination domain without dealing […] Read More

Bringing back utm_nooverride functionality to Universal Analytics

Universal Analytics removed the utm_nooverride=1¬†functionality, still we can define a list domain¬†referrals to be treated as direct visits within our properties configuration section, but what about when we can’t control the source domains?, for example for emailings, or some display campaign that we don’t want to override our users original attribution?. We’re going to use Google Tag Manager, so bring back this functionality to our implementations. First we need a Variable to read if is […] Read More

#Tip – Finding out if a key-value has been already pushed into the dataLayer

Sometimes we may be in the situation that we need to know if some info had been already pushed into Google Tag Manager’s dataLayer in order to take some action. For example we may need to know if some custom event it’s already in the dataLayer in order to prevent something to be fired twice, or we may need to check if some value is already in place. The following snippet, will help us to […] Read More

How to keep your returning user’s legacy data when switching domain name

When we’re switching a¬†site domain name we always have in mind some basic steps to take in mind so the migration doesn’t end being a mess. One of those steps is usually 301-ing our old domain content to the new one, but we never think on how will this affect our current Google Analytics data. Universal Analytics cookie is based on the domain hostname, so if we switch the current domain a new cookie set […] Read More

Google Tag Manager event tracking using data attribute elements

On the last #tip we talked about how to debug/qa our data attributes¬†, and now we’re going to¬†learn about how to natively track events/social interactions within Google Tag Manager . We’re going to learn it, basing our tracking on Google Analytics Events and Social Interactions. Of course this can be expanded to any other tool just changing the data attributes, but hey, this is about to learning not about give me a copy and paste […] Read More

GAUPET Release: Google Analytics User Permissions Explorer Tool

Some months ago I asked some friends to test a new tool I was working on and past week I released something close to an open alpha, today after pulling some details, a new UI redesign 100% mobile compatible. I’m announcing the GAUPET release. At first¬†I named it as GA Governance Tool, but after some interesting chat with the “osom”¬†Yehoshua Coren¬†. I(we)’ve decided to change the tool’s name to something that it’s closer to what […] Read More

#Tip – How to quickly debug/qa data attributes

With the years I learned that using CSS selectors to track user actions is really great but sadly I learned too that it’s really dangerous too. It’s true that we won’t need to ask the IT team to add some dataLayer or ga pushes into the page, and therefore saving a lot of precious time, but in the other side, any single page update or testing will break our tracking. Now I try to use […] Read More