May 24, 2012     GAS - Google Analytics          on Steroids                       Eduardo Cereto Carvalhowww.CardinalPath...
May 24, 2012            Implementing GA is                easy, right?www.CardinalPath.com   © 2012 Cardinal Path, Inc, Al...
May 24, 2012          What the basic     implementation gives you?      • One pageview every time a page loads      • That...
May 24, 2012          What else could you                want?      • E-commerce      • Custom Vars      • Page Interactio...
May 24, 2012www.CardinalPath.com   © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential.    5
May 24, 2012                                                                 L                                            ...
May 24, 2012    How to implement Event          Tracking?www.CardinalPath.com   © 2012 Cardinal Path, Inc, All Rights Rese...
May 24, 2012    How to implement Event          Tracking?  <a href="#" onClick="_gaq.push([_trackEvent, Videos,  Play, Bab...
May 24, 2012    How to implement Event          Tracking?  <a href="#" onClick="_gaq.push([_trackEvent, Videos,  Play, Bab...
May 24, 2012      How to implement Event            Tracking?   <a href="#" onClick="_gaq.push([_trackEvent, Videos,   Pla...
May 24, 2012          The documentation is not                  perfect      • There’s so much more you can do with       ...
May 24, 2012                   What is GAS               https://github.com/CardinalPath/gas •   A library to help you imp...
May 24, 2012     What GAS gives you for free?     •   Outbound links     •   Web Form usage     •   Download links     •  ...
May 24, 2012         Just upload gas.js and     implement GAS instead of GA    <script type="text/javascript">    var _gas...
May 24, 2012         Just upload gas.js and     implement GAS instead of GA    <script type="text/javascript">    var _gas...
May 24, 2012www.CardinalPath.com   © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential.   11
May 24, 2012                                                            s s                                               ...
May 24, 2012     Events are multidimensional. So      you can drill-down into themwww.CardinalPath.com   © 2012 Cardinal P...
May 24, 2012     Events are multidimensional. So      you can drill-down into themwww.CardinalPath.com   © 2012 Cardinal P...
May 24, 2012     Events are multidimensional. So      you can drill-down into themwww.CardinalPath.com   © 2012 Cardinal P...
May 24, 2012     Events are multidimensional. So      you can drill-down into themwww.CardinalPath.com   © 2012 Cardinal P...
May 24, 2012      Videos are even coolerwww.CardinalPath.com   © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary...
May 24, 2012      Videos are even coolerwww.CardinalPath.com   © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary...
May 24, 2012      Videos are even coolerwww.CardinalPath.com   © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary...
May 24, 2012    What do you do if your site has          multiple domains?www.CardinalPath.com   © 2012 Cardinal Path, Inc...
May 24, 2012      What do you do if your site has            multiple domains?<script type="text/javascript">  var _gaq = ...
May 24, 2012      What do you do if your site has            multiple domains?<script type="text/javascript">  <script typ...
May 24, 2012      What do you do if your site has            multiple domains?<script type="text/javascript">  <script typ...
May 24, 2012      What do you do if your site has            multiple domains?<script type="text/javascript">  <script typ...
May 24, 2012      What do you do if your site has            multiple domains?<script type="text/javascript">  <script typ...
May 24, 2012      What do you do if your site has            multiple domains?<script type="text/javascript">  <script typ...
May 24, 2012     How to do it with GAS?                _gas.push([_setAccount, UA-XXXXX-1]);                _gas.push([_se...
May 24, 2012     How to do it with GAS?                _gas.push([_setAccount, UA-XXXXX-1]);                              ...
May 24, 2012    GAS can do a lot more for you      • You can extend GAS by adding plugins      • GAS helps you if you need...
May 24, 2012      What else can you expect from           GAS in the future      • Support for more video players      • S...
May 24, 2012             https://github.com/CardinalPath/gas    Eduardo Cereto Carvalho    @eduardocereto    ecereto@cardi...
Upcoming SlideShare
Loading in...5
×

GAS - Google Analytics on Steroids

6,525

Published on

This was a quick introduction to GAS targeted to non-technical folks for a local meetup group.

https://github.com/CardinalPath/gas

Published in: Technology, News & Politics
2 Comments
16 Likes
Statistics
Notes
  • Edu, imagino que isso somado a uma implementação do Google Tag Manager deve facilitar muito a vida. Existe alguma documentação de algum teste que vocês tenham realizado?
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • thank a lot
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
6,525
On Slideshare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
74
Comments
2
Likes
16
Embeds 0
No embeds

No notes for slide

GAS - Google Analytics on Steroids

  1. 1. May 24, 2012 GAS - Google Analytics on Steroids Eduardo Cereto Carvalhowww.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 1
  2. 2. May 24, 2012 Implementing GA is easy, right?www.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 2
  3. 3. May 24, 2012 What the basic implementation gives you? • One pageview every time a page loads • That doesn’t seem a lot but with just that GA can calculate everything you see on the reportswww.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 3
  4. 4. May 24, 2012 What else could you want? • E-commerce • Custom Vars • Page Interactions ⃪ Eventswww.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 4
  5. 5. May 24, 2012www.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 5
  6. 6. May 24, 2012 L I A Fwww.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 5
  7. 7. May 24, 2012 How to implement Event Tracking?www.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 6
  8. 8. May 24, 2012 How to implement Event Tracking? <a href="#" onClick="_gaq.push([_trackEvent, Videos, Play, Babys First Birthday]);">Play</a>www.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 6
  9. 9. May 24, 2012 How to implement Event Tracking? <a href="#" onClick="_gaq.push([_trackEvent, Videos, Play, Babys First Birthday]);">Play</a>www.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 6
  10. 10. May 24, 2012 How to implement Event Tracking? <a href="#" onClick="_gaq.push([_trackEvent, Videos, Play, Babys First Birthday]);">Play</a>From: https://developers.google.com/analytics/devguides/collection/gajs/eventTrackerGuidewww.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 6
  11. 11. May 24, 2012 The documentation is not perfect • There’s so much more you can do with events,Video usage is just one small example; • The docs are just examples, you should never implement events like that in the real world; • Videos don’t even have a play button most of the time.You probably use a player like youtube.www.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 7
  12. 12. May 24, 2012 What is GAS https://github.com/CardinalPath/gas • A library to help you implement GA • Implement a lot of events so you don’t have to • Open Source • Tested on large deployments • Easy to get involved • Regular bug-fixes and new features • Spoiler: I’m the main developerwww.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 8
  13. 13. May 24, 2012 What GAS gives you for free? • Outbound links • Web Form usage • Download links • Video Usage • Youtube • Vimeo • HTML5 <video /> • Email: links usage • Scroll percentagewww.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 9
  14. 14. May 24, 2012 Just upload gas.js and implement GAS instead of GA <script type="text/javascript"> var _gas = _gas || []; _gas.push([_setAccount, UA-YYYYYY-Y]); // REPLACE WITH YOUR GA NUMBER _gas.push([_setDomainName, .mydomain.com]); // REPLACE WITH YOUR DOMAIN _gas.push([_trackPageview]); _gas.push([_gasTrackForms]); _gas.push([_gasTrackOutboundLinks]); _gas.push([_gasTrackMaxScroll]); _gas.push([_gasTrackDownloads]); _gas.push([_gasTrackYoutube]); _gas.push([_gasTrackVimeo]); _gas.push([_gasTrackMailto]); (function() { var ga = document.createElement(script); ga.type = text/javascript; ga.async = true; ga.src = /gas.js; var s = document.getElementsByTagName(script)[0]; s.parentNode.insertBefore(ga, s); })(); </script>www.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 10
  15. 15. May 24, 2012 Just upload gas.js and implement GAS instead of GA <script type="text/javascript"> var _gas = _gas || []; _gas.push([_setAccount, UA-YYYYYY-Y]); // REPLACE WITH YOUR GA NUMBER _gas.push([_setDomainName, .mydomain.com]); // REPLACE WITH YOUR DOMAIN _gas.push([_trackPageview]); _gas.push([_gasTrackForms]); _gas.push([_gasTrackOutboundLinks]); _gas.push([_gasTrackMaxScroll]); _gas.push([_gasTrackDownloads]); _gas.push([_gasTrackYoutube]); _gas.push([_gasTrackVimeo]); _gas.push([_gasTrackMailto]); (function() { var ga = document.createElement(script); ga.type = text/javascript; ga.async = true; ga.src = /gas.js; var s = document.getElementsByTagName(script)[0]; s.parentNode.insertBefore(ga, s); })(); </script>www.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 10
  16. 16. May 24, 2012www.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 11
  17. 17. May 24, 2012 s s c e u c Swww.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 11
  18. 18. May 24, 2012 Events are multidimensional. So you can drill-down into themwww.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 12
  19. 19. May 24, 2012 Events are multidimensional. So you can drill-down into themwww.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 12
  20. 20. May 24, 2012 Events are multidimensional. So you can drill-down into themwww.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 12
  21. 21. May 24, 2012 Events are multidimensional. So you can drill-down into themwww.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 12
  22. 22. May 24, 2012 Videos are even coolerwww.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 13
  23. 23. May 24, 2012 Videos are even coolerwww.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 13
  24. 24. May 24, 2012 Videos are even coolerwww.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 13
  25. 25. May 24, 2012 What do you do if your site has multiple domains?www.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 14
  26. 26. May 24, 2012 What do you do if your site has multiple domains?<script type="text/javascript"> var _gaq = _gaq || []; _gaq.push([_setAccount, UA-XXXXX-X]); _gaq.push([_setDomainName, mysite.com]); _gaq.push([_setAllowLinker, true]); _gaq.push([_trackPageview]);  (function() {    var ga = document.createElement(script); ga.type = text/javascript; ga.async = true;    ga.src = (https: == document.location.protocol ? https://ssl : http://www) + .google-analytics.com/ga.js;    var s = document.getElementsByTagName(script)[0]; s.parentNode.insertBefore(ga, s);  })();</script>www.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 14
  27. 27. May 24, 2012 What do you do if your site has multiple domains?<script type="text/javascript"> <script type="text/javascript"> var _gaq = _gaq || []; _gaq.push([_setAccount, UA-XXXXX-X]); var _gaq = _gaq || []; _gaq.push([_setDomainName, mysite.com]); _gaq.push([_setAccount, UA-XXXXX-X]); _gaq.push([_setAllowLinker, true]); _gaq.push([_setDomainName, myothersite.com]); _gaq.push([_trackPageview]); _gaq.push([_setAllowLinker, true]); _gaq.push([_trackPageview]);  (function() {    var ga = document.createElement(script); ga.type = text/javascript; ga.async = true;   (function() {    ga.src = (https: == document.location.protocol ? https://ssl : http://www) + .google-analytics.com/     var ga = document.createElement(script); ga.type = text/javascript; ga.async = true;ga.js;     ga.src = (https: == document.location.protocol ? https://ssl : http://www) + .google-analytics.com/    var s = document.getElementsByTagName(script)[0]; s.parentNode.insertBefore(ga, s); ga.js;  })();     var s = document.getElementsByTagName(script)[0]; s.parentNode.insertBefore(ga, s);   })();</script> </script>www.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 14
  28. 28. May 24, 2012 What do you do if your site has multiple domains?<script type="text/javascript"> <script type="text/javascript"> var _gaq = _gaq || []; _gaq.push([_setAccount, UA-XXXXX-X]); var _gaq = _gaq || []; _gaq.push([_setDomainName, mysite.com]); <a href="http://www.myothersite.com/intro" _gaq.push([_setAccount, UA-XXXXX-X]); _gaq.push([_setAllowLinker, true]); onclick="_gaq.push([_link, http://www.myothersite.com/intro.html]); return false;">See my blog</a> _gaq.push([_setDomainName, myothersite.com]); _gaq.push([_trackPageview]); _gaq.push([_setAllowLinker, true]); _gaq.push([_trackPageview]);  (function() {    var ga = document.createElement(script); ga.type = text/javascript; ga.async = true;   (function() {    ga.src = (https: == document.location.protocol ? https://ssl : http://www) + .google-analytics.com/     var ga = document.createElement(script); ga.type = text/javascript; ga.async = true;ga.js;     ga.src = (https: == document.location.protocol ? https://ssl : http://www) + .google-analytics.com/    var s = document.getElementsByTagName(script)[0]; s.parentNode.insertBefore(ga, s); ga.js;  })();     var s = document.getElementsByTagName(script)[0]; s.parentNode.insertBefore(ga, s);   })();</script> </script>www.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 14
  29. 29. May 24, 2012 What do you do if your site has multiple domains?<script type="text/javascript"> <script type="text/javascript"> var _gaq = _gaq || []; _gaq.push([_setAccount, UA-XXXXX-X]); var _gaq = _gaq || []; _gaq.push([_setDomainName, mysite.com]); <a href="http://www.myothersite.com/intro" _gaq.push([_setAccount, UA-XXXXX-X]); _gaq.push([_setAllowLinker, true]); onclick="_gaq.push([_link, http://www.myothersite.com/intro.html]); return false;">See my blog</a> <a href="http://www.mysite.com/" _gaq.push([_setDomainName, myothersite.com]); _gaq.push([_trackPageview]); onclick="_gaq.push([_link, http://www.mysite.com/]); return false;">Go back to my site</a> _gaq.push([_setAllowLinker, true]); _gaq.push([_trackPageview]);  (function() {    var ga = document.createElement(script); ga.type = text/javascript; ga.async = true;   (function() {    ga.src = (https: == document.location.protocol ? https://ssl : http://www) + .google-analytics.com/     var ga = document.createElement(script); ga.type = text/javascript; ga.async = true;ga.js;     ga.src = (https: == document.location.protocol ? https://ssl : http://www) + .google-analytics.com/    var s = document.getElementsByTagName(script)[0]; s.parentNode.insertBefore(ga, s); ga.js;  })();     var s = document.getElementsByTagName(script)[0]; s.parentNode.insertBefore(ga, s);   })();</script> </script>www.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 14
  30. 30. May 24, 2012 What do you do if your site has multiple domains?<script type="text/javascript"> <script type="text/javascript"> var _gaq = _gaq || []; _gaq.push([_setAccount, UA-XXXXX-X]); var _gaq = _gaq || []; _gaq.push([_setDomainName, mysite.com]); <a href="http://www.myothersite.com/intro" _gaq.push([_setAccount, UA-XXXXX-X]); _gaq.push([_setAllowLinker, true]); onclick="_gaq.push([_link, http://www.myothersite.com/intro.html]); return false;">See my blog</a> <a href="http://www.mysite.com/" _gaq.push([_setDomainName, myothersite.com]); _gaq.push([_trackPageview]); onclick="_gaq.push([_link, http://www.mysite.com/]); return false;">Go back to my site</a> _gaq.push([_setAllowLinker, true]); <form name="f" method="post" onsubmit="_gaq.push([_linkByPost, this]);"> _gaq.push([_trackPageview]);  (function() {    var ga = document.createElement(script); ga.type = text/javascript; ga.async = true;   (function() {    ga.src = (https: == document.location.protocol ? https://ssl : http://www) + .google-analytics.com/     var ga = document.createElement(script); ga.type = text/javascript; ga.async = true;ga.js;     ga.src = (https: == document.location.protocol ? https://ssl : http://www) + .google-analytics.com/    var s = document.getElementsByTagName(script)[0]; s.parentNode.insertBefore(ga, s); ga.js;  })();     var s = document.getElementsByTagName(script)[0]; s.parentNode.insertBefore(ga, s);   })();</script> </script>www.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 14
  31. 31. May 24, 2012 What do you do if your site has multiple domains?<script type="text/javascript"> <script type="text/javascript"> L var _gaq = _gaq || []; _gaq.push([_setAccount, UA-XXXXX-X]); var _gaq = _gaq || []; I _gaq.push([_setDomainName, mysite.com]); <a href="http://www.myothersite.com/intro" _gaq.push([_setAccount, UA-XXXXX-X]); _gaq.push([_setAllowLinker, true]); onclick="_gaq.push([_link, http://www.myothersite.com/intro.html]); return false;">See my blog</a> <a href="http://www.mysite.com/" _gaq.push([_setDomainName, myothersite.com]); _gaq.push([_trackPageview]); onclick="_gaq.push([_link, http://www.mysite.com/]); return false;">Go back to my site</a> _gaq.push([_setAllowLinker, true]); A <form name="f" method="post" onsubmit="_gaq.push([_linkByPost, this]);"> _gaq.push([_trackPageview]);  (function() {    var ga = document.createElement(script); ga.type = text/javascript; ga.async = true; F   (function() {    ga.src = (https: == document.location.protocol ? https://ssl : http://www) + .google-analytics.com/     var ga = document.createElement(script); ga.type = text/javascript; ga.async = true;ga.js;     ga.src = (https: == document.location.protocol ? https://ssl : http://www) + .google-analytics.com/    var s = document.getElementsByTagName(script)[0]; s.parentNode.insertBefore(ga, s); ga.js;  })();     var s = document.getElementsByTagName(script)[0]; s.parentNode.insertBefore(ga, s);   })();</script> </script>www.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 14
  32. 32. May 24, 2012 How to do it with GAS? _gas.push([_setAccount, UA-XXXXX-1]); _gas.push([_setAllowLinker, true]); _gas.push([_setDomainName, mysite.com]); _gas.push([_setDomainName, myothersite.com]); _gas.push([_gasMultiDomain, click]); _gas.push([_trackPageview]);www.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 15
  33. 33. May 24, 2012 How to do it with GAS? _gas.push([_setAccount, UA-XXXXX-1]); s s e _gas.push([_setAllowLinker, true]); c _gas.push([_setDomainName, mysite.com]); c _gas.push([_setDomainName, myothersite.com]); u _gas.push([_gasMultiDomain, click]); S _gas.push([_trackPageview]);www.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 15
  34. 34. May 24, 2012 GAS can do a lot more for you • You can extend GAS by adding plugins • GAS helps you if you need to use _setAllowAnchor(true) • GAS fixes bad formatted events for you • GAS helps you if you want to send data to multiple accounts at the same timewww.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 16
  35. 35. May 24, 2012 What else can you expect from GAS in the future • Support for more video players • Support for tracking social widgets usage • More customization options if you are a developerwww.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 17
  36. 36. May 24, 2012 https://github.com/CardinalPath/gas Eduardo Cereto Carvalho @eduardocereto ecereto@cardinalpath.comwww.CardinalPath.com © 2012 Cardinal Path, Inc, All Rights Reserved. Proprietary and Confidential. 18
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×