analytics toolbox - google tag manager
TRANSCRIPT
March 5, 2015
ANALYTICS TOOLBOX – Google Tag Manager
Steve Hammer
President, RankHammer
@armondhammer
searchmarketingexpo.com
@Armondhammer #SMX #32D
Designers Create innovative experiences - beyond the page
searchmarketingexpo.com
@Armondhammer #SMX #32D
RANKHAMMER
Dallas Based Internet Marketing
and Analytics
HOCKEY
Go Stars
FOOD AND WINE
Far too serious
about food
FAMILY
The most important thing
About Me
searchmarketingexpo.com
@Armondhammer #SMX #32D
Missing Data
In page selections
Conditional Elements
Infinite Scroll
Ajax
Input Errors
searchmarketingexpo.com
@Armondhammer #SMX #32D
Variables (Macros)
• Data To use
Triggers
(Rules)
• When to fire
Tag • What
is fired
searchmarketingexpo.com
@Armondhammer #SMX #32D
Variables (Macros)
• Default
Triggers
(Rules)
• All Pages
Tag • Analytics Base Tag
searchmarketingexpo.com
@Armondhammer #SMX #32D
Three Enhanced Collection Examples
Conditional Firing
Ajax / Infinite Scroll
User Value
searchmarketingexpo.com
@Armondhammer #SMX #32D
Conversion pages Timing based
Errors Clicks on Elements
Clicks on non-links
First Party Cookie Marketing Source
searchmarketingexpo.com
@Armondhammer #SMX #32D
Check for first party cookie
If No
Create and input marketing source
Fire affiliate conversion only
for first click, not last
Credit Affiliates that introduce
searchmarketingexpo.com
@Armondhammer #SMX #32D
jQuery(document).ready(function() { var desktopNav = jQuery('div.formlocation');
var dept = ''; desktopNav.find("select[name*='department']").each(function() { if (this.value) { dept = this.value; return false; }
}); var dealer = ''; desktopNav.find("select[name*='dealership']").each(function() { if (this.value) {
dealer = this.value; return false; } }); //If both fields are populated, then fire the event
if (dept != '') { console.log('Lead Form Event Tracked'); dataLayer.push({'event': 'form-lead', 'eventAction': dept, 'eventLabel': dealer}); } });
Using Custom formulas
To read form elements,
Set user value
searchmarketingexpo.com
@Armondhammer #SMX #32D
Theoretical No Code Method
If pushstate updates url
Build regex for pagination changes
Create History Change Trigger
Watch out for back buttons
searchmarketingexpo.com
@Armondhammer #SMX #32D
Piggyback off of “loading” html method
Loading
Most packages call a loading image while loading page 2
Callbacks also possible
Use data layer
<script>
dataLayer.push({'event': ‘scroll-load'});
</script>
Trigger on the event