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.
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.
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
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.
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.
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.
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:
- App launches
- App traces
- Network calls
- UI hangs
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.
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.
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?).
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
- What is mobile application performance monitoring?
- Understanding cold, hot and warm app launch time
- App performance metrics and KPIs
- Mobile app quality: An essential guide
Instabug empowers mobile teams to maintain industry-leading apps with mobile-focused, user-centric stability and performance monitoring.