Choosing Between Firebase and Google Analytics SDKs for App Tracking/
February 20, 2018
“Should we be using Firebase or Google Analytics?” – we get this question a lot regarding tracking behavior in mobile apps.
Even though the older Google Analytics mobile SDKs have officially been deprecated by Google and the analytics reports in Firebase have been rebranded to “Google Analytics for Firebase,” there is still a lot of confusion out there as to which analytics tool is the right one for the job.
The Google Analytics mobile SDKs are technically still supported, and offer traditional reporting methods you’re more likely to be familiar with – but Google Analytics for Firebase has a lot to offer as well, and is considered to be the future of mobile app tracking.
This post aims to help clarify the important differences between the two and provide some suggestions around using each platform.
Let’s start out with some big-picture differences between the two, in no particular order.
1. Mobile Dev Platform vs Analytics-Specific Tool
The Firebase SDK is actually a mobile development platform, not just a standalone analytics tool. I have brought this up before, but it is important to understand that the analytics reports are just one set of tools in the Firebase platform, designed to integrate with other Firebase tools – such as Cloud Messaging, Cloud Functions, Remote Config, etc.
This is one of the biggest ‘pros’ of Firebase as it allows for very useful integrations with other Firebase products. The new opportunities that these integrations present are essentially why the older Google Analytics SDKs have been deprecated.
2. Unlimited Event Logging Volume vs GA Hit Volume Limits/Costs
Firebase has NO LIMIT to the volume of events you can log. There are limits to the varieties of event names (up to 500 total), but as of now there are no fees for using Firebase for analytics, specifically.
Which leads me to my next point…
No fees = no support. If an SLA is important to you, you’re out of luck with Google Analytics for Firebase as of now.
4. Reporting and the Data Models
Firebase uses an event-based data model, which results in reporting differences compared to those in traditional Google Analytics. Unlike traditional Google Analytics which has many screenview- and session-oriented reports, in Firebase all reports are user- or event-focused.
In some ways, this can be a good thing – many apps do not really have a concept of a ‘page’ or ‘screen’ and instead revolve around activities the user can complete. It can also be much easier to deal with when doing analysis with BigQuery, for example (yes, there is a BigQuery import available). But for certain businesses, such as publishers for example, this data model might be more challenging to work with or require some getting used to.
There are a lot of differences in the reporting options between these two tools, such as:
- No ability to create custom reports or dashboards in the Firebase interface
- Limited amount of event parameters (50) can be seen in Firebase reports (plus you have to register them in order to see any, they don’t just appear in your reports)
- Limit of 10 conversion events in Firebase (compared to 20 goals per view in legacy Google Analytics for apps)
- Lack of more granular reporting around ‘sessions where certain activities occurred’ in Firebase – this also poses challenges for audience segmentation and retargeting based on session-specific behavior, as is common with traditional Google Analytics
But – you do get some automated event tracking with Firebase, such as for screenviews! If you’re looking for more differences between the two, you can read my earlier post:
Published: October 12, 2017
5. Rolling Up Your Data
If you have both an iOS and an Android version of your app, the two would be tracked separately for Firebase. There is currently no option for rolling up data from various types of apps into one data set for reporting purposes – at least not without BigQuery.
You can link your Firebase data to BigQuery, but you may incur storage and querying costs.
Traditional Google Analytics allows you to collect data in one data set (property) if you’d like. This has been one of the primary cases for continuing to use Google Analytics. I have heard many complaints about this, but I am eager to see how Google might solve for this with future improvements to Firebase (not everyone is able to use BigQuery, unfortunately!). My colleague, Samantha Barnes, wrote a great starter guide for rolling up properties in Google Analytics if you’re unfamiliar.
Published: February 3, 2015
6. Platform Support
Currently, Google Analytics for Firebase is available for iOS, Android, C++ and Unity, specifically – take a look at the documentation here. This support covers most platforms, but not quite all of them.
Consider OTT or “over the top” apps like Amazon Fire TV or Apple TV, for example. Many of these platforms can be configured for iOS or Android, for example, which Firebase supports. But if you’re working with Roku or Adobe AIR, for example, I’m not sure how much luck you’ll have. Just know that there are platforms out there that Firebase does not yet offer support for – so be sure to talk with your development team about this before getting your heart set on anything.
Firebase also does not offer a measurement protocol.
There are certain Firebase products designed for the web (HTML/JS) as well, but analytics is not currently a part of those offerings – so if you’re dealing with a hybrid app or progressive web app, you’ll probably have to get creative.
Still Not Sure?
If you’re still not sure which is the right tool for you, I suggest that you start by creating a game plan – outline each activity in your app and various user-related properties you may want to track for analysis purposes. Think about the data you will want and what type of reports you will need. The more you can start to plan for the analysis, the better idea you’ll have on what you’ll need out of your app tracking tool.
Some additional considerations:
Make sure you talk with your dev team about your particular apps – make sure there is support for them if you want to try Firebase and find out if any of your apps already have tracking set up with the GA SDK, for example. Switching to the Firebase event logging schema would require some work!
Consider whether you may have a need or interest for other Firebase products, even down the road – take a look at the offerings here (many of them are free). Firebase products are designed to be used together, such as to:
- send a user a notification with Cloud Messaging to encourage them to re-engage with your app
- customize an experience in the app using Remote Config based on certain events or actions the user takes in the app
- perform A/B testing with Remote Config
- create dynamic user audience lists based on Predictions and machine learning
Getting the Best of Both Worlds
There are a lot of benefits to each platform, so why not take advantage of both? We often do just that.
By installing the Firebase SDK and the Google Tag Manager SDK, you can start collecting data in both the Google Analytics for Firebase reports as well as in traditional Google Analytics (no GA SDK needed). This can be very helpful for a number of reasons:
- Maybe you’re not yet comfortable with the reports in Firebase, so you want to have Google Analytics as your ‘back up’ for reporting purposes while you warm up to the event-based data model in Firebase
- Maybe the reports you want (custom ones, for example) are simply not yet available in Firebase
- Maybe you want an easy way to roll up your iOS & Android data
A hybrid approach using both platforms may provide additional benefits as well. If you wish to try this approach, check out some of our other blog posts on this topic – Getting Started w/Firebase Analytics & Hybrid App Tracking (instructions included in both!).
To further simplify the options, here is a table of what you need based on where you want to do your reporting:
|If you want reports in:||You should install:|
|Google Analytics||GA SDK OR GTM SDK|
|BOTH Firebase & Google Analytics||Firebase SDK + GTM SDK|