SlideShare uma empresa Scribd logo
1 de 31
Integrating Google Analytics
      in Android apps
         +Franklin van Velthuizen
              @FranklinNL
       f.vanvelthuizen@colours.nl
Who am I?
Agenda

• Basic integration
 • Pageviews, events, ...
• Take it a step further
• Legal stuff
Why use GA?

• Free
• Highly used among a variety of disciplines
• Additional APIs
• Powerful platform
• Downside: lack of SDK documentation ...
Agenda

• Basic integration
 • Pageviews, events, ...
• Take it a step further
• Legal stuff
Let’s start!
• Download the SDK at
  http://code.google.com/mobile/analytics
• Add the JAR to your build path
• Add the required permissions to your
  manifest
• Sign up at http://www.google.com/analytics
• Create an account and profile
The tracker object
private GoogleAnalyticsTracker tracker;
...
tracker = GoogleAnalyticsTracker.getInstance();
tracker.startNewSession(“UA-...”, context);
...
tracker.stopSession();

Google says: “In onCreate and onDestroy”
but that has implications.
What can we track?

     Activity viewed by a user        Pageview



Interaction with interface elements    Event
Tracking pageviews


(See example project GA Demo v1.)
Tracking pageviews
Dispatching

• Manual dispatch vs automatic dispatch
  tracker.startNewSession(“UA-..., context);
  tracker.startNewSession(“UA-...”, 10, context);


• Batches of max 30 hits in manual mode
• Try to bundle your dispatches
Tracking events


(See example project GA Demo v2.)
Tracking events
Tracking custom vars
 Three-level visitor interaction model
Tracking custom vars
 Three-level visitor interaction model

                               Visitor
Tracking custom vars
 Three-level visitor interaction model

                               Visitor

                               Session
Tracking custom vars
 Three-level visitor interaction model

                               Visitor

                               Session
Tracking custom vars
 Three-level visitor interaction model

                               Visitor

                               Session


                               Page
Tracking custom vars
Tracking custom vars


(See example project GA Demo v3.)
A/B testing
private static final boolean isA =
UUID.randomUUID().getLeastSignificantBits() % 2 == 0;

...

if(isA) {
  setContentView(R.layout.A);
  tracker.trackPageView(“/HomeActivity/A”);
} else {
  setContentView(R.layout.B);
  tracker.trackPageView(“/HomeActivity/B”);
}
Ecommerce tracking

• Add a transaction
• Add items to the transaction
• Send the transaction to the dispatcher
Ecommerce tracking


(See example project GA Demo v4.)
Ecommerce tracking
Campaign tracking

• Android Market campaigns
 • Campaigns using QR codes on bill boards
• General campaign tracking
 • Links in online advertisements
Agenda

• Basic integration
 • Pageviews, events, ...
• Take it a step further
• Legal stuff
Take it a step further

• onCreate and onDestroy yield long visits
• Same for onStart and onStop
• onResume and onPause yield multiple visits
Analytics wrapper class

• Use my Analytics wrapper class (and
  improve it)
• Sessions are stopped in a delayed way using
  a delayed Runnable
Agenda

• Basic integration
 • Pageviews, events, ...
• Take it a step further
• Legal stuff
Legal stuff

• Always inform your users
• If feasible, provide an opt-out possibility
• Use setAnonymizeIp
Resources

• Mobile Developer Documentation (sparse!)
  http://code.google.com/mobile/analytics

• Google Analytics Developer docs
  http://code.google.com/apis/analytics/docs/

• Example code
   http://www.yoki.org/droidconNL/droidconNL.zip

Mais conteúdo relacionado

Semelhante a Integrating Google Analytics in Android apps

5 Ways to Make Use of Your Google Analytics
5 Ways to Make Use of Your Google Analytics5 Ways to Make Use of Your Google Analytics
5 Ways to Make Use of Your Google AnalyticsCharlie Morris
 
Google Analytics for Developers
Google Analytics for DevelopersGoogle Analytics for Developers
Google Analytics for DevelopersRubén Martínez
 
Windows Store app using XAML and C#: Enterprise Product Development
Windows Store app using XAML and C#: Enterprise Product Development Windows Store app using XAML and C#: Enterprise Product Development
Windows Store app using XAML and C#: Enterprise Product Development Mahmoud Hamed Mahmoud
 
QA Fest 2018. Slavik Pashanin. Analytics Data Driven Testing
QA Fest 2018. Slavik Pashanin. Analytics Data Driven TestingQA Fest 2018. Slavik Pashanin. Analytics Data Driven Testing
QA Fest 2018. Slavik Pashanin. Analytics Data Driven TestingQAFest
 
Knowing is Understanding: A road trip through Google analytics for Windows Ph...
Knowing is Understanding: A road trip through Google analytics for Windows Ph...Knowing is Understanding: A road trip through Google analytics for Windows Ph...
Knowing is Understanding: A road trip through Google analytics for Windows Ph...blugri software + services BVBA
 
Google Analytics for Developers
Google Analytics for DevelopersGoogle Analytics for Developers
Google Analytics for DevelopersParadigma Digital
 
