Set up alerts for performance issues

Use Performance Monitoring alerts to notify project members if code changes or network requests are degrading the performance of your app.

What triggers an alert?

An alert is triggered when a specific metric for your app crosses a threshold that you define in the Firebase console. Alerts are triggered only if your app uses a real-time compatible SDK version.

network requests

If you configure an alert for a network request metric, the alert is triggered if all of the following conditions are true:

  • Firebase recorded at least 100 samples that matched to the URL pattern (across all versions of your app in the last hour).
  • The metric's aggregated value crossed the defined threshold (during the last hour):

    • response time: the aggregated value exceeded the set threshold (for the 50th percentile of users)
    • success rate: (for iOS+/Android only) the aggregated value went below the set threshold (across all users)
  • There was no alert previously raised for the same threshold (in the past 3 days).

app start time

If you configure an alert for app start time, the alert is triggered if all of the following conditions are true:

  • Firebase recorded at least 100 samples of the _app_start trace (for the latest version of your app in the last hour).
  • The duration of the _app_start trace exceeded the app's defined threshold (during the last hour and for the 50th percentile of users).
  • There was no alert previously raised for the same threshold (in your latest app version).

custom code traces

If you configure an alert for a custom code trace metric, the alert is triggered if all of the following conditions are true:

  • Firebase recorded at least 100 samples of the custom code trace (for the latest version of your app in the last hour).
  • The duration of the trace exceeded the app's defined threshold (during the last hour and for the 50th percentile of users).
  • There was no alert previously raised for the same threshold (in your latest app version).

page loads

If you configure an alert for a page load metric, the alert is triggered if all of the following conditions are true:

  • Firebase recorded at least 100 samples of the page loading (for your app in the last hour).
  • The metric's aggregated value crossed the defined threshold (during the last hour and for the 50th percentile of users):
    • first input delay: the aggregated value exceeded the set threshold
    • first contentful paint: the aggregated value exceeded the set threshold
  • There was no alert previously raised for the same threshold (in the past 3 days).

Later on this page, learn more about configuring alerts as well as some best practices for setting up alerts for specific types of traces and metrics.

Note that, currently, alerts for other performance metrics or for built-in Firebase integrations with Slack, Jira, and PagerDuty are not available for Performance Monitoring alerts.

Receive alerts

Performance Monitoring alerts are sent via email notifications.

To receive Performance Monitoring alerts, you must have the firebaseperformance.config.update permission. The following roles include this required permission by default: Firebase Performance Admin, Firebase Quality Admin, Firebase Admin, and project Owner or Editor.

Alerts and their settings are project-wide. This means that, by default, every project member (who has the required permissions to receive alerts) will get an email notification when the alert is triggered.

Turn on/off alerts for your own account

For your own account, you can turn on/off Performance Monitoring alerts without affecting other project members. Note that you still need the required permissions to receive alerts.

In the Firebase console, in the top right-corner, go to Firebase alerts > Settings, then set your account preference for Performance Monitoring alerts.

Configure an alert

To configure Performance Monitoring alerts, you must have the firebaseperformance.config.update permission. The following roles include this required permission by default: Firebase Performance Admin, Firebase Quality Admin, Firebase Admin, and project Owner or Editor.

In each of your registered apps, configure an alert for each metric that you want to closely monitor. Each app can have a different set of alerts, each with a different threshold (or have no alerts at all).

  1. Go to the Performance Monitoring Dashboard tab in the Firebase console, and then select the app for which you want to configure an alert.

  2. Scroll down to the traces table at the bottom of the screen.

  3. Select the tab of the trace type for which you want to set an alert, and then find the applicable row.

    Note that the _app_start trace is nested in the Custom traces tab.

  4. At the far right of the row, open the overflow menu (), and then select Alert settings.

  5. Follow the on-screen instructions to set the alert threshold for the app or to turn on/off the alert.

Best practices for setting a performance alert

Network requests

Firebase aggregates the data from similar network requests under URL patterns, which can be either of the following:

  • User-defined patterns, which are called custom URL patterns.

  • Firebase-derived patterns, which are called automatic URL patterns.
    These patterns may change over time based on your app’s latest usage behavior.

Set up alerts for your custom URL patterns

We recommend setting up alerts for any custom URL patterns that you've configured. Since Firebase attempts to match a request to a custom URL pattern first, similar requests are more consistently mapped to the same URL pattern. This makes alerts for a custom URL pattern more meaningful and effective for your team, because you've already identified that specific pattern of requests as important to your app.

Set up alerts for automatic URL patterns

When setting up an alert for an automatic URL pattern, ensure that the automatic URL pattern has stabilized for a few days. Keep in mind that automatic URL patterns may change over time, and alert configurations do not carry over to new URL patterns. This could result in incorrect or missing alerts for the patterns you care about. You can also consider creating a custom URL pattern to ensure that this pattern is stable.

Web page loads

To learn recommended thresholds for measuring web metrics, see the Core Web Vitals documentation.