Google is committed to advancing racial equity for Black communities. See how.

Learn about screen rendering performance data (iOS & Android apps)

Performance Monitoring uses traces to collect data about monitored processes in your app. A trace is a report that contains data captured between two points in time in your app.

For iOS and Android apps, Performance Monitoring automatically collects a trace for each screen in your app called a screen rendering trace. Each screen rendering trace collects the following metrics:

  • Slow rendering frames — A metric that measures the percentage of frames that were slow to render for a specific screen

  • Frozen frames — A metric that measures the percentage of frames that were frozen for a specific screen

View data from these traces in the On device tab of the Firebase console (learn more later on this page).

Definition of a screen rendering trace

Each screen rendering trace is identified by the name you called the screen in your app. The collected metrics for this trace are Slow rendering frames and Frozen frames.

  • Starts for every UIViewController in the keyWindow when the app calls viewDidAppear:.

  • Stops when the app calls viewDidDisappear:.

Note that screen rendering traces don't capture canonical container view controllers.

Metrics collected by screen rendering traces

These traces are out-of-the-box traces, so you cannot add custom metrics or custom attributes to them.

Slow rendering frames

This metric is the percentage of frames that were frozen for a specific screen. Specifically, this metric is the percentage of screen instances during which more than 0.1% of frames took longer than 700 ms to render.

Frozen frames

This metric is the percentage of frames that were slow to render for a specific screen. Specifically, this metric is the percentage of screen instances during which more than 50% of frames took longer than 16 ms to render.

Track, view, and filter performance data

Track key metrics in your dashboard

Add your key metrics to your dashboard to learn how they're trending. You can quickly identify regressions by seeing week-over-week changes or verify that recent changes in your code are improving performance.

an image of the Firebase Performance Monitoring metrics dashboard

To add a metric to your dashboard, go to the Performance dashboard in the Firebase console, then click the Dashboard tab. Click an empty metric card, then select an existing metric to add to your dashboard. Click on a populated metric card for more options, like to replace or remove a metric.

The dashboard shows collected metric data over time, both in graphical form and as a numerical percentage change.

Learn more about using the dashboard.

View all traces and their data

To view these traces, go to the Performance dashboard in the Firebase console, then click the On device tab.

From the On Device tab, you can click through various screens to explore a trace and drill down into metrics of interest. On most pages, you can use the Filter button (top-left of the screen) to filter the data by attribute, for example:

an image of Firebase Performance Monitoring data being filtered by attribute
  • Filter by App version to view data about a past release or your latest release
  • Filter by Device to learn how older devices handle your app
  • Filter by Country to make sure your database location isn't affecting a specific region

Learn more about viewing data for your traces.

Next Steps