We'll send you updates from the blog and monthly release notes.
January 29, 2020
This is the era of mobile apps. We get everything—from critical business information to entertaining videos and games—on our mobile devices. Information is right at our fingertips, and we are always striving to catch up with the outside world. As per App Annie, an average smartphone user has 80 (!) apps installed.
In this highly competitive market of mobile apps, each app development company looks for ways to reach maximum users and retain these users for as long as possible. Engaging users continuously is hard. Knowing what your customers want and using this information to build better versions of the app is the key to success, and in-app event data is your direct link to the customers' mind. Using in-app event data effectively and efficiently can prove to be the differentiating factor between you and the competition.
What are In-app events and event data
In-app events are the records of users' activities within the application, right from the moment the user installs the app. Event data are things like:
- Tutorial completed
You can gather rich in-app events with a number of parameters or through a stream of multiple events. For example, you can determine whether the user has made any purchase or which engagement campaign brought the user to your application. Moreover, you can measure abstract information with a large volume of event data, such as which campaign brought more revenue-generating users.
Why do you need to track in-app events?
Building a unique app is hard. But what's even harder is reaching out to the right audience and engaging them with your application. We love personalized things and try to find products that suit our needs the best. In-app events allow us to find the most liked features by the users and thus generate revenue from in-app purchases.
As per Statistica, a user spends around 5-6 minutes on an app per session. To ensure that the user comes back to the app, it is important to give the best experience to the user during this short period of time. Perfecting that experience for the user demands understanding the user's pain points and what keeps them engaged. So, what's the key to understanding these things? In-app event tracking! By collecting and analyzing event data, you'll be able to optimize your in-app experience to create more value for your users and for you.
What events to track and what events not to track
Ideally, you want to know as much as you can about your users and their behavior. It would be great if there were no limitation on the volume of data you could collect and analyze, but in the real world, analytics services come with a price tag and it's difficult to filter signal from noise, so you'll need to restrict what you track and how much.
These best practices for tracking in-app event data will help you optimize the process and ensure you get the best ROI when you set up an event stream.
Finalize the questions you want to answer with your event data.
It is very important to determine beforehand what kind of insights you want from your event data. Questions such as "How long is a user taking to make his initial purchase?" or "How many levels do the users play on an average before making the purchase?" are worth asking of your data. It's important not to skip this step! Answers to these questions will help you clearly define the overall goal of tracking and monitoring your in-app data. In-app data can also give you some subtle inferences such as, which particular level in a game is too hard to pass and where most of the users are getting dropped off.
Specify the event properties that will answer the above questions
Specify this along with the stream of events. For example, to answer the question above, you can generate streams such as Login, Tutorial Completed, Level Completed (for ~4-5 times), and Purchase.
Make sure your analytics platform suits your needs across your teams
A single platform may not be suited to answer all the questions you have through your event data. Your marketing team's needs will differ from your customer support or customer success team's, which will differ from your product team's needs, etc. Identifying the needs of various teams across your organization and picking a platform accordingly will reduce a lot of time, effort, and money.
Test your event data
This is a critical step of your decision-making because once you distribute your app, there is no easy way to go back and fix the problem with your analytics instrumentation code. Event analysis instrumentation is as important as your feature development.
Find the right tool to analyze the data
Powerful reports help you analyze your data and make informed decisions, but it is hard to find a single tool that meets all our needs. As a result, you end up using multiple platforms to analyze data, create ROI, and build an audience on top of that. From an application developer's perspective, once you decide to use a new analytics platform, you end up implementing their SDKs and start instrumenting the event data at different action points of the app. This approach comes with its own difficulties:
- You write a lot of code to meet the needs of the data format of different platforms and eventually increase the size of the application.
- Distributing the application through App Store and Play Store (different apps built for iOS and Android) brings us two different versions of the apps that are being used by different sets of users.
- Moreover, different SDKs do their own processing which results in killing limited resources of the mobile device and draining up the battery.
Now, if you want to control your event data flow to the right platform without getting into these issues, you need a central system that will route this event data intelligently and efficiently.
At RudderStack, we are addressing these issues in a few ways:
- We have developed SDKs for Android, iOS, Cordova, Flutter, React Native, and Unity
- We defined a unified event structure to meet the needs of different analytics platforms
- We have intelligent transformers on our server-side to take care of the delivery of your events to the destination platform of your choice
- If you want to explore the features of the native SDK of a platform, we support that too
More tips for setting-up your event data
Here are a few key things to keep in mind while designing your event data. Remember, these considerations may vary with the platform or the product.
Time of the event generated or the timestamp of the event
This can infer a pattern of the usage of the app. For example, on an E-commerce platform, most of the users check new arrivals while traveling back from work or at bedtime.
Associate the user with identification or anonymousId
This will help you re-target the user or engage them with more personalized stuff since all of their activities are captured under the same identification.
- Time of the first usage of the application: This will help you build a set of loyal users and build an ROI of dropped-out users.
- The number of purchases made through the platform: This will tell more about the user's buying pattern.
- Total revenue from the user: You can also identify high-revenue users and those who do not add to your app revenue.
How to name events
It is advised to name the events as Object + Action to avoid confusion. For example, Product Added or Order Completed is much unambiguous than Product or Order.
Take care of your payment data
In the case of in-app purchases, it is best to have an alternate way to validate the payment through purchase tokens. Failing to do so may lead to compromised accuracy.
Considering how to use analytics to improve your app is critical. You spent a lot of time (and blood, sweat, and tears) developing your app. Proper event tracking fueling good product analytics enables you to continue building to make it better and better.
At RudderStack, we offer a unified platform for all your event data collection and routing needs, with a special focus on data privacy. Our open-source data plane gives you the freedom to customize and transform your event data to suit the destination analytics platform's requirements. As many destinations charge on a per-event call basis, this can help you save a ton of money!