Google Tag Manager is fine if you want to track standard outgoing links. But what if the link is contained in a Meta Refresh? And you only want to capture certain meta refreshes? This was my challenge the other day!
- Set up a new variable in GTM, call it something like Get Meta Refresh
- Variable type should be Custom Javascript, and that javascript is as follows:function getMetaContent() {
var metas = document.getElementsByTagName(‘meta’);for (var i=0; i<metas.length; i++) {
if (metas[i].getAttribute(“http-equiv”) == “refresh”) {
return metas[i].getAttribute(“content”);
}
}return “”;
}All we’re doing here is looking at the Metas within the code and saving it.
- Next we create a tag/trigger combination.The Trigger is fired when the Get Meta Refresh variable contains the desired URL or domain (and the page name also matches a desired URL); the tag simply creates an event called ‘Refresh to outgoing link’ or similar.
And voila, we’ve created meaningful Events when a page Meta Refreshes to a specified domain.