Hello There!

Lorem ipsum dolor sit amet, consectetur adipiscing elit,

Campaign Attribution in Firebase Analytics for Tracking Mobile App

Firebase tool is like a dream come true for product managers owing to its smooth app development capabilities and the complimentary app analytics features for analysis & insights.

In my previous blog on Firebase analytics for mobile app I had shared a few tips on how to enhance Firebase analytics reporting, identified its limitations & later discover how swiftly we can overcome them.

One of the actionable items in that blog was to attain the General Campaign Attribution data for Android app users in Firebase Analytics Reporting and we are going to cover the same in detail in this blog post.

So what’s missing in Firebase Reporting?

Undoubtedly the analytics reporting aspect of Firebase covers a wide range of important events that add value to your business. But unfortunately, when it comes to the “Attribution” section of reporting, it has its limitations and what is missing is the following:

  • No custom campaign attribution is available for App Installs.
  • The re-engagement campaigns attribution data is missing.

Elaborating on the above problem statement, currently, Firebase Analytics tracks Attribution for a limited number of Advertisers listed here. For any other platform or source/medium apart from those, the data tracked will be attributed to “direct”, which is a major problem.

Workaround to Track Custom Campaigns

In this blog, I will walk you through a solution that is a workaround developed by our team at Tatvic and will enable you to track custom campaigns through deep links for re-engagement attribution. The solution offered here that for the second problem statement mentioned above.

Let’s get an understanding of how the Campaign Attribution in Firebase Analytics will be done:

1. Deep link with UTM tagging

A prerequisite to being able to track custom campaign data is that all the links through which the users land on your app should have proper UTM tagging to it. Below is a sample URL:

https://shop.tatvic.com/?utm_campaign=test_dynamic&utm_medium=internal_campaign&utm_source=tatvic


2. Fetching UTM parameters

When the user lands on the app through the link, we fetch the UTM parameters form the link.

The below code describes how to fetch the UTM parameters from a deep link in Android.  

Note: The above code is for Android only. For similar implementation in iOS, you can refer to the iOS document and get the UTM parameters.

Also, Read Firebase Analytics Reporting

3. Sending campaign data along with an event

Being aware of the fact that Firebase Analytics is event-based, the campaign attribution is viewed against the “first_open” event only in Attribution Report of Firebase.

And we have no control or access to this event(first_open) and when it is fired. Thus, we define or use alternative event and track the campaign parameters along with it.

In our solution, we will use the suggestive event of Firebase Analytics i.e. “app_open”.

FirebaseAnalytics.Event.APP_OPEN


4. Enabling event as attribution in Firebase Reports

Since we are now tracking the campaign data, it is necessary to view the same in the reporting section. However, to view the campaign data with events, your very first job is to

“mark the event as conversion in the event report”

After enabling the toggle button, very soon you will be able to see your attribution report getting populated with fine campaign data.

Note:

The attribution will be only done for the count of events, only after they have been marked as true for conversion in the Event Report.

Comprehensively with the above set of actions, you will be able to start tracking the custom campaign data for deeplinks or re-engagement campaign in Firebase Reporting successfully. The above approach tracks source/medium in Firebase, with a custom event (“app_open”) and not with the default attribution of the “first_open” event that we send.

Below is the glimpse of a report with custom campaign attribution data:

Conclusion

Although we have achieved tracking Custom Campaign Attribution for Re-engagement Campaigns, unfortunately, we still have no sight of Install Campaign data in Firebase Analytics.

Are we really losing hopes on Install Referrer Data in our Analytics Reports?

Absolutely not! We are not going to give up so soon.

We have an in-house solution for tracking Install’s Campaign data in Firebase. The solution that we offer is quite savvy, it allows you to track the Install Referrer data in both Firebase and Google Analytics Platform. But not limited to ourselves we can further track these Install Data in other Analytics platforms too. For further assistance do reach us out and we will be glad to serve you!

How to Customize Google Analytics Campaign Timeout For Affiliates

As a marketer, we all should have used the feature in Google Analytics to set the Campaign Timeout period. By default, campaign timeout settings in Google Analytics are set to 6 months. What it means is, GA will stop giving attribution to a specific campaign after 6 months. We also have the option to change this setting to customize the campaign timeout period ranging from 1 minute to 24 months depending on the business need.

                                       Image: Campaign Timeout Settings in Google Analytics

The idea behind customizing the campaign timeout period is to adjust it according to the campaign duration. Or, the duration for which we think the campaign could be relevant or should get the attribution.

For example, brand campaigns run for user acquisition tend to be relevant for months. Whereas, micro-campaigns like one-day offers have an impact on users for a few days.

Problem:

Here, we may start having a problem with setting up a campaign timeout period. As the setting is applied at the GA property level, the same configuration will be applicable to all the GA views and thus to all the campaigns.

Many times, we are running many campaigns with different goals - user acquisition, user retention, etc.

We may want to set up a different campaign timeout period. Going by the default settings in Google Analytics, all the campaigns will keep getting attribution for six months.

Businesses that acquire users from affiliates face a bigger challenge. If we are getting users from certain affiliates for only two weeks, we would not want to pay that affiliate after the contract is over. Hence, another possible problem is the fact that relationships with different affiliates vary a lot.

Possible Solution:

Looking at the severity of the problem, Tatvic came up with workarounds. The solution allows us to set up different campaign timeout periods for different affiliates or campaigns.

There are constraints in GA configurations. To overcome it, we create a new Google Analytics property for the affiliate with a new campaign timeout period.

For sending the user behavior data in both the GA properties without impacting current reporting, we make some modifications from Google Tag Manager. This way, we are able to track affiliate traffic as per the specific need and also make sure that rest of the reporting is intact.