ADF and JavaScript - AMIS SIG, July 2017
ADF and JavaScript - AMIS SIG, July 2017ADF and JavaScript - AMIS SIG, July 2017
ADF and JavaScript - AMIS SIG, July 2017Lucas Jellema
 
Designerfair 2011
Designerfair 2011Designerfair 2011
Designerfair 2011douglee650
 
Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Da...
Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Da...Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Da...
Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Da...GITS Indonesia
 
How to use pertinently Google Analytics, by Gilles Barbier
How to use pertinently Google Analytics, by Gilles BarbierHow to use pertinently Google Analytics, by Gilles Barbier
How to use pertinently Google Analytics, by Gilles BarbierTheFamily
 
Track Report & Optimize Your Web Creations
Track Report & Optimize Your Web CreationsTrack Report & Optimize Your Web Creations
Track Report & Optimize Your Web CreationsEmpirical Path
 
Bermon Painter - Rapid Prototyping with Vue.js - Codemotion Rome 2019
Bermon Painter - Rapid Prototyping with Vue.js - Codemotion Rome 2019Bermon Painter - Rapid Prototyping with Vue.js - Codemotion Rome 2019
Bermon Painter - Rapid Prototyping with Vue.js - Codemotion Rome 2019Codemotion
 
Do we need a bigger dev data culture
Do we need a bigger dev data cultureDo we need a bigger dev data culture
Do we need a bigger dev data cultureSimon Dittlmann
 
Droid con2013 tracking user behavior_tennyson_manheim
Droid con2013 tracking user behavior_tennyson_manheimDroid con2013 tracking user behavior_tennyson_manheim
Droid con2013 tracking user behavior_tennyson_manheimDroidcon Berlin
 
Google Cloud Platform 2014Q1 - Starter Guide
Google Cloud Platform   2014Q1 - Starter GuideGoogle Cloud Platform   2014Q1 - Starter Guide
Google Cloud Platform 2014Q1 - Starter GuideSimon Su
 
SharePoint Saturday Atlanta 2015
SharePoint Saturday Atlanta 2015SharePoint Saturday Atlanta 2015
SharePoint Saturday Atlanta 2015Pushkar Chivate
 
Advanced Google Analytics
Advanced Google AnalyticsAdvanced Google Analytics
Advanced Google AnalyticsJeff Wisniewski
 
20200815 inversions
20200815 inversions20200815 inversions
20200815 inversionsChiwon Song
 

Semelhante a Integrating Google Analytics in Android apps (20)

5 Ways to Make Use of Your Google Analytics
5 Ways to Make Use of Your Google Analytics5 Ways to Make Use of Your Google Analytics
5 Ways to Make Use of Your Google Analytics
 
Google Analytics for Developers
Google Analytics for DevelopersGoogle Analytics for Developers
Google Analytics for Developers
 
Windows Store app using XAML and C#: Enterprise Product Development
Windows Store app using XAML and C#: Enterprise Product Development Windows Store app using XAML and C#: Enterprise Product Development
Windows Store app using XAML and C#: Enterprise Product Development
 
QA Fest 2018. Slavik Pashanin. Analytics Data Driven Testing
QA Fest 2018. Slavik Pashanin. Analytics Data Driven TestingQA Fest 2018. Slavik Pashanin. Analytics Data Driven Testing
QA Fest 2018. Slavik Pashanin. Analytics Data Driven Testing
 
Knowing is Understanding: A road trip through Google analytics for Windows Ph...
Knowing is Understanding: A road trip through Google analytics for Windows Ph...Knowing is Understanding: A road trip through Google analytics for Windows Ph...
Knowing is Understanding: A road trip through Google analytics for Windows Ph...
 
Google Analytics for Developers
Google Analytics for DevelopersGoogle Analytics for Developers
Google Analytics for Developers
 
ADF and JavaScript - AMIS SIG, July 2017
ADF and JavaScript - AMIS SIG, July 2017ADF and JavaScript - AMIS SIG, July 2017
ADF and JavaScript - AMIS SIG, July 2017
 
Cómo usar google analytics
Cómo usar google analyticsCómo usar google analytics
Cómo usar google analytics
 
Designerfair 2011
Designerfair 2011Designerfair 2011
Designerfair 2011
 
Droidcon Paris 2015
Droidcon Paris 2015Droidcon Paris 2015
Droidcon Paris 2015
 
Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Da...
Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Da...Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Da...
Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Da...
 
How to use pertinently Google Analytics, by Gilles Barbier
How to use pertinently Google Analytics, by Gilles BarbierHow to use pertinently Google Analytics, by Gilles Barbier
How to use pertinently Google Analytics, by Gilles Barbier
 
Track Report & Optimize Your Web Creations
Track Report & Optimize Your Web CreationsTrack Report & Optimize Your Web Creations
Track Report & Optimize Your Web Creations
 
Bermon Painter - Rapid Prototyping with Vue.js - Codemotion Rome 2019
Bermon Painter - Rapid Prototyping with Vue.js - Codemotion Rome 2019Bermon Painter - Rapid Prototyping with Vue.js - Codemotion Rome 2019
Bermon Painter - Rapid Prototyping with Vue.js - Codemotion Rome 2019
 
