Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Mobile Apps Measurement (GTM SDK)

Heulwen
October 02, 2016

Mobile Apps Measurement (GTM SDK)

Measuring the mobil apps using GTM SDK - lessons learned.
- GTM for websites vs GTM for mobile apps
- how to debug
- campaign tracking
- GA SDK vs GTM SDK
- possible problems
- future of mobile apps measurement

Heulwen

October 02, 2016
Tweet

Other Decks in Technology

Transcript

  1. App vs Web measurement • Data is less precise, because

    of dispatching ◦ Hits are sent in batches ◦ When the midnight comes, no data are processed ◦ Trade-off: More precise data or an app which won’t discharge your phone’s battery ◦ When using GTM SDK and having an old/default container -> missing data • No javascript, no automagic • No premade tags in GTM • Debugging hurts
  2. Painful debbuging • Network sniffer - Verbose logging tagManager.logger.setLogLevel(kTAGLoggerLogLevelVerbose) •

    Script list for actions + waiting for data • Real-time report • Preview mode • Charles proxy!
  3. Charles Proxy 1. Use the same wi-fi for mobile &

    Charles 2. Proxy Settings -> port 8888 + private IPV4 address 3. in your mobile phone open: charlesproxy.com/getssl or chls.pro/ssl 4. Check/Save the certificate in Settings > General > Certificates > About 5. You can accept exception and test
  4. Campaign tracking 1. Campaign leads to Store (Play / Apple),

    goal: application download 2. Campaign leads to application, goal: f.e. new product purchase Both is tracked differently - tagged by a redirect or a ping: f.e. https://click.google-analytics.com/redirect ?tid=UA-00000-1&url=https://itunes.apple.com/us/app/my-app/id123456&aid=com.clientdomain.super-app&idfa={idf a}&cs=clientdomain.com&cm=referral&cn=mobile-interstitial&cc=link1&hash=md5 iOS 1. implement library libAdIdAccess.a , include AdSupport.framework 2. allow data collection from IDFA: tracker.allowIDFACollection = YES; 3. add tracking for app instalations: iAd.framework 4. implement collecting of campaign data during the launch of the application by: [GAIDictionaryBuilder setCampaignParametersFromUrl:urlString] or by: NSDictionary and parse this by: setCampaignParametersFromUrl() 5. tag all the campaigns using this tool: https://developers.google.com/analytics/devguides/collection/ios/v3/campaigns#url-builder Android 1. Include BroadcastReceiver into AndroidManifesto.xml 2. tag all your campaigns leading into the Play Store using this tool: https://developers.google.com/analytics/devguides/collection/android/v4/campaigns#google-play-url-builder 3. implement collecting of campaign data during the launch of the application by the method: setCampaignParamsFromUrl
  5. GA SDK vs GTM SDK Benefits of GA SDK •

    Auto-Exceptions / Errors and easyTracker auto-screens • IDFA is tracked automatically • Much better SDK documentation • Much less difficult to implement Benefits of GTM SDK • Opportunity to use A/B tests and content experiments via GTM interface • Custom Images • Integration with AdWords and DoubleClick ◦ BUT: No Flurry, Mixpanel or Facebook integrations
  6. Implementation: GA vs GTM SDK GA SDK 1. Add the

    SDK to your project 2. Implement “tracker send” method for screens and events tracking 3. Debug GTM SDK
  7. GTM container • Default Container ◦ application will update the

    container regularly, but not when it loads for the first time • Stale Container • Fresh Container ◦ container will be updated every 12 hours
  8. Data Layer = object containing all the informations (events, variables),

    which we want to handle to GTM dataLayer.push [[TAGManager instance].dataLayer pushValue:[NSNull null] forKey:@"ecommerce"]; dataLayer.push("contentData",null); dataLayer.push("ecommerceData",null);
  9. Expectations 1. auto-screen tracking do GTM for apps 2. auto-exeptions

    do GTM for apps ✔ 3. auto-events 4. non-google template tags (e.g Flurry, MixPannel, FaceBook, Bing) 5. customHTML-like tags 6. InstallReferrerReceiver to be auto enabled. A when? Nobody knows.
  10. Sources / Credits: • Epic 69-pages manual for GTM SDK:

    https://www.dropbox.com/s/oubhhmutim7a8et/Dev%20-%20GTM%20guide%20for%20Apps.pdf?dl=0 • DataLayer CheatSheet: https://drive.google.com/file/d/0B4z7rj_cgol_ZWIxVHAtcEp5eFE/edit • Community: https://plus.google.com/communities/104865292981489764063/stream/a9d9e9ba-9c96-4e90-ae2c-f37d1b10af55 • JSON (to import into your GTM container): https://www.dropbox.com/s/ahr6w36stkx8zqp/APP%20-%20NEW%20interface.json?dl=0 • GTM for mobile video: https://www.youtube.com/watch?v=BMYoq85_Tms