Conclusion:

Now that we are able to customize the campaign timeout period for affiliates, we have a clear picture of which campaigns are performing better and can compare affiliate performances.

To make the reporting simple across different GA properties, we use another fantastic product from Google - Looker Studio. Google Data Studio allows us to easily build reporting dashboards from many data sources.

This way, we get all the numbers related to Affiliate traffic in one place.

What’s Next:

The affiliate marketing industry is expected to reach $6.8 billion by 2020. If you are already working with affiliates or planning to do so in the future make sure you customize the campaign timeouts appropriately.

We hope the blog proved to be insightful to you and helped you in understanding the importance and know-how of customizing campaign timeouts for affiliates. If you have any doubts or are looking for clarifications, please drop in comments and we will surely get back to you.

Firebase Analytics tips to Control Mobile Application Limitations


Introduction
Firebase is one of the popular products from the Google Analytics 360 product family that has rapidly gained an affinity as a go-to tool for App development & analytics. Firebase SDK provides a bagful of features to make the end-to-end process of mobile app development run as smoothly as a hot knife through butter. After its acquisition by Google Analytics, Firebase is now a wholesome platform for your app development & app data analytics requirements. Today we are going to focus on Firebase Analytics and the limitations we face while using the tool for data analysis & insights. In this blog, we will also look at workarounds for each of the major limitations & discover how swiftly we can overcome them.

Why we love Firebase Analytics

  • No additional cost for analytics data collection - yes it is totally free of cost.
  • Unlimited data collection - can collect up to 500 unique events.
  • Crucial events’ data collection is done automatically. This includes events like App installs, App uninstalls, In-app purchases, App updates, etc.

There are quite a few other bundled-up features of Firebase Analytics such as Crash Reports, Notifications Setup that targets the Audience generated by Analytics, and diverse sets of events.

Firebase Analytics Limitations: Our wishlist for Firebase Analytics & a few basic workarounds to overcome the limitations and achieve better reporting

  1. Restricted Reporting :
    • Firebase reporting console barely offers any course of action to view data in diverse ways. We have the one and only “Events” Report to view all the tracked events at once. Elaborating further, the Events Report provides no major cardinality on reporting apart from the option to apply a basic filter on either “Event Name” or “User Property”.
    • Another major limitation of the Event Report worth highlighting is the inability to view the extra parameters tracked with one single event in the said report. Note: Firebase Analytics can report data only on 10 text parameters and 40 numeric parameters in the Event Report.

      Image 1 : Setting Up Parameter - Limitation.

    • Firebase also falls short of API support so as to access the collected analytical data.

    Workaround: Your best bet to access the raw analytics data is to link your Firebase Analytics data with BigQuery.  And when it comes to BigQuery, performing analysis on massive datasets is simply more straightforward. This will solve a major issue of limited data access, and, at the same time, we also gain the liberty to perform analysis on diverse datasets in a single pane.

    Note: Linking to BigQuery will cost us a few pence!

  2. Event Limitations :
    • Despite the fact that Firebase offers unlimited event collection for each event type for your App, it has confined us to the range of the said event types. This means we can only have 500 unique events for an individual app in the Firebase project. To begin with, this limit does not seem much of a hurdle, but if we revamp our app tracking or if we keep updating the event tracking process, without a doubt we are going to meet the dead end of the reporting platform.

    Thus, precautionary steps to manage the event limitations are:

    • To wisely design the event names before they are implemented.
    • To define a standard structure, identify the events and the required parameters for event tracking in an app.

    For Example:

    • Navigation Event: This event is templatized for all the navigations that a user can perform within an app.
      “navigation_<from_to>” - here “from” and “to” are navigation sections defined in-app.
      Parameter1 - intermediate of navigations to be tracked in this parameter.
      Eg. navigation_home_help, navigation_home_mens-shirt.
    • Product Interactions: This event is templatized for user interaction with the product.
      “product_<interaction>” - various product actions(i.e. View, click, addtocart) can be tracked.
      Parameter1: “Category”
      Parameter2: “product name”
      Eg. product_view, product_detailed.
    • For Articles:  This event is templatized for tracking articles.
      “article_<action>” - various article actions (i.e.  viewed, click, read_began, read_incomplete) can be tracked.    Eg. article_clicked, article_read_began,article_read_complete.
  3. Campaign Attribution :
    • The attribution of Install referrers in Firebase is controlled by Firebase SDK itself. Currently, Firebase tracks attribution for a limited number of Advertisers which are defined in this link. For any other platform or source/medium attribution, other than the listed Advertisers, the default attribution of source/medium will be done to direct.

    Workaround: Knowing the fact that we are missing out on a major custom campaign attribution, we need a quick fix on it. For this, we have worked out a solution which I shall share with you as a separate blog post.  Our custom solution includes tracking both; install referrers and custom campaign data. Below is a glimpse of the Attribution Report for Custom Attributions.

      Image 2: Attribution Report with custom “source” value.

Conclusion
Here, we have discussed how data can be analyzed in a better way by linking BigQuery as compared to normal reporting. Also, for reporting it is necessary that we collect meaningful data and as mentioned in point 2 above, do not reach the limitation of the event type that is getting tracked. We have already seen a few examples of how to structure and design the events in this blog, and we hope you find them resourceful.

Quick Tip: If using Firebase Analytics, do plan out the tracking approach and efficiently design the events for the same. This will yield absolute data in reports and help you analyze it.

The limitations discussed above cover a large ground of Firebase Analytics. However,  if we have missed out on any titbits on the same, do comment in the below section and we will be happy to acknowledge it!

Bot Icon
Bot Icon

Tatvic Bot

Explore About Tatvic and Services