Definitions: Granularity| How fine the measurements can get. From keyboard tap to is the app open? Depth| How much data can we get from each event? Data Mobility| How easy is it to move data from that service/platform? Implementation| What do we have to deal with? Integrstions| What other services are available using this method?
Analytics API with widespread support although still building out react-native. Accessed through analytics-react-native
package. Great libraries, community and tools available. Can also send the messages to our own server in options object https://www.npmjs.com/package/analytics-react-native
From docs at face value it seems like we can track anything we like, it's just an API call with a string, can't find any limits like Firebase
We are fully responsible for the data sent to log the event so depth is adaptable based on needs.
We are in control of it from the beginning, we can send it to our own database when we send it to Segment as well https://segment.com/docs/guides/getting-started/data-export-options/
Build from scratch. Data structure is totally up to us so design is important. Can have multiple instances for tracking different types of events (e.g. ads or invites)
Very many, full list https://segment.com/docs/destinations/ can customize which events get sent to which integrations.
None found yet
Bridge to native so you get additional metadata from device not available from app. Comes with built in Google Analytics events for users, sessions, and hits (visited pages/screens). Can customize for event fires, timing, exceptions, and purchases. Uses Google Analytics so syncs with web app. Uses react-native-google-analytics-bridge
package.
Manually build events for each page so we can get as much detail as we like.
Can track instant events (taps) as well as timing (how long they watch an invite) and purchases (however that transaction might happen, again customizable)
Exportable to CSV only on premium plan.
Basic funcionality out of the box and we can build out additional events based on priority. It will take significant time to get robust tracking but individual events should be quick coding.
Google Tag Manager
iOSprerequisite https://github.com/idehub/react-native-google-analytics-bridge/blob/master/README.md#settrackuncaughtexceptionsenabled.
A better version of classic Google Analytics, they are both present as they are implemented in different ways. https://medium.com/exploring-android/exploring-firebase-on-android-ios-analytics-8484b61a21ba
Can specify our own events so can be as fine or broad as necessary.
Can create up to 500 unique events to track with 24 options each.
Exporting from Firebase seems sketchy. It is not available through the API. They want you to connect to BigQuery which then requires a Blaze plan (pay as you go, BigQuery is free for 1TB/month other services like notifications also have reasonable free tiers) After this we can download to a local machine and then manually import into a database to make it accessible by API for common consumption. https://groups.google.com/forum/m/#!topic/firebase-talk/S0Mrwq_UsgU
16 coming straight out of the box. Additional preconfigured events we can add easily to ease into creating our own event types https://support.google.com/firebase/answer/6317498?hl=en&ref_topic=6317484 . All Firebase services accessible through online GUI as well.
Firebase remote config (adaptive UI based on defined user groups), firebase crash reporting, and firebase notification service.
Haven't found anything on using firebase data with other services hassle free.