Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Potatotips #24 - Analytigs and event properties

896 views

Published on

Slides for a talk at potatotips #24 @ goodpatch inc.

Published in: Software
  • Be the first to comment

  • Be the first to like this

Potatotips #24 - Analytigs and event properties

  1. 1. Analytics event properties João Orui Drivemode, Inc.
  2. 2. Google Analytics Mixpanel Flurry …
  3. 3. a lot of promises, but it is up to you to collect the data.
  4. 4. Events some examples: - First launch - Pressed “sign up” button - Authenticated successfully - Authentication error - Purchased in-app item - etc...
  5. 5. Events With events tracking you can - track user activity in your app (engagement) - find where users are dropping (funnels) - discover what users love most in you app (retention)
  6. 6. now imagine as if you’re trying to understand a drop in your funnel Sign in screen viewed Sign in button clicked 50% Authenticated90%
  7. 7. but imagine as if you’re trying to understand a drop in your funnel Sign in screen viewed Sign in button clicked 50% Why!? 90% Authenticated
  8. 8. you may think… we screwed with the last update? let’s check out by version app version Sign in screen viewed Sign in button clicked 2.0 200 100 (50%) 2.1 100 50 (50%)
  9. 9. but in some cases it can be what you expected least screen orientation Sign in screen viewed Sign in button clicked portrait 150 140 (93.3%) landscape 150 10 (6.6%)
  10. 10. what really happened Logo Sign up button Logo Sign up button
  11. 11. what really happened Logo Sign up button Logo Sign up button no button on the screen!!
  12. 12. So.. here are some useful properties for your events About the app - app version - app version number - version control sha1 - unique install id - app settings
  13. 13. about the device (depends on your needs) - bluetooth / bluetooth version - device brand / model / manufacturer - has nfc / telephony - os version / SDK level - screen orientation / size - wifi (on or off) - rooted (yes or not) - has network connectivity - system language - device class
  14. 14. properties that answer important questions for your app in our case: - is the user driving at that moment? - are key services running? - what is the TTS engine used? - has the user completed tutorials? which? - how many destinations a user has in they database?
  15. 15. Tips! Mixpanel eventsにオンデマンドにプロパティー設定する方法! おまけに、Mixpanel APIをfluent interfaceにします! https://gist.github.com/jfsso/1821fd5e3456b626b92f
  16. 16. people api mp.people() .put("prop1", value) .putWithSuper("notification setting", settingValue) .increment("action count", 1) .send();
  17. 17. events mp.superProperties() .put("some config", configValue) .remove("a prop") .send();
  18. 18. event super props mp.superProperties() .put("some config", configValue) .remove("a prop") .send();
  19. 19. on demand props! public class MixpanelEventPropertiesSetter implements Mixpanel.PropertiesSetter { private Context mContext; public MixpanelEventPropertiesSetter(Context context) { mContext = context; } @Override public void execute(JSONObject props) throws JSONException { props.put("App Version Code", BuildConfig.VERSION_CODE); props.put("Device Year Class", YearClass.get(mContext)); props.put("Screen Orientation", ConfigurationUtils.getOrientationName(mContext)); } }
  20. 20. Useful links Device Year Class (by Facebook) https://github.com/facebook/device-year-class Puree (by Cookpad) https://github.com/cookpad/puree-android Mixpanel https://github.com/mixpanel/mixpanel-android

×