Contents

Analyzing the performance of your shipping app

View power and performance metrics for apps you distribute through the App Store.

Overview

Use the Xcode Organizer to view anonymized performance data from your app’s users, including launch times, memory usage, UI responsiveness, and impact on the battery. Use the data to tune the next version of your app and catch regressions that make it into a specific version of your app.

In Xcode, choose Window > Organizer to open the Organizer window, and then select the desired metric or report. In some cases, the pane shows “Insufficient usage data available” because there may not be enough anonymized data reported from participating user devices. When this happens, try checking back in a few days.

When Xcode has enough information to determine a goal for a metric, the chart includes the goal value. Use this information to plan and prioritize performance engineering work.

View key insights into your app

When you open Xcode Organizer, the Insights overview provides a unified view of the most actionable performance information for your app. It surfaces performance regressions, top and trending signatures, and the metrics most likely to need your attention, so you spend less time navigating between individual metric and diagnostic report pages.

[Image]

The Insights overview highlights the highest-impact metrics for your app and displays information for each one. When Xcode detects a regression, it displays a regression chart that calls out the affected metric. When Xcode has enough data to compute a goal for a metric, it displays a recommendation chart for that metric regardless of whether a regression exists. A single metric can appear with a regression chart, a recommendation chart, or both. Even if your app has no regressions, the Insights overview will surface actionable recommendations you can act on. From there, you can follow links to the relevant diagnostic reports and metric pages for further investigation.

Select the Notifications button in the upper-right corner to opt in to power and performance regression notifications. Xcode sends you a notification for the latest version of each of your shipped apps when it detects a high-impact regression. A regression is considered high impact if performance data is available and indicates the latest version of your app regresses 75 percent or more compared to the average of the previous four app versions available in the App Store. Xcode notifies you once per 24-hour period when Xcode is running. To keep notifications to a minimum, Xcode sends you no more than one notification for the same app version. The Notifications button covers power and performance metric regressions only. It does not send notifications for diagnostic signatures listed in the Insights overview.

The first time you open Organizer, it opens to the Insights overview. On subsequent launches, Organizer restores the last section you visited.

Read data for a metric

The Xcode Organizer shows a title, description, and graph for each type of metric. In the graph, each bar represents a version of your app. Use the pop-up menus to filter the metric data for different devices and the median or high value. If your app has an App Clip available, use the pop-up menu to filter by app type and switch between viewing metrics for the main app and the App Clip.

[Image]

Metrics that show limited usage in the detail section include an associated margin of error because the existing data is limited. Use this margin of error to determine the upper and lower bounds of the displayed value. The margin of error decreases as data increases. The release date information in this section provides the date when the selected app version is ready for sale.

Compare performance with a previous app release

To explore changes between versions for a metric, such as those for Hang Rate in the image below, click the vertical bar for your selected version.

The data for both the selected and latest versions appear to the right of the graph with the higher of the two values in bold. Change information for those versions appears in the details section below the latest version data.

[Image]

Compare your app’s metrics with goal values

Xcode Organizer compares your app’s metrics against two types of goals: similar-app goals, which are based on metrics from apps with functional and technical similarities to yours, and historical performance goals, which are based on your app’s own historical data. If your app has sufficient metrics data available and the metric values for the current version of your app are greater than the goal values, Xcode displays a goal as a dashed line on the histogram in the Xcode Organizer.

For metrics that support them, similar-app goals serve as realistic and actionable targets that reflect your app’s true technical profile. For onscreen battery usage and disk writes, similar-app goals are normalized for usage time, ensuring a fair comparison across apps with different usage.

Historical performance goals use your app’s own past metric values as a baseline, helping you detect regressions and track improvements over time.

[Image]

Improve your app’s performance

For more details about how to use the data in the Organizer panes to improve the performance of the next version of your app, see the topics below.

See Also

Related Documentation

Essentials