Mobile app event tracking: Telling the story of how your app works (or doesn’t work)Last edited: Jun 8, 2022
Event tracking is how you know what’s happening in your mobile apps. It’s the primary technique used to capture usage information by product analytics platforms like Mixpanel.
It’s, therefore, essential for you, as a product manager, designer, or any kind of product stakeholder, to have a good understanding of how event tracking works so you can, well, know what’s happening in your mobile app.
An event is something that happens in an app
The first thing to wrap your head around is what is meant by an “event” in the context of mobile app analytics. Fortunately, this is pretty straightforward: An event is anything meaningful that happens (at a specific point in time) while an app is being used.
Let’s unpack that, shall we?
When a user uses an app, they do stuff. They tap buttons, make purchases, watch videos, create accounts, login, quit the app, and a whole host of other things depending on the specific functionality of the app. Every time one of these things occurs, we consider an “event” to have been “triggered.” And each of these kinds of events can be “meaningful” based on how they represent our users’ behaviors and expectations as they navigate the app experience.
But events aren’t just limited to direct actions taken by users. Anything that occurs during the course of using an app that might be interesting for us to analyze can be tracked as an event. Notifications and messages received are great examples. A user might be watching a video in Facebook, for instance, and then receive a notification within Facebook telling them that someone replied to their post. In this case, the event
Notification Received was triggered by a different user but tracked in the context of what was experienced by the current user. Likewise, a user might unlock a level in a game or earn credits by being a member of a subscription for a certain time period. Neither of these are direct actions taken by the user, but rather the result of actions taken by the user actively or passively at a prior point in time. They’re nonetheless tracked as events in their own right.
Events are tracked in order, every time they happen
The next thing to understand is that events are tracked every single time they happen. That is, the name of the event is added to a log, along with the exact time the event occurred down to the millisecond.
For example, imagine you just opened a messaging app like Apple Messages. The fact that you opened the app is usually tracked as an event, so the event name
App Open along with the date and time you opened it are added to a log. Now let’s say you tapped one of your messages and read it start to finish. Then you tapped the back button to view your list of messages, created a new message, sent it to your mom, and then received a reply. The list of events tracked might look something like this:
|Event Name||Timestamp||Triggered When|
|App Open||April 19, 2022 1:00:05 PM||The user opens the app|
|Message List View||April 19, 2022 1:00:06 PM||The user views the message list|
|Message Open||April 19, 2022 1:02:10 PM||The user opens the app|
|Message Read||April 19, 2022 1:02:49 PM||The user reads a message|
|Message List View||April 19, 2022 1:03:15 PM||The user views the message list|
|New Message||April 19, 2022 1:03:50 PM||The user creates a new message|
|Message Sent||April 19, 2022 1:05:04 PM||The user sends a message|
|Message Received||April 19, 2022 1:07:12 PM||The user receives a message|
Notice that the events are listed in the order that they happened, with some events happening only milliseconds apart. Also notice that some events, like
Message List View, are logged more than once since they happened at different times as the user interacted with the app.
Events tell stories about your users (and your app)
Compiling a list of events (like the one from the previous section) is the bedrock of mobile app event tracking. What’s more interesting is what we do with the list once we have it.
Tools like Mixpanel allow your app to track events like these for all of your users. You can define the events that are important to your business or product goals, and they are imported into Mixpanel for you to slice and dice how you please.
The goal is to compare your expectations with what users are actually doing and to define events that allow you to read between the lines of user reactions and intentions so you can enhance your product and increase your engagement.
For example, you may have released a new feature in a notes app that allows users to quickly capture scans of documents with their smartphone camera. You believe it’s going to be wildly popular because it has been a top feature request for the past six months. So you add a couple events to track the user’s journey through the document scan process and wait for the events to roll in:
|Event Name||Triggered When|
|Document Scan Opened||The user opens the screen to start a document scan|
|Document Scan Closed||The user closes the screen to start a document scan|
|Document Scan Completed||The user successfully completes and saves a document scan|
However, when you release the feature, you notice that the
Document Scan Opened is barely getting triggered compared with how many users requested the feature.
This tells a story. It says that while you have evidence to suggest users want the feature, something about how you implemented it is not resonating with your users in practice.
As such, you decide to chat with a few users 1:1 and quickly realize they were confused by the icon you chose for the document scan button. Once you change the icon to something more intuitive, you immediately notice engagement increases to expected levels. Yay for event tracking!
While this example is certainly useful, its child’s play compared to what platforms like Mixpanel can do. In real-world apps, you’ll have thousands of events flowing in on a daily basis, so you’ll need an array of tools to sort, make calculations, and even group events into funnels for more advanced analysis. Mixpanel handles the basics and the more sophisticated scenarios as your event analysis skills strengthen.
Properties sweeten the deal
The best part is that event tracking typically goes way beyond logging an event name and timestamp. More often than not, additional data is sent along with each event that allows you to capture (and sort through) way more nuance than would otherwise be possible.
In Mixpanel, we call these additional bits of data “properties.”
If we return to our messaging example from earlier, we might want to ask questions like:
- How many messages are sent that contain photos?
- How many messages are sent that contain text?
- What percentage of users react to messages with emojis?
To answer these questions, we can add a variety of properties to each event that allow us to filter events accordingly.
For instance, to answer how many text vs photo vs emoji reaction messages are sent, we could add a
Message Type property to all
Message Sent events. We might also add a
Message ID property so we know which events are associated with the same or different messages. All we have to do then is filter by the properties associated with each relevant event to get the counts we want.
|App Open||April 19, 2022 1:00:05 PM||…|
|Message List View||April 19, 2022 1:00:06 PM||…|
|Message Open||April 19, 2022 1:02:10 PM||Message ID: 923847, Message Type: Photo & Text|
|Message Read||April 19, 2022 1:02:49 PM||Message ID: 923847, Message Type: Photo & Text|
|Message List View||April 19, 2022 1:03:15 PM||…|
|New Message||April 19, 2022 1:03:50 PM||Message ID: 315344, Message Type: Text|
|Message Sent||April 19, 2022 1:05:04 PM||Message ID: 315344, Message Type: Text|
|Message Received||April 19, 2022 1:07:12 PM||Message ID: 183658, Message Type: Emoji Reaction|
Even better is that Mixpanel sends certain properties with all events tracked whether you manually declare them or not. These “super properties” contain information like an abstracted (for privacy) user id, device type and platform, as well as any other insightful data that can automatically be retrieved from the apps.
Knowledge is power
With this kind of data at your hands, you can easily make improvements to your app that you know your users will love and appreciate. It’s also important to point out that, as hinted above, privacy should be a big part of any event tracking plan, something else that users love and appreciate. For example, events themselves shouldn’t typically contain direct information about a user’s identity, nor should they contain sensitive content. One way Mixpanel achieves this is by using identifiers for users that indicate an item is unique but which does not map back to the identifiers used in the app itself. Since user-identifying information is not stored in the analytics platform, there is no way to link a series of behaviors or content to a specific user.
About Joseph Pacheco
Joseph is the founder of App Boss, a knowledge source for idea people (with little or no tech background) to turn their apps into viable businesses. He’s been developing apps for almost as long as the App Store has existed—wearing every hat from full-time engineer to product manager, UX designer, founder, content creator, and technical cofounder. He’s also given technical interviews to 1,400 software engineers who have gone on to accept roles at Apple, Dropbox, Yelp, and other major Bay Area firms.
Gain insights into how best to convert, engage, and retain your users with Mixpanel’s powerful product analytics. Try it free.