In case you haven’t heard, the app store gold rush is over. I don’t mean it’s no longer possible to make money from apps. In fact, it’s still possible to be very successful in the app stores, but to do so takes a lot of thought, planning and continual improvement. To continually improve your app, you need data. That data will come from one or more of the many mobile app analytics tools out there.

It’s important to have your analytics tools and processes set up properly from day 1. I’m going to walk you through 5 of the most important mobile app metrics to track and how you can track them.


Understanding who is using your app is extremely important. By knowing exactly who your core users are, you can be more effective in acquiring new users. It will also allow you to become better at keeping your current users happy and engaged.

Here are some things you should know about the users of your app:

  • Where they are from
  • Which language they use
  • Gender
  • Age bracket

How can you track demographic data?

The good news is most mobile analytics tools out there will offer the ability to track user demographic data as an optional feature.

With Flurry, you must request this information from users if you wish to collect it. If you don’t, Flurry will provide estimates based on data they have available.

Google Analytics offers demographic data with a little bit of extra configuration within the SDK. It does not require you to request data from users, it is obtained it using the IDFA for iOS or Advertising ID for Android instead.

Facebook Insights also provides demographic data if you have the Facebook SDK in your app. You don’t need Facebook Login functionality to be able to see this data. Simply having the Facebook SDK in the app will allow this.



Analytics can provide an enormous amount of insight into how people are using your app. It is worth taking the time to set up custom events within your app to track exactly how it is being used. A custom event is simply an event that occurs within your app that you have selected to track.

Here are some examples of some custom events you might set up and the insights you could gain from them:

  • By setting a custom event for when the app is closed, you can see exactly where users are leaving your app.
  • If you have a game with multiple stages, you can see which ones are most popular by setting a custom event at the beginning of each stage.
  • Setting a custom event for each button in your app lets you find out how often particular buttons are pressed.
  • A custom event for each screen view allows you to track the typical user ‘flow’ through your app. See which screens users use most and the order in which they use them.

Understanding how people interact with and use your app gives you the ability to identify the key areas for improvement.

For example, if you know that users a large percentage of users are leaving your app at a particular point, you can analyse why and make changes to fix it.

Another way to use this data is to look at which features your users are engaging with most frequently and focus your development on improving those features. The data allows you to see exactly where you can get the best bang for your buck when it comes to development.

How can you track usage?

Most of the major analytics tools out there will allow for event tracking. This allows you to identify the important events within your app and track them. You must add code into your app to track these events, so you will need a developer to implement them. Don’t worry, it’s very easy for a good developer to do this and should be relatively inexpensive.

Start by writing down the key events that you want to track. I like to track every button in my apps so that I can see exactly when they are pressed, so this is usually my starting point.

Next, consider the main functions of your app and create events based around those. If it’s a game, things like completing a level, winning a prize, game over etc. are all events you might track. On the other hand a health and fitness app might track whenever a user records a new workout, completes a fitness goal etc.

Once you have a list of all of the events you want to track, pass them over to your developer and ask them to implement the events. For most analytics tools, the events will then automatically appear in your dashboard.



Getting users is one thing. Keeping them is another. Once a user downloads your app, you want them to become loyal, engaged users who continue to use it for as long as possible.

Increasing the amount of time that you retain a user increases the chances of that user spending money in your app. This is particularly important as we see the cost of user acquisition increasing. It’s becoming increasingly difficult to obtain new users, so when you get them you want to do everything you can to keep them.

Retention is measured by looking at how often your users return to the app after the initial download. The most common time frames used when measuring retention are 1 day, 7 days and 30 days.

The most popular (and easiest) way to calculate retention is by measuring the proportion of users who return to the app after Day 0 + N, where Day 0 is the day they installed the app, and N is the number of days after the initial install.

Here is an example:

To measure Day 7 retention, we look at the number of users who opened the app 7 days after they first installed/used it.

If 1000 people installed the app on 1 January 2016, and 250 of those users opened the app on 8 January 2016, the 7 day retention would be 25%. Another way to put this is; 25% of users that downloaded the app on 1 January were still using it 7 days later.


How can you measure retention?

The easiest way to measure retention is to choose an analytics tool that offers this feature right out of the box.

Two free analytics tools that I have used that offer retention metrics out of the box are Flurry and the Facebook SDK. Both of these will give you basic retention data without any additional setup or configuration. I’ve used Google Analytics as well, however they do not offer this functionality. It may be possible to measure using Google Analytics but it isn’t readily available.


Lifetime Value (LTV)

Lifetime Value measures how much revenue you can expect to earn from a user over the lifetime in which they use the app. It is arguably the most important revenue tracking metric for an app developer.

There are multiple ways to measure LTV, but they all try to achieve the same thing, which is how much revenue a user will generate over the time that they use the app.

Because LTV can be calculated in many different ways depending on how an app publisher defines a users value, you won’t find LTV as a nice little figure sitting on an analytics tool’s dashboard. This has to be calculated manually. You need to figure out how you will determine the value of each of your users and what the average lifetime of a user is.

How can you track LTV?

This is a big topic so I decided to write an entire post dedicated to it. Check out my detailed post that covers 4 different way to measure the LTV of mobile app users.

User Acquisition

You should know where your users are coming from, particularly if you are using paid user acquisition methods. This lets you determine how effective each of your user acquisition campaigns are.

It is possible to track exactly where downloads are coming from, and even separate users into cohorts depending on the acquisition channel. This is done using properly configured analytics tools and SDK’s.
How can you track user acquisition channels?

Most analytics tools, including Flurry and Google Analytics allow you to do this using custom campaign tracking URL’s. Basically you create a custom URL for each user acquisition campaign from within the analytics tool. Each campaign then has it’s own separate URL that you will use, allowing the analytics tool to track them all separately.

This is best demonstrated using an example. Let’s assume you are using 3 different campaigns to acquire new users for your app.

  • An email campaign via your mailing list.
  • Content marketing via a blog.
  • Paid advertisements through Facebook ads.

First, you would create a new custom URL for the email campaign from within your analytics tool. Then when you send out the email, include this new custom URL as the download link for the app. Whenever someone clicks on the link in the email, the download will be attributed to the email campaign.

The same applies to the content marketing campaign. A new custom URL is set up within the analytics tools and used in blog posts. When a user clicks the link in the blog, those downloads are attributed to the content marketing campaign.

The Facebook example is a little different, which is why I’ve included it. You can track Facebook ad campaigns in detail, but not via a general analytics tool. To do this means you must have the Facebook SDK installed in your app. Once you do that, you can track exactly how many people saw your Facebook Ad and how many installs it generated. If you are running a Facebook Ad campaign, having the SDK in your app is a must do. Technically it’s not required, but if you don’t include it you have no way of knowing which users were acquired via the Facebook Ad campaign.


If you are releasing an app, or already have an app in any of the app stores you should have analytics built in and be tracking these 5 metrics at a minimum. This will give you the data you need to start the process of continually updating and improving your app.

You should start to make data driven decisions when it comes to your app. Find where you can improve and make changes. Each time you make a change, measure it’s effect and use the data you now have at hand to determine what your next move should be.


[optin-monster-shortcode id=”fgbg8l3krh-post”]