Click here to load reader
Date post: | 05-Sep-2014 |
Category: |
Presentations & Public Speaking |
Upload: | shuki-mann |
View: | 277 times |
Download: | 11 times |
Click here to load reader
[email protected] www.booot.co.il
ME
• 28, Married + 2 • Road bike rider• B.s.w• M.B.A• Google Partner & Google Analytics
Qualified• Google Adwords• Google Analytics• Google Tag Manager• Google Facebook ;)• etc.
[email protected] www.booot.co.il
ACCOUNT STRUCTURE
google login
account
container A - client
A
container B - client
B
container C - client
C
Tags, Macros, Rules…
Tags, Macros, Rules…
Tags, Macros, Rules…
google login
account B - client B
container A - site
container B - lps
Tags, Macros, Rules…
Tags, Macros, Rules…
account A - client A
container C - shop
Tags, Macros, Rules…
container A - site
container B - lps
Tags, Macros, Rules…
Tags, Macros, Rules…
container C - shop
Tags, Macros, Rules…
[email protected] www.booot.co.il
• Google Analytics (Universal/Classic)Google Adwords ConversionCustom HTMLThird party platforms…Event listeners!!!
Tags are the “WHAT to do”
TAGS
[email protected] www.booot.co.il
TAGS EXAMPLES
• Adwords Remarketing with custom params from dL
Adwords Conversion with dynamic value (macro)
[email protected] www.booot.co.il
TAGS - Auto Event Listeners
• Link Click - <a href> -> gtm.linkClick eventClick - onclick -> gtm.click eventForm Submit - submit -> gtm.formSubmitTimer - gtm.timerJS - gtm.pageErrorHistory - AJAX
Case sensitive!Competing listeners:<html> <head>
<title>My Page</title> </head> <body> <!-- Google Tag Manager Container here --> <div id="main">
<a id=“A” href=“http://www.A.co.il”>A</a> <a id=“B” href=“http://www.B.co.il”>B</a>
</div></body>
</html>
[email protected] www.booot.co.il
RULES
• [macro][operator][value]contains, equals, matches RegEx2 condition, same rule = AND2 different rules = ORGTM goes to dataLayer to find the
value of objects ONLY when they’re events.
Blocking Rule always win1st: gtm.js2nd: gtm.dom3rd: gtm.load
Rules are the “WHEN to do”
[email protected] www.booot.co.il
MACROS
• = FunctionsMust return a value with “return”You can even use the macro inside
your HTML tag!Exactly like regular function.Every Macro return value. JS Macro
must include “return”Auto event - the DOM element that
triggered the event.
[email protected] www.booot.co.il
MACRO EXAMPLES
• Constant String - very useful for GA/Adwords code
[email protected] www.booot.co.il
MACRO EXAMPLES
• Constant String - very useful for GA/Adwords code
HTML tag with macroAuto-Event vars
[email protected] www.booot.co.il
MACRO EXAMPLES
• Constant String - very useful for GA/Adwords code
HTML tag with macroAuto-Event varsLookup Table!!
[email protected] www.booot.co.il
MACRO EXAMPLES
• Constant String - very useful for GA/Adwords code
HTML tag with macroAuto-Event varsLookup Table!!dataLayer!!!!!
[email protected] www.booot.co.il
JSON array
key-value pair
GTM’s raison d'être
Before GTM snippet - dataLayer = [{‘key’:’value’}]
After GTM snippet - dataLayer.push({‘key’:’value’})
Layer with L
<a href=“www.paypal.com” onclick=“dataLayer.push({‘price’:’100’});”>100 ILS</a>
<a href=“www.paypal.com” onclick=“dataLayer.push({‘price’:’130’});”>130 ILS</a>
<a href=“www.other-site.com” onclick=“dataLayer.push({‘event’:’outbound’});”>Exit this site</a>
dataLayer
[email protected] www.booot.co.il
Tags: Category - Type - what it does (meaningful)
ex: GA - Event - click on menu item
ex: Adwords - Conversion - 10x pages
Macro: Type - what is does
ex: Lookup Table - change A macros by B
Rules - Where/When it happens
ex: All pages, event equals
NAMING
REAL EXAMPLE - eCommerce Tracking
REAL EXAMPLE - eCommerce Tracking
[email protected] www.booot.co.il
dataLayer = [{ 'gtm.blacklist': ['<html>', '<nonGoogleScripts >', ...] 'gtm.whitelist': ['<ID>', '<class>', '<ID>', ...]}];
Black wins!Classes have relationships (nonGooglePixels >
nonGoogleScripts)
SECURITY
[email protected] www.booot.co.il
THE END
THANK YOU :)
contact me at: [email protected] my posts: www.booot.co.il
be my friend: www.facebook.com/mann.shuki