Join CTO Moataz Soliman as he explores the potential impact poor performance can have on your bottom line. 👉 Register Today

ebook icon

App Performance

General

What Is Apdex? All About the Metric That Measures App Performance

What is Apdex mobile app performance

The term Apdex is becoming more common in mobile software development, but what is Apdex? In short, it’s a way to rate how the user perceives your app's performance with just one number. Your Apdex score is a single metric that calculates if users are having a satisfying, frustrating, or tolerable experience. It might sound reductive, but Apdex is a very helpful metric once you know how to use it. In this post, we’ll define Apdex in more detail, explain how it is used, and describe how you can use it to improve your app performance.

What is Apdex?

Apdex (Application Performance Index) is an industry open standard for measuring the performance of software applications in computing. The idea behind it is to have a universal score that represents the overall user experience with an app. Apdex scores can be used to describe your overall app health, or they can be used to describe individual events or traces.

What is a good Apdex score?

Apdex scores range between 0 and 1. The higher the value, the closer you are to a satisfying user experience. The overall score is a ratio of satisfying and tolerable occurrences to the total number of occurrences.

  • ≥ 0.94 means your app's performance is Excellent
  • ≥ 0.85 and < 0.94 means your app's performance is Good
  • ≥ 0.7 and < 0.85 means your app's performance is Fair
  • ≥ 0.5 and < 0.7 means your app's performance is Poor
  • < 0.5 means your app's performance is Unacceptable

The Apdex score on the Instabug dashboard

Your score is calculated using several variables, such as UI hangs, crashes, and response times. All of these events factor into how the user perceives the overall app experience. We’ll talk more about how Apdex is calculated in further detail later on.

How and why use Apdex?

Distilling user experiences into Apdex scores allows you to see at a glance how satisfied your users are with the app’s performance. Apdex simplifies quantifying performance and allows your team to align around a specific quality metric that you can use to set targets, share during standups, or in reporting to leadership. You can also use Apdex to track your app’s performance over time.

Apdex scores can be more useful than traditional KPIs like response times because they represent a more holistic view of app quality and can be calibrated to your use case. If you’re using Instabug, for example, you can add and subtract Key Metrics, variables you want to contribute to your overall Apdex score. This allows you to set performance thresholds that are specific to your app, rather than aiming for general guidelines.

How is the Apdex score calculated?

Apdex scores are quite descriptive for being so simple. Their calculation includes multiple contributing factors specific to the situation you’re monitoring, such as response times or service interruptions like crashes. To calculate the score, Instabug buckets user sessions into four categories:

  • Crashing sessions
  • Frustrating sessions
  • Tolerable sessions
  • Satisfying sessions

The sessions are bucketed according to set targets, which can be customized as needed. The overall score is calculated as follows:

  • Total = Satisfying sessions + Tolerable sessions + Frustrating sessions + Crashing sessions
  • Apdex score = (Satisfying sessions + 0.5 * Tolerable sessions) / Total

Note: A session starts when the user launches the app or brings it to the foreground. It ends when the user moves the app to the background, or when the app exits. App exit can be triggered by the user by killing the app or by the OS when the app crashes.

For a more in-depth explanation of Instabug's Apdex calculation, check out our docs for iOS and Android.

What metrics are represented in the Apdex score?

All the metrics tracked by Instabug's App Performance Monitoring tool directly impact the overall app Apdex score. Furthermore, each metric has its own individual Apdex score representing how that specific instance is perceived by the user. These metrics include:

  • Crashes
  • App launches
  • App traces
  • Network calls
  • UI hangs

Customize more with Instabug APM

Instabug App Performance Monitoring gives you control over which metrics to include in your app's overall Apdex score.

By default, all app launches, app traces, network URL patterns, and UI traces are marked as key metrics and included in your overall score. To customize your app's Apdex score, you can exclude any individual item as shown in the screenshots below.

Unstar items from the list to remove them from your score calculation

apdex
Or unmark as a key metric from the details page to remove it from your calculation

When using Instabug APM, you'll see an Apdex score for each trace or event along with its rate of change, average value, P95, dissatisfied count, and the number of occurrences.

Your dashboard will give you an idea of performance at a glance and how it has changed recently.

You can set thresholds for performance so that you get alerts when they are exceeded. Being able to set alerts is a key part of adopting a proactive app performance management strategy (related: What Is Application Performance Management for Mobile Apps?).

Using Instabug APM, you can set alerts for when your app or specific events fail their Apdex thresholds.

Tracking Apdex scores for overall app health and individual events will help you set and keep app quality goals, and ensure that the user experience is smooth from every angle. When scores drop, APM tools can help you debug and prioritize performance issues.

Learn more to improve mobile app performance

Instabug empowers mobile teams to maintain industry-leading apps with mobile-focused, user-centric stability and performance monitoring.

Visit our sandbox or book a demo to see how Instabug can help your app

Seeing is Believing, Start Your 14-Day Free Trial

In less than a minute, integrate the Instabug SDK for iOS, Android, React Native, Xamarin, Cordova, Flutter, and Unity mobile apps