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

ebook icon

User Guides

General

Frustration-Free Sessions Product Tour

Frustration-Free Sessions Product Tour

Mobile app stability and performance are the foundation upon which mobile app success is built, but mobile teams often struggle to measure the overall quality of their app’s user experience. Between crash-free sessions, app hangs, launch and load times, and network performance, it is difficult to quantify each one’s impact on the user experience and decide which to prioritize.

Instabug’s Frustration-Free Sessions solves this by giving you a holistic metric that takes into account all aspects of your app’s performance. Coupled with the automatically prioritized issues list, they make it easy for you to understand your users’ experience and how you can improve it

In this post, we’ll look at Instabug’s Frustration-Free Sessions, automatically prioritized issues list, how they work, and how you can use them to elevate your app.

Calculating Frustration-Free Sessions

To calculate Frustration-Free Sessions, Instabug first classifies each user session into one of four categories, according to its user experience:

  • Crashing Sessions: Sessions that end with a fatal crash or OOM error.
  • Frustrating Sessions: Sessions that experience major issues
  • Tolerable Sessions: Sessions that experience minor issues
  • Satisfying Sessions: Sessions that provide a smooth performance 

This is done by analyzing all stability and performance metrics in the session to determine their user experience. ANR errors, app hangs, and forced restarts are always considered frustrating because they are always noticed by users. The rest of the performance metrics are scored according to how close they are to their target.

After categorizing all the individual metrics, their weighted count is calculated by multiplying them by a predetermined factor, according to their impact on the user experience. The default impact levels are:

  • ANRs have the highest impact level because they are highly disruptive to the user experience.
  • App launches have a high impact level because they affect your app store ranking and are the first impression users get from your app.
  • Forced restarts have a high impact because they are a strong user frustration signal.
  • App hangs have a high impact because they are disruptive and highly noticeable.
  • Network calls are given a low impact level because they have a lot of occurrences in every session, many of which happen in the background.
  • The rest of the metrics are given a medium impact level.

The weighted percentage is then calculated and used to classify the session as a whole. Satisfying sessions have a satisfying weighted percentage above 50%, frustrating sessions have a frustrating weighted percentage above 30%, and the rest are considered tolerable sessions. Finally, Frustration-Free Sessions is calculated as follows:

Frustration-Free Sessions = (Satisfying sessions + 0.5 * Tolerable sessions) / Total sessions

Customizing Frustration-Free Sessions

While the default settings are suitable for the majority of cases, you can customize your Frustration-Free Session calculation in three different ways to adapt it to your app’s needs

Customizing metric impact

You can adjust each metric’s impact in the weighted count calculation from the settings page on your dashboard. This determines the multiplier that is applied to the metric in the calculation and can greatly affect its significance in determining the session’s classification. For example, if your app tends to be kept running after launch, you can decrease the weight given to app launches to reflect the user experience.

Adjusting targets

Conversely, you can adjust the target for your performance metrics from the corresponding page on the dashboard. This allows you to fine-tune the effect of that metric on the session’s final classification. For example, you can lower the target completion time for your key user flows to ensure they are highly represented in the final score.

Marking key metrics

Lastly, you can customize your Frustration-Free Sessions calculation by marking or unmarking a performance metric as a key metric. Only key metrics are included in the calculation, and unmarking as a key metric completely removes it from the calculation altogether. For example, you can unmark network calls that happen in the background and don’t affect the user experience to avoid having them weigh on the final score.

Improving Frustration-Free Sessions

The automatically prioritized issues list enables you to turn your Frustration-Free Sessions into actionable next steps by ranking stability and performance issues by the magnitude of their impact on the user experience. Issues that affect a greater number of sessions appear on top of the list, allowing you to pick them up and start debugging them quickly.

From here, you can filter issues by team to find the issues relevant to you and forward them to Jira to add to your queue.

Want to try our latest AI features?
Sign up to the closed beta now
Thank you! We'll contact you once a spot opens up.
Oops! Something went wrong while submitting the form.

Learn more:

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

Integrate the Instabug SDK seamlessly into your iOS, Android, React Native, or Flutter app in under a minute