Google Analytics 301 Training Course from ivantage

45,640 views
45,347 views

Published on

GOOGLE ANALYTICS (301) TECHNICAL TRAINING COURSE
Architecture, processing, configuration, extending and auditing

Google Analytics 301 Training Course from ivantage

  1. 1. #GoogleAnalytics301 @ivantage with @matt_trimmer 1 Analytics 301: Advanced Tracking & Technical Implementations Matt Trimmer Principal Consultant & Managing Director Slides: http://www.slideshare.net/ivantage WIFI (for your own laptops): SSID: ITTRH Password: welcome1 Tuesday, 7 June 16
  2. 2. #GoogleAnalytics301 @ivantage with @matt_trimmer 2 Training • Analytics 101: Introduction & User Training • Analytics 201: Advanced Analysis & Measurement • Analytics 202: Advanced Analysis & Measurement • Analytics 301: Advanced Tracking & Technical Implementations • AdWords 101: Introduction to Paid Search Management • AdWords 201: Building Profitable Paid Search Campaigns • AdWords 301: Advanced AdWords Optimisation Techniques • AdWords 302: Advanced AdWords Conversion Optimisation Tuesday, 7 June 16
  3. 3. #GoogleAnalytics301 @ivantage with @matt_trimmer 3 slideshare.net/ivantage Tuesday, 7 June 16
  4. 4. #GoogleAnalytics301 @ivantage with @matt_trimmer 4 Timings and housekeeping • Start 9:30 • Break 11:15-11:30 • Lunch 12:45-13:45 • Break 15:15-15:30 • Wrap-up 17:00 • Nearest fire exit • Toilets • Please ask questions! Tuesday, 7 June 16
  5. 5. #GoogleAnalytics301 @ivantage with @matt_trimmer 5 Session 1 - Architecture, data collection and processing • Introductions, your objectives and building your 301 action plan • Architecture, data collection and processing • Understanding the Google account • Auditing user access to your Google Analytics account * • The Google Analytics Tracking Code (GATC) • Understanding and analysing the Google Analytics hit • Analysing the GA hit with Ghostery, Firebug, Google Tag Assist and the GA Chrome debugger • Understanding and analysing Google Analytics Cookies • Understanding and using the Google Analytics virtual pageview • Understanding and exploring event tracking • Understanding and exploring social interaction tracking • Understanding and exploring e-commerce tracking • Understanding and exploring enhanced e-commerce tracking • Creating a new Google Analytics account, new web properties and new views • Introducing and understanding Universal Analytics • Introducing and understanding the Measurement Protocol Tuesday, 7 June 16
  6. 6. #GoogleAnalytics301 @ivantage with @matt_trimmer 6 Session 2 - Deployment, configuration and set-up • Deployment, configuration and set-up • Deployment considerations - sub-domains, cross domains, iframe • Understanding and deploying cross domain tracking • Understanding and investigating self referrals • Understanding and exploring traffic allocation • Customising universal analytics behaviour via the user interface • Customising universal analytics behaviour via coding customisations • Editing your account settings * • Understanding and complying with the Google Analytics terms of service • Configuring your profile settings * • Cleansing your data by excluding URL query parameters * • Understanding and configuring site search * • Understanding and configuring page grouping * • Understanding and configuring error tracking* • Understanding and using predefined filters * • Understanding and using case transition filter* • Understanding and using include and exclude filters* Tuesday, 7 June 16
  7. 7. #GoogleAnalytics301 @ivantage with @matt_trimmer 7 Session 3 - Extending and integrating • Understanding and using user defined and custom variables • Understanding and using custom dimensions and metrics • Understanding and using data import • Understanding and complying with the Google Analytics terms of service with User ID • Defining and understanding native session stitching • Defining and understanding advanced session stitching • Understanding and using alternative user tracking methods Tuesday, 7 June 16
  8. 8. #GoogleAnalytics301 @ivantage with @matt_trimmer 8 Session 4 - The measurement protocol other APIs • Understanding and using the new measurement protocol API • Understanding and using the Google Hit Builder • Understanding and exploring measurement protocol examples • Introducing the management API • Introducing and using the Account Explorer • Introducing the provisioning API • Introducing the core reporting API • Introducing and using the GA query explorer • Introducing and using the GA spread sheet add-on • Introducing the multi-channel funnel reporting API • Introducing the real time reporting API • Introducing the embed API for dash boarding • Introducing the metadata API • Introducing the dimensions and metrics explorer • Some really useful API approved applications • Wrap up, conclusions, your action plan and feedback Tuesday, 7 June 16
  9. 9. #GoogleAnalytics301 @ivantage with @matt_trimmer 9 Be social • Say hello to your neighbour! • Google+ • https://plus.google.com/ 118368778596879435387/posts • LinkedIn • http://www.linkedin.com/in/matttrimmer • Twitter • #measure • #googleanalytics • @googleanalytics Tuesday, 7 June 16
  10. 10. #GoogleAnalytics301 @ivantage with @matt_trimmer 10 Introductions • First • Me (Matt Trimmer) & ivantage overview • In a moment • A little bit about you • Your name • Your role • Your organisation/department/site/site area • Your objectives for attending today Tuesday, 7 June 16
  11. 11. #GoogleAnalytics301 @ivantage with @matt_trimmer 11 Introductions – your turn! • A little bit about you • Your name • Your role • Your organisation/department/site/site area • Your objectives for attending today Tuesday, 7 June 16
  12. 12. #GoogleAnalytics301 @ivantage with @matt_trimmer 12 Auditing user access to Google Analytics • Exercise • Admin > User Management • Who’s accessing your data? Tuesday, 7 June 16
  13. 13. #GoogleAnalytics301 @ivantage with @matt_trimmer 13 Admin access to Google Analytics • Key concepts • Minimise gmail addresses • Use corporate email addresses • Convert to a Google Account • Shared admin/edit account for AdWords? • Agencies • Ownership? • Who let’s who in? • Resources • http://blog.ivantage.co.uk/2010/05/how-do-i-open- google-account.html Tuesday, 7 June 16
  14. 14. #GoogleAnalytics301 @ivantage with @matt_trimmer 14 Accessing Google Analytics • Key concept • Best not to share a log-in with colleagues! • Best not to use a generic team-based log in! • Security and confidentially issues • GA has “personal” features • Dashboards • Annotations • Shortcuts • Alerts • Segments • Custom reports • Scheduled emails Tuesday, 7 June 16
  15. 15. #GoogleAnalytics301 @ivantage with @matt_trimmer 15 Creating a new Google Analytics account • Exercise • Create a new Google Analytics Account • Call it www.yournamewebsite.com • Key Concept • Issuing a new UA- code • Terms of Services • Understanding the Coding Wizard and common configurations Tuesday, 7 June 16
  16. 16. 16 www.ivantage.co.uk 49 Agree the ToS Tuesday, 7 June 16
  17. 17. 17 www.ivantage.co.uk 50 The Google Analytics Terms of Service • 2. Fees and Service. Subject to Section 15, the Service is provided without charge to You for up to 10 million Hits per month per account. Google may change its fees and payment policies for the Service from time to time including the addition of costs for geographic data, the importing of cost data from search engines, or other fees charged to Google or its wholly-owned subsidiaries by third party vendors for the inclusion of data in the Service reports. The changes to the fees or payment policies are effective upon Your acceptance of those changes which will be posted at http://www.google.com/analytics. Unless otherwise stated, all fees are quoted in U.S. Dollars. Any outstanding balance becomes immediately due and payable upon termination of this Agreement and any collection expenses (including attorneys' fees) incurred by Google will be included in the amount owed, and may be charged to the credit card or other billing mechanism associated with Your AdWords account. Tuesday, 7 June 16
  18. 18. 18 www.ivantage.co.uk 51 The Google Analytics Terms of Service • 7. Privacy. You will not (and will not allow any third party to) use the Service to track, collect or upload any data that personally identifies an individual (such as a name, email address or billing information), or other data which can be reasonably linked to such information by Google. You will have and abide by an appropriate Privacy Policy and will comply with all applicable laws and regulations relating to the collection of information from Visitors. You must post a Privacy Policy and that Privacy Policy must provide notice of Your use of cookies that are used to collect traffic data, and You must not circumvent any privacy features (e.g., an opt-out) that are part of the Service. You may participate in an integrated version of Google Analytics and any DoubleClick product or service or any other Google display ads product or service ("Google Analytics for Display Advertisers"). If You use Google Analytics for Display Advertisers, You will comply with the Google Analytics for Display Advertisers Policy (available at http://support.google.com/analytics/bin/answer.py? hl=en&topic=2611283&answer=2700409 ) and, as set forth in the policy, disclose in Your Privacy Policy (i) Your use of Google Analytics for Display Advertisers and its features You use, and (ii) how Visitors can opt-out from Google Analytics for Display Advertisers. Your access to and use of any DoubleClick or Google display ads data is subject to the applicable terms between You and Google. Tuesday, 7 June 16
  19. 19. www.ivantage.co.uk 19 Complying with the Google Analytics Terms of Services • Exercise • Check for personal data in Content > Site content > Pages • Filter for Containing “@” Tuesday, 7 June 16
  20. 20. #GoogleAnalytics301 @ivantage with @matt_trimmer 20 The very latest GATC - Universal Analytics Tuesday, 7 June 16
  21. 21. #GoogleAnalytics301 @ivantage with @matt_trimmer 21 The GATC - your version? • Exercise and key concepts • Oldest to newest • To find • View source • Ghostery • Google Tag Assist ga('create', 'UA-XXXX-X', 'auto'); ga('send', 'pageview'); _gaq.push(['_setAccount', 'UA-XXXXX-X']); _gaq.push(['_trackPageview']); _uacct ="UA-xxxxx-x"; urchinTracker(); var pageTracker = _gat._getTracker("UA-xxxxxx-x"); pageTracker._trackPageview(); Tuesday, 7 June 16
  22. 22. #GoogleAnalytics301 @ivantage with @matt_trimmer 22 The three GATCs Tuesday, 7 June 16
  23. 23. #GoogleAnalytics301 @ivantage with @matt_trimmer 23 1) The original Urchin.js <script src="http://www.google-analytics.com/urchin.js" type="text/javascript"> </script> <script type="text/javascript"> _uacct ="UA-xxxxx-x"; urchinTracker(); </script> Tuesday, 7 June 16
  24. 24. #GoogleAnalytics301 @ivantage with @matt_trimmer 24 2) The updated ga.js <script type="text/javascript"> var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www."); document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/ script%3E")); </script> <script type="text/javascript"> try{ var pageTracker = _gat._getTracker("UA-xxxxxx-x"); pageTracker._trackPageview(); } catch(err) {} </script> Tuesday, 7 June 16
  25. 25. #GoogleAnalytics301 @ivantage with @matt_trimmer 25 3) The asynchronous ga.js <script type="text/javascript">   var _gaq = _gaq || [];   _gaq.push(['_setAccount', 'UA-XXXXX-X']);   _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> Tuesday, 7 June 16
  26. 26. #GoogleAnalytics301 @ivantage with @matt_trimmer 26 4) The analytics.js (Universal Analytics) <script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-XXXX-Y', 'auto'); ga('send', 'pageview'); </script> Tuesday, 7 June 16
  27. 27. #GoogleAnalytics301 @ivantage with @matt_trimmer 27 The four GATCs - where to put them • Urchin.js • before closing </body> • ga.js • before closing </body> • Supports Event Tracking • ga.js (Asynchronous - ) • before closing </head> • Supports earlier loading without risk to content rendering • analytics.js (Asynchronous) • before closing </head> • Supports earlier loading without risk to content rendering Tuesday, 7 June 16
  28. 28. #GoogleAnalytics301 @ivantage with @matt_trimmer 28 Whatever the version, common principles • Loading the master JavaScript file (ga.js or analytics.js) • Setting the Google Analytics web property to be written to • The pageview hit ga('create', 'UA-XXXX-X', 'auto'); ga('send', 'pageview'); _gaq.push(['_setAccount', 'UA-XXXXX-X']); _gaq.push(['_trackPageview']); _uacct ="UA-xxxxx-x"; urchinTracker(); var pageTracker = _gat._getTracker("UA-xxxxxx-x"); pageTracker._trackPageview(); Tuesday, 7 June 16
  29. 29. #GoogleAnalytics301 @ivantage with @matt_trimmer 29 The dc.js • Doubleclick • For re-marketing in Google Analytics • Using advanced segments • Age, gender and Interest reporting • 3rd party cookie • Enabling with universal • Code change Tuesday, 7 June 16
  30. 30. #GoogleAnalytics301 @ivantage with @matt_trimmer 3054 How Google Analytics works Website Tuesday, 7 June 16
  31. 31. #GoogleAnalytics301 @ivantage with @matt_trimmer 3155 How Google Analytics works Website cookies Tuesday, 7 June 16
  32. 32. #GoogleAnalytics301 @ivantage with @matt_trimmer 32 The “__utm.gif” request from the ga.js to Google http://www.google-analytics.com/__utm.gif? utmwv=5.4.8&utms=1&utmn=2057827531&utmhn=ivantage- training.com&utmcs=windows-1252&utmsr=1440x900&utmvp=1425x77&utmsc=24- bit&utmul=en-us&utmje=0&utmfl=12.0%20r0&utmdt=RAGE%20Template %20One&utmhid=391906475&utmr=http%3A%2F%2Fwww.google.com%2Furl%3Fsa%3Dt %26rct%3Dj%26q%3D%26esrc%3Ds%26source%3Dweb%26cd%3D17%26ved %3D0CFAQFjAGOAo%26url%3Dhttp%253A%252F%252Fivantage-training.com%252F%26ei %3DBPg5U-PnOtbLsQTVsYHwAg%26usg%3DAFQjCNFYl8Z4VCzcd2lyQ6y-zYpQONKqyQ %26bvm%3Dbv.63934634%2Cd.cWc&utmp= %2F&utmht=1396307980603&utmac=UA-27251347-7&utmcc=__utma %3D150063470.1121932111.1396307898.1396307898.1396307981.2%3B%2B__utmz %3D150063470.1396307981.2.2.utmcsr%3Dgoogle%7Cutmccn%3D(organic)%7Cutmcmd %3Dorganic%7Cutmctr%3D(not%2520provided)%3B&utmu=q~ Tuesday, 7 June 16
  33. 33. #GoogleAnalytics301 @ivantage with @matt_trimmer 33 The “collect” request from the analytics.js to Google http://www.google-analytics.com/collect? v=1&_v=j17&a=541739049&t=pageview&_s=1&dl=http%3A%2F %2Fwww.ivantage-training.com%2Fdomains2-UA.html %3Futm_source%3Dtest-source%26utm_medium%3Dtest-medium %26utm_term%3Dtest-term%26utm_content%3Dtest-content %26utm_campaign%3Dtest-name&ul=en- us&de=windows-1252&dt=RAGE%20Template%20One&sd=24- bit&sr=1440x900&vp=1425x417&je=0&fl=12.0%20r0&_utma=1 50063470.372043782.1396406835.1396406835.1396406972.2 &_utmz=150063470.1396406972.2.2.utmcsr%3Dtest-source %7Cutmccn%3Dtest-name%7Cutmcmd%3Dtest-medium %7Cutmctr%3Dtest-term%7Cutmcct%3Dtest- content&_utmht=1396406985517&_u=MQAC~&cid=372043782. 1396406835&tid=UA-27251347-13&z=784772158 Tuesday, 7 June 16
  34. 34. #GoogleAnalytics301 @ivantage with @matt_trimmer 34 Google Analytics cookies UTMb - Visit cookie, lasts for 30 minutes from every page view UTMa - Unique visitor cookie, lasts for 2 years from set or update on every page view UTMc - Visit end cookie, not set to expire, does so when browser closes UTMv - Not always set, requires the _setVar() command UTMz - Campaign visit tracking cookie, determines traffic sources, lasts for 6 months from set or update on every page view Tuesday, 7 June 16
  35. 35. #GoogleAnalytics301 @ivantage with @matt_trimmer 35 Google Analytics cookies - Universal Analytics _ga- Name can be changed, might not be used! • _ga • Can be renamed • Contained anonymous client ID • Expires after two years Tuesday, 7 June 16
  36. 36. #GoogleAnalytics301 @ivantage with @matt_trimmer 36 The virtual pageview • Urchin.js • urchinTracker('/my/made/up/url'); • GA.js • pageTracker._trackPageview('/my/made/up/url'); • GA.js (Async) • _gaq.push(['_trackPageview','/my/made/up/url']); • analytics.js (Universal Analytics) • ga('send', 'pageview', '/my/made/up/url'); Tuesday, 7 June 16
  37. 37. #GoogleAnalytics301 @ivantage with @matt_trimmer 37 Tracking PDFs • Urchin.js • <a href="/my/pdf.pdf" onclick="urchinTracker('/pdfs/my/ pdf.pdf');"> • ga.js • <a href="/my/pdf.pdf" onclick="pageTracker._trackPageview('/ pdfs/my/pdf.pdf');"> • ga.js (Async) • <a href="/my/pdf.pdf" onclick="_gaq.push(['_trackPageview','/ pdfs/my/pdf.pdf']);"> • analytics.js (Async) (Universal Analytics) • <a href="/my/pdf.pdf" onclick="ga('send', 'pageview', '/pdfs/my/ pdf.pdf');"> Tuesday, 7 June 16
  38. 38. #GoogleAnalytics301 @ivantage with @matt_trimmer 38 Event tracking Tuesday, 7 June 16
  39. 39. #GoogleAnalytics301 @ivantage with @matt_trimmer 39 Event tracking Tuesday, 7 June 16
  40. 40. #GoogleAnalytics301 @ivantage with @matt_trimmer 40 Event tracking (analytics.js) Tuesday, 7 June 16
  41. 41. #GoogleAnalytics301 @ivantage with @matt_trimmer 41 Event tracking Tuesday, 7 June 16
  42. 42. #GoogleAnalytics301 @ivantage with @matt_trimmer 42 Event tracking Videos Play Baby’s Fist Birthday Tuesday, 7 June 16
  43. 43. #GoogleAnalytics301 @ivantage with @matt_trimmer 43 Event tracking (interaction versus non- interaction) • To change bounce or not to change bounce? • By default, event tracking impacts your bounce rate • ie - a visitor clicking on the video then leaving, has not bounced. • Set to true, event tracking does not impact bounce • ie - a visitor clicking on the video then leaving, bounced. Tuesday, 7 June 16
  44. 44. #GoogleAnalytics301 @ivantage with @matt_trimmer 44 Social Interactions Tuesday, 7 June 16
  45. 45. #GoogleAnalytics301 @ivantage with @matt_trimmer 45 Social Interactions Tuesday, 7 June 16
  46. 46. #GoogleAnalytics301 @ivantage with @matt_trimmer 46 Social Interactions Tuesday, 7 June 16
  47. 47. #GoogleAnalytics301 @ivantage with @matt_trimmer 47 E-commerce Text Tuesday, 7 June 16
  48. 48. #GoogleAnalytics301 @ivantage with @matt_trimmer 48 Enhanced Ecommerce • New JavaScript library - ec.js • Product data (productFieldObject) • SKU, Name, Brand, Category, Price, Variant, Price, Quantity • Product impressions data (impressionFieldObject) • Impressions in lists (results) and categories • Product promotion data (promoFieldObject) • ID, Name, Creative, Position • Product and promotion action • Click, detail, add, remove, checkout, checkout_option, purchase, refund, promo_click • Purchase or Refund • Transactional action data (actionFieldObject) • Transaction, affiliation, revenue, tac, shipping, coupon, list, step, check out option • Demo • https://ga-dev-tools.appspot.com/enhanced-ecommerce/ Tuesday, 7 June 16
  49. 49. #GoogleAnalytics301 @ivantage with @matt_trimmer 49 Universal Analytics • Google Analytics reinvented (back end) • Built on the Google Measurement Protocol • The Measurement Protocol • Here it is • http://www.google-analytics.com/collect? v=1&tid=UA-3742829-1&cid=999-000000&t=pageview&dp =%2F*YourFirstName*-page-test-of-UA • Hit builder • https://ga-dev-tools.appspot.com/hit-builder/ Tuesday, 7 June 16
  50. 50. #GoogleAnalytics301 @ivantage with @matt_trimmer 50 Universal Analytics with Measurement Protocol? • Now, any device on the Internet can write to Google Analytics! • Devices • Mobiles, tablets, Google Glass, etc • EPOS systems (Cash registers) • Call Centres • Interesting examples • Analytics.js! • Google SDKs for Android and iOS (First) • Google Forms • Search online for examples with movement, temperature, light • Bizarre examples • Dog collar • Coffee machines Tuesday, 7 June 16
  51. 51. #GoogleAnalytics301 @ivantage with @matt_trimmer 51 Universal Analytics • Reduces 4 cookies to 1 • Option to dispense with all cookies • Your web technology sends a unique user ID via the measurement protocol • What does this mean? • Visitor tracking not visit tracking (User ID) • Your visitors interacting across multiple devices • Web, app, tablet • Your visitors interacting across multiple channels • Store, catalogue, telephone Tuesday, 7 June 16
  52. 52. #GoogleAnalytics301 @ivantage with @matt_trimmer 52 Universal Analytics • Create your own dimensions and metrics • 20 of each per web property • 200 of each for GA Premium Tuesday, 7 June 16
  53. 53. #GoogleAnalytics301 @ivantage with @matt_trimmer 53 Break time Tuesday, 7 June 16
  54. 54. #GoogleAnalytics301 @ivantage with @matt_trimmer 54 Tracking sub-domains • A.dog.com • B.dog.com • C.dog.com • No code configuration required for Universal • This was difficult under Classic • Upgrading on sites that have sub-domains • Self referrals will reduce • Maybe run Classic and Universal and parallel • Made want to add a filter to merge hostname and request URI Tuesday, 7 June 16
  55. 55. #GoogleAnalytics301 @ivantage with @matt_trimmer 55 Filter for hostname and request URI merger • A.dog.com/index.html - 10,000 Page views • B.dog.com/index.html - 5,000 Page views • C.dog.com/index.html - 5,000 Pageviews • /index.html - 20,000 Page views • Preserve hostname • Filter Type: Custom filter > Advanced Field A: Hostname Extract A: (.*) Field B: Request URI Extract B: (.*) Output To: Request URI Constructor: $A1/$B1 Tuesday, 7 June 16
  56. 56. #GoogleAnalytics301 @ivantage with @matt_trimmer 56 Domain control with universal - auto • auto Tuesday, 7 June 16
  57. 57. #GoogleAnalytics301 @ivantage with @matt_trimmer 57 Cross domain tracking challenge • X.com • Y.com • Analytics.js user first party cookie for Client ID • Cookie can only be accessed on the domain on which it is set. • Y.com cannot access X.com • Two Client IDs are set and so two sessions and users • So client ID stored in cookie needs to pass from X.com to Y.com via URL (Decorated LINK) Tuesday, 7 June 16
  58. 58. #GoogleAnalytics301 @ivantage with @matt_trimmer 58 Cross domain tracking solution • X.com • Y.com • Use the Cross Domain Auto Link plugin • https://developers.google.com/analytics/devguides/collection/ analyticsjs/cross-domain#autolink • Load the library • Define domains • Allow linker • Links will decorate • Ignore referrals • May want to add a filter to merge hostname and request URI Tuesday, 7 June 16
  59. 59. #GoogleAnalytics301 @ivantage with @matt_trimmer 59 Domain control with universal • Library, domains and linker Tuesday, 7 June 16
  60. 60. #GoogleAnalytics301 @ivantage with @matt_trimmer 60 Universal - referral exclusion • Referral exclusion • Set in the UI • Ignore specific referrals • Not a substitute for cross domain tracking Tuesday, 7 June 16
  61. 61. #GoogleAnalytics301 @ivantage with @matt_trimmer 61 Understanding visits • Google Analytics finishes a visit: • After 30 mins of inactivity (default, can be changed) • When there is a campaign change • This is why we might want to ignore referrals • At midnight (your time zone) Tuesday, 7 June 16
  62. 62. #GoogleAnalytics301 @ivantage with @matt_trimmer 62 Useful tools and reports to help check page tagging • Resources: • http://blog.ivantage.co.uk/2010/11/useful-tools-and- reports-to-help-check.html • Exercise: • GA >Traffic Sources >Referring Sites • GA >Traffic Sources >Referring Sites > Referral Path • GA > Visitors > Network Properties > Hostnames • Key concepts: • Google Analytics' Achilles Heel is poor page tagging! Tuesday, 7 June 16
  63. 63. #GoogleAnalytics301 @ivantage with @matt_trimmer 63 Coding customisations • Exercise • In Firefox, visit: • www.google-analytics.com/urchin.js • Help • https://developers.google.com/analytics/?hl=en Tuesday, 7 June 16
  64. 64. #GoogleAnalytics301 @ivantage with @matt_trimmer 64 Coding customisations • Retrieving the client ID Tuesday, 7 June 16
  65. 65. #GoogleAnalytics301 @ivantage with @matt_trimmer 65 Coding customisations • Disabling cookies Tuesday, 7 June 16
  66. 66. #GoogleAnalytics301 @ivantage with @matt_trimmer 66 Coding customisations • Setting cookies on localhost Tuesday, 7 June 16
  67. 67. #GoogleAnalytics301 @ivantage with @matt_trimmer 67 Coding customisations • Setting expiration time • 63072000 (two years) Tuesday, 7 June 16
  68. 68. #GoogleAnalytics301 @ivantage with @matt_trimmer 68 Coding customisations • Sample rate Tuesday, 7 June 16
  69. 69. #GoogleAnalytics301 @ivantage with @matt_trimmer 69 Coding customisations • Allow anchor parameters Tuesday, 7 June 16
  70. 70. #GoogleAnalytics301 @ivantage with @matt_trimmer 70 Coding customisations • Cookie name Tuesday, 7 June 16
  71. 71. #GoogleAnalytics301 @ivantage with @matt_trimmer 71 Coding customisations • Anonymize IP Tuesday, 7 June 16
  72. 72. #GoogleAnalytics301 @ivantage with @matt_trimmer 72 Coding customisations • Sessions control Tuesday, 7 June 16
  73. 73. #GoogleAnalytics301 @ivantage with @matt_trimmer 73 Coding customisations • Campaign source, medium, keyword, content campaign ID Tuesday, 7 June 16
  74. 74. #GoogleAnalytics301 @ivantage with @matt_trimmer 74 Coding customisations • Document location URL Tuesday, 7 June 16
  75. 75. #GoogleAnalytics301 @ivantage with @matt_trimmer 75 Coding customisations • Document referrer Tuesday, 7 June 16
  76. 76. #GoogleAnalytics301 @ivantage with @matt_trimmer 76 Coding customisations • Document host name Tuesday, 7 June 16
  77. 77. #GoogleAnalytics301 @ivantage with @matt_trimmer 77 Coding customisations • Document path Tuesday, 7 June 16
  78. 78. www.ivantage.co.uk 78 Edit Account Settings § Exercise § Edit your Account Settings for any account § View your Urchin Account number (UA-XXXXX) § View your Account Name § View your data sharing settings § Key concepts § You can never change your UA number § Your can change your Google Analytics account name § Give it meaning § Add a number to bring to the top § Share your Google Analytics data with § Google Products for enhanced services like » Adwords Conversion Optimizer Tuesday, 7 June 16
  79. 79. 79 www.ivantage.co.uk 49 Agree the ToS Tuesday, 7 June 16
  80. 80. 80 www.ivantage.co.uk 50 The Google Analytics Terms of Service • 2. Fees and Service. Subject to Section 15, the Service is provided without charge to You for up to 10 million Hits per month per account. Google may change its fees and payment policies for the Service from time to time including the addition of costs for geographic data, the importing of cost data from search engines, or other fees charged to Google or its wholly-owned subsidiaries by third party vendors for the inclusion of data in the Service reports. The changes to the fees or payment policies are effective upon Your acceptance of those changes which will be posted at http://www.google.com/analytics. Unless otherwise stated, all fees are quoted in U.S. Dollars. Any outstanding balance becomes immediately due and payable upon termination of this Agreement and any collection expenses (including attorneys' fees) incurred by Google will be included in the amount owed, and may be charged to the credit card or other billing mechanism associated with Your AdWords account. Tuesday, 7 June 16
  81. 81. 81 www.ivantage.co.uk 51 The Google Analytics Terms of Service • 7. Privacy. You will not (and will not allow any third party to) use the Service to track, collect or upload any data that personally identifies an individual (such as a name, email address or billing information), or other data which can be reasonably linked to such information by Google. You will have and abide by an appropriate Privacy Policy and will comply with all applicable laws and regulations relating to the collection of information from Visitors. You must post a Privacy Policy and that Privacy Policy must provide notice of Your use of cookies that are used to collect traffic data, and You must not circumvent any privacy features (e.g., an opt-out) that are part of the Service. You may participate in an integrated version of Google Analytics and any DoubleClick product or service or any other Google display ads product or service ("Google Analytics for Display Advertisers"). If You use Google Analytics for Display Advertisers, You will comply with the Google Analytics for Display Advertisers Policy (available at http://support.google.com/analytics/bin/answer.py? hl=en&topic=2611283&answer=2700409 ) and, as set forth in the policy, disclose in Your Privacy Policy (i) Your use of Google Analytics for Display Advertisers and its features You use, and (ii) how Visitors can opt-out from Google Analytics for Display Advertisers. Your access to and use of any DoubleClick or Google display ads data is subject to the applicable terms between You and Google. Tuesday, 7 June 16
  82. 82. www.ivantage.co.uk 82 Complying with the Google Analytics Terms of Services • Exercise • Check for personal data in Content > Site content > Pages • Filter for Containing “@” Tuesday, 7 June 16
  83. 83. www.ivantage.co.uk 83 Exporting your data for analysis & cleansing • Exercise • Export your Top Content • Use &limit=50000 suffixed to the Content >Top Content report • Export to CSV (does not work for CSV for Excel) • Check your Content for personal data • Version 5 • explorer-table.rowStart%3D0%26explorer-table.rowCount%3D25/ • explorer-table.rowStart%3D0%26explorer-table.rowCount%3D6000/ Tuesday, 7 June 16
  84. 84. www.ivantage.co.uk 84 Cleansing your data by excluding URL query parameters • Example • http://www.mysite.com/contacts/?SID=f3b20768c9dc0df4a0889e89cda61cb3 - 1 Pageview • http://www.mysite.com/contacts/?SID=3760d086e64b0d6f3821362cb9efa4ef - 1 Pageview • http://www.mysite.com/contacts/?SID=0bf7387b53f8d75bd9038c652b90d107 - 1 Pageview • In Google Analytics: • /contacts/?SID=f3b20768c9dc0df4a0889e89cda61cb3 - 1 Pageview • /contacts/?SID=3760d086e64b0d6f3821362cb9efa4ef - 1 Pageview • /contacts/?SID=0bf7387b53f8d75bd9038c652b90d107 - 1 Pageview • In Google Analytics, after Exclude URL Query Parameters • /contacts - 3 Pageviews Tuesday, 7 June 16
  85. 85. www.ivantage.co.uk 85 Cleansing your data by excluding URL query parameters • Exercise • Check for query string parameters in Content > Top Content • Export your Top Content • Use &limit=50000 suffixed to the Content >Top Content report • Export to CSV (does not work for CSV for Excel) • Check your Content for URLs to clean or remove in order to aggregate your data for better analysis Tuesday, 7 June 16
  86. 86. www.ivantage.co.uk 86 Editing other profile settings • Exercise • Edit your Profile Settings for any account • View your profile name • View your website URL • View your default page • Key concepts • Your website URL controls your pages report • Your default page prevents / in pages report and enables In-Page Analytics Tuesday, 7 June 16
  87. 87. www.ivantage.co.uk 87 Configuring site search • Key concept • Site search records your site’s search box activity • Normally very easy to configure • Exercise • Try a search on your site • Configure site search Tuesday, 7 June 16
  88. 88. www.ivantage.co.uk 88 Configuring site search without ? • Key concept • When your site’s search box does not use query parameters use trackPageview technology • urchin.js • urchinTracker('/search/?keyword={keyword}'); • ga.js • pageTracker._trackPageview('/search/?keyword={keyword}'); • ga.js (Async) • _gaq.push(['_trackPageview','/search/?keyword={keyword}']); • analytics.js (Async) • ga('send', 'pageview', '/search/?keyword={keyword}'); Tuesday, 7 June 16
  89. 89. www.ivantage.co.uk 89 Creating duplicate “Profiles/Views” • Exercise • For your live account (do not go near the delete button!) • Add new profiles/views: • Call it www.mywebsite.com (Raw - Duplicate) • Create a 2nd and call it www.mywebsite.com (Training IP Exclude) • Create a 3rd and call it www.mywebsite.com (Sport Include) • Create a 4th and call it www.mywebsite.com (Domains Exclude) • Key concepts • When you “Add a Profile for an existing domain” you effective duplicate data collection from that point into a newly created Profile • Duplicating profiles is important to • Back-up your data • Apply Filters (because Filter act at the data collection layer, they can be destructive) • For selective Profile access • To create more that 20 goals • To reduce sampling Tuesday, 7 June 16
  90. 90. www.ivantage.co.uk 90 Google Analytics Filters - IP address • Exercise • Create a Predefined Filter to exclude internal traffic • From where you are today • You may need www.whatismyipaddress.com • Resources • http://blog.ivantage.co.uk/2010/11/google-analytics-ip-address-exclusion.html Tuesday, 7 June 16
  91. 91. www.ivantage.co.uk 91 Google Analytics Filters - ISP domain • Exercise • Create a Predefined Filter to exclude internal traffic • From where you are today • Can you use something other than an IP address? Tuesday, 7 June 16
  92. 92. www.ivantage.co.uk 92 Google Analytics Filters - Include to a folder • Exercise • Create a Predefined Filter to zoom into data • Visit RTE.ie • Create a Filter to collect only “sport” content into a profile for the sport journalists • Resources • Regular Expressions • http://blog.ivantage.co.uk/2010/11/google-analytics-regular-expressions.html Tuesday, 7 June 16
  93. 93. www.ivantage.co.uk 93 Google Analytics Unified Segments - Include to a folder • Exercise • Create a segment to zoom into data on the sport section of the site • Key concept • Segments work at the visit/visitor (user) level • Filters work at the hit (image request level) level Tuesday, 7 June 16
  94. 94. www.ivantage.co.uk 94 Use filters to negate sampling • Key concept • Report sampling occurs • on ad-hoc data queries (cross segmenting or segments) • when there’s 250,000 or more visits in the date range requested • on any query • involving 1,000,000 unique dimensions • e.g, URLs, Keywords • Slide sampling bar • Reduce data range to reduce/negate Google Analytics sampling • Include filters on duplicate Profiles can reduce/negate Google Analytics sampling Tuesday, 7 June 16
  95. 95. www.ivantage.co.uk 95 Good profile/view practice • Key concept • Raw • Untouched • All visits • No removal, but data cleansing, profile settings • All external visits • Remove staff/agencies/partners • All internal visits • Include only staff/agencies/partners Tuesday, 7 June 16
  96. 96. #GoogleAnalytics301 @ivantage with @matt_trimmer 96 Simple filters • Predefined Tuesday, 7 June 16
  97. 97. #GoogleAnalytics301 @ivantage with @matt_trimmer 97 Advanced Filters • URI reformatting Tuesday, 7 June 16
  98. 98. #GoogleAnalytics301 @ivantage with @matt_trimmer 98 Cascading Filters - original search term Tuesday, 7 June 16
  99. 99. #GoogleAnalytics301 @ivantage with @matt_trimmer 99 Cascading Filters - transaction source Tuesday, 7 June 16
  100. 100. #GoogleAnalytics301 @ivantage with @matt_trimmer 100 Cascading Filters - organic search position Tuesday, 7 June 16
  101. 101. #GoogleAnalytics301 @ivantage with @matt_trimmer 101 Cascading Filters - call centre Tuesday, 7 June 16
  102. 102. #GoogleAnalytics301 @ivantage with @matt_trimmer 102 Tracking custom 404s • On your custom 404 page ga('send', 'pageview', '404.html?page='+ document.location.pathname +document.location.search +'&from=' + document.referrer); Tuesday, 7 June 16
  103. 103. #GoogleAnalytics301 @ivantage with @matt_trimmer 103 Lunch time Tuesday, 7 June 16
  104. 104. #GoogleAnalytics301 @ivantage with @matt_trimmer 104 The User-Defined Segment • Set using a JavaScript function • Assign users on a page load • <body onLoad="javascript:pageTracker._setVar(‘Page X Viewers');"> • Assign users to a segment when a link is clicked • <a href="link.html" onClick="pageTracker._setVar(‘Link X followers');">Click here</a> Tuesday, 7 June 16
  105. 105. #GoogleAnalytics301 @ivantage with @matt_trimmer 105 The User-Defined Segment • Assign visitors to a segment based on their form selection • In this example, visitors are assigned to a segment according to their selection in a form. • <form onSubmit="pageTracker._setVar(this.mymenu.options [this.mymenu.selectedIndex].value);"> • <select name=mymenu> • <option value=“Male (18-30)">Male (18-30)"> option> • <option value="Male (30-65)">Male (30-65)"> </option> • <option value="Male (65+)"> Male (65+)"> </option> • <option value=" Female (18-35)">Female (18-35)"> </option> • <option value=" Female (30-65)">Female (30-65)"> </option> • <option value=" Female (65+)">Female (65+)"> </option> • Voucher codes at checkout • Measure off-line marketing promotions • What‘s important for you to know about your visitors? Tuesday, 7 June 16
  106. 106. #GoogleAnalytics301 @ivantage with @matt_trimmer 106 Custom Variables Tuesday, 7 June 16
  107. 107. #GoogleAnalytics301 @ivantage with @matt_trimmer 107 Custom Variables - Coding Tuesday, 7 June 16
  108. 108. #GoogleAnalytics301 @ivantage with @matt_trimmer 108 Custom Variables - Page Level • Visits to website “sections” and “sub-sections” Tuesday, 7 June 16
  109. 109. #GoogleAnalytics301 @ivantage with @matt_trimmer 109 Custom Variables - Visitor Level • Visitor “Member Type” Tuesday, 7 June 16
  110. 110. #GoogleAnalytics301 @ivantage with @matt_trimmer 110 Custom Variables - Visit/session Level • Visits logged-in “Member” and checkout started “shopping attempts” Tuesday, 7 June 16
  111. 111. #GoogleAnalytics301 @ivantage with @matt_trimmer 111 Universal Analytics • Create your own dimensions and metrics • 20 of each per web property • 200 of each for GA Premium Tuesday, 7 June 16
  112. 112. #GoogleAnalytics301 @ivantage with @matt_trimmer 112 Custom dimensions & metrics • Create your own dimensions and metrics • Like custom variables but server side • Define them in the UI • Dimension • Hit • Visit • Visitor • Metric • Integer • Currency • Time • Less data from browser to GA Tuesday, 7 June 16
  113. 113. #GoogleAnalytics301 @ivantage with @matt_trimmer 113 Configuring • Let’s set one up in out test UA accounts • My test dimension • My test metric Tuesday, 7 June 16
  114. 114. #GoogleAnalytics301 @ivantage with @matt_trimmer 114 Sending • Set as a part of an existing hit • Page, event, transaction or social interaction • ga('send', 'pageview', {'dimension15':  'My Custom Dimension'}); • or with Set command before a hit • var dimensionValue = 'SOME_DIMENSION_VALUE'; • ga('set', 'dimension1', dimensionValue); • Scope and Precedence • https://developers.google.com/analytics/devguides/ platform/customdimsmets#scope Tuesday, 7 June 16
  115. 115. #GoogleAnalytics301 @ivantage with @matt_trimmer 115 Data import • Upload data to Google Analytics • Various types and schemas • Hit data • Refund data • Extended hit data • User data • Campaign data • Geography data • Content data • Product data • Custom data • Summry data • Cost data Tuesday, 7 June 16
  116. 116. #GoogleAnalytics301 @ivantage with @matt_trimmer 116 The User ID • For those who you can identify (logged-in users) Tuesday, 7 June 16
  117. 117. #GoogleAnalytics301 @ivantage with @matt_trimmer 117 The User ID • Enabled on specific views • Needs to be set by your site/app • Anonymous, persistent and unique Tuesday, 7 June 16
  118. 118. #GoogleAnalytics301 @ivantage with @matt_trimmer 118 Setting the User ID • Two methods Tuesday, 7 June 16
  119. 119. #GoogleAnalytics301 @ivantage with @matt_trimmer 119 Normal session unification • When off Tuesday, 7 June 16
  120. 120. #GoogleAnalytics301 @ivantage with @matt_trimmer 120 Normal session unification • When on Tuesday, 7 June 16
  121. 121. #GoogleAnalytics301 @ivantage with @matt_trimmer 121 Extending to session stitching • Record CID and User ID in custom dimensions • Associating anonymous with logged-in Tuesday, 7 June 16
  122. 122. #GoogleAnalytics301 @ivantage with @matt_trimmer 122 Extending to sessions stitching • Record CID and User ID in custom dimensions • Associating users to devices Tuesday, 7 June 16
  123. 123. #GoogleAnalytics301 @ivantage with @matt_trimmer 123 No cookie? • Disabling cookies Tuesday, 7 June 16
  124. 124. #GoogleAnalytics301 @ivantage with @matt_trimmer 124 Break time Tuesday, 7 June 16
  125. 125. #GoogleAnalytics301 @ivantage with @matt_trimmer 125 Google Analytics APIs • Configuration APIs • Management API • https://developers.google.com/analytics/devguides/config/ mgmt/v3/ • API Explorer • https://developers.google.com/apis-explorer/#p/analytics/v3/ • Account Explorer • https://ga-dev-tools.appspot.com/account-explorer/ • Provisioning API • Create accounts • Client libraries • https://developers.google.com/analytics/devguides/config/ provisioning/v3/libraries?hl=en Tuesday, 7 June 16
  126. 126. #GoogleAnalytics301 @ivantage with @matt_trimmer 126 Google Analytics APIs • Reporting APIs • Core Reporting API • Query explorer • https://ga-dev-tools.appspot.com/query-explorer/ • Spreadsheet add-on • https://ga-dev-tools.appspot.com/spreadsheet-add-on/ • Dimension & Metrics Explorer • Multi-channel funnels reporting API • API Explorer • https://developers.google.com/apis-explorer/#p/analytics/v3/ • Real time reporting API • API Explorer • https://developers.google.com/apis-explorer/#p/analytics/v3/ Tuesday, 7 June 16
  127. 127. #GoogleAnalytics301 @ivantage with @matt_trimmer 127 Google Analytics APIs • Embed API • Dash boarding • https://ga-dev-tools.appspot.com/embed-api/ Tuesday, 7 June 16
  128. 128. #GoogleAnalytics301 @ivantage with @matt_trimmer 128 API 3rd part applications • Number of 3rd party apps • https://www.google.com/analytics/partners/search/apps Tuesday, 7 June 16
  129. 129. #GoogleAnalytics301 @ivantage with @matt_trimmer 129 Your audit • Dr Brian Clifton’s Google Analytics Audit • Report • www.brianclifton.com/example-audit • Excel audit • https://goo.gl/hG3c5k Tuesday, 7 June 16
  130. 130. #GoogleAnalytics301 @ivantage with @matt_trimmer 130 Action plan? • Upgrade code to Universal Analytics • Your account has already beed upgraded • Double tag • Use Google Tag Manager or better? • Support cross-domain tracking • Create a User ID View • For any login areas on your site Tuesday, 7 June 16
  131. 131. #GoogleAnalytics301 @ivantage with @matt_trimmer 131 Getting help and going further • Help Centre • https://support.google.com/analytics/ • Blog • http://analytics.blogspot.com/ • Forum • https://productforums.google.com/forum/#!forum/analytics • Developers • https://developers.google.com/analytics/ • ivantage • support@ivantage.co.uk • Avinash’s Blog • http://www.kaushik.net/avinash/ • Brian’s Blog • http://www.advanced-web-metrics.com/ Tuesday, 7 June 16
  132. 132. #GoogleAnalytics301 @ivantage with @matt_trimmer 132 Feedback • http://www.ivantage.co.uk/feedback • support@ivantage.co.uk • Write an honest, considered and fair review to receive for each day attended: Tuesday, 7 June 16

×