Do we need a bigger dev data culture
Do we need a bigger dev data cultureDo we need a bigger dev data culture
Do we need a bigger dev data culture
 
Droid con2013 tracking user behavior_tennyson_manheim
Droid con2013 tracking user behavior_tennyson_manheimDroid con2013 tracking user behavior_tennyson_manheim
Droid con2013 tracking user behavior_tennyson_manheim
 
Google Cloud Platform 2014Q1 - Starter Guide
Google Cloud Platform   2014Q1 - Starter GuideGoogle Cloud Platform   2014Q1 - Starter Guide
Google Cloud Platform 2014Q1 - Starter Guide
 
SharePoint Saturday Atlanta 2015
SharePoint Saturday Atlanta 2015SharePoint Saturday Atlanta 2015
SharePoint Saturday Atlanta 2015
 
Advanced Google Analytics
Advanced Google AnalyticsAdvanced Google Analytics
Advanced Google Analytics
 
20200815 inversions
20200815 inversions20200815 inversions
20200815 inversions
 

Último

Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbuapidays
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusZilliz
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...apidays
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 

Último (20)

Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 

Integrating Google Analytics in Android apps

Notas do Editor

  1. \n
  2. \n
  3. \n
  4. Management API, Data Export API\n
  5. \n
  6. \n
  7. UA = website profile ID\n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. Page = Pageviews and Events\nAlways set your custom var before generating a pageview or event\nExamples: Paid user; Logged in user/Network type; Sections in news app\n
  15. Page = Pageviews and Events\nAlways set your custom var before generating a pageview or event\nExamples: Paid user; Logged in user/Network type; Sections in news app\n
  16. Page = Pageviews and Events\nAlways set your custom var before generating a pageview or event\nExamples: Paid user; Logged in user/Network type; Sections in news app\n
  17. Page = Pageviews and Events\nAlways set your custom var before generating a pageview or event\nExamples: Paid user; Logged in user/Network type; Sections in news app\n
  18. Page = Pageviews and Events\nAlways set your custom var before generating a pageview or event\nExamples: Paid user; Logged in user/Network type; Sections in news app\n
  19. Page = Pageviews and Events\nAlways set your custom var before generating a pageview or event\nExamples: Paid user; Logged in user/Network type; Sections in news app\n
  20. Page = Pageviews and Events\nAlways set your custom var before generating a pageview or event\nExamples: Paid user; Logged in user/Network type; Sections in news app\n
  21. Page = Pageviews and Events\nAlways set your custom var before generating a pageview or event\nExamples: Paid user; Logged in user/Network type; Sections in news app\n
  22. Page = Pageviews and Events\nAlways set your custom var before generating a pageview or event\nExamples: Paid user; Logged in user/Network type; Sections in news app\n
  23. Page = Pageviews and Events\nAlways set your custom var before generating a pageview or event\nExamples: Paid user; Logged in user/Network type; Sections in news app\n
  24. Page = Pageviews and Events\nAlways set your custom var before generating a pageview or event\nExamples: Paid user; Logged in user/Network type; Sections in news app\n
  25. Page = Pageviews and Events\nAlways set your custom var before generating a pageview or event\nExamples: Paid user; Logged in user/Network type; Sections in news app\n
  26. Page = Pageviews and Events\nAlways set your custom var before generating a pageview or event\nExamples: Paid user; Logged in user/Network type; Sections in news app\n
  27. Page = Pageviews and Events\nAlways set your custom var before generating a pageview or event\nExamples: Paid user; Logged in user/Network type; Sections in news app\n
  28. Page = Pageviews and Events\nAlways set your custom var before generating a pageview or event\nExamples: Paid user; Logged in user/Network type; Sections in news app\n
  29. Page = Pageviews and Events\nAlways set your custom var before generating a pageview or event\nExamples: Paid user; Logged in user/Network type; Sections in news app\n
  30. Page = Pageviews and Events\nAlways set your custom var before generating a pageview or event\nExamples: Paid user; Logged in user/Network type; Sections in news app\n
  31. Page = Pageviews and Events\nAlways set your custom var before generating a pageview or event\nExamples: Paid user; Logged in user/Network type; Sections in news app\n
  32. Page = Pageviews and Events\nAlways set your custom var before generating a pageview or event\nExamples: Paid user; Logged in user/Network type; Sections in news app\n
  33. Page = Pageviews and Events\nAlways set your custom var before generating a pageview or event\nExamples: Paid user; Logged in user/Network type; Sections in news app\n
  34. \n
  35. \n
  36. Downside: you need to push an update to start A/B testing\n
  37. Transactions and items generate individual hits\n
  38. \n
  39. \n
  40. \n
  41. \n
  42. - strange visits when switching between activities\n
  43. Class composition\n
  44. \n
  45. Opt-out downside: existing data will not be removed\nsetAnonymizeIp removes the last octet of IP addresses\nEULA is supposed to protect you, instead of gaining permission\n\n
  46. \n