Crashlytics offers different alerts and different ways to receive these
alerts.

Firebase can send Crashlytics alerts based on the following event types:

- **New fatal issues** : triggered when your app experiences a crash or ANR
  that Crashlytics hasn't seen before.

- **New non-fatal issues** : triggered when your app experiences a non-fatal
  issue Crashlytics hasn't seen before.

- **Regressed issues**: triggered when your app experiences a crash that you'd
  previously marked closed.

- **Trending issues**: triggered when an issue is emerging or trending (not
  supported for web apps).

- **Increasing-velocity issues**: triggered when a single crash or ANR type
  impacts a percentage of users in a 30-minute period for a given app version
  (not supported for web apps).

Here are the options for receiving default Crashlytics alerts. Each option
allows progressively more configurability and customization.

- [Alerting by email or in the Firebase console](https://firebase.google.com/docs/crashlytics/alerts.md.txt#default)

- [Basic alerting integrations with Slack, Jira, and PagerDuty](https://firebase.google.com/docs/crashlytics/alerts.md.txt#basic-integrations)

- [Advanced alerting to custom notification channels](https://firebase.google.com/docs/crashlytics/alerts.md.txt#advanced)

> [!NOTE]
> In addition to the above listed "default" Crashlytics alerts sent by Firebase, you can also [set up **custom alerts** using Cloud Monitoring](https://firebase.google.com/docs/crashlytics/alerts-advanced.md.txt#cloud-monitoring).

## Alerting by email or in the Firebase console

Firebase can send all default Crashlytics alerts to your email.
For *regressed issues* and *increasing-velocity issues* for mobile apps,
Firebase can also show alerts in the Firebase console.

- **For mobile apps (Apple, Android, Flutter, and Unity):**

  - Alerts for *regressed* and *trending* issues don't require any configuration and are ***sent by default*** when you set up Crashlytics.
  - Alerts for new *non-fatals* , *fatals* , *ANRs* , and *increasing-velocity issues* are ***not sent by default***. To receive these alerts, you must (at minimum) select your preferred alerting channel.
- **For web apps:**

  - Email alerts are available for *new* and *regressed* issues (powered by [Cloud Monitoring alerting](https://docs.cloud.google.com/monitoring/alerts)).
  - Web app alerts are ***not sent by default*** and must be turned on in the Firebase console.
  - In-console alerts are not currently supported for web apps.

All alert types offer some configuration. For example, you can turn alerts on
or off for your own account, and for *increasing-velocity issues* , you can set
thresholds for when alerts are sent. You can view and configure these alerts in
the **Settings** \>
[**Alerts** page](https://console.firebase.google.com/project/_/settings/alerts)
of the Firebase console.

[Learn more about alerting by email or in-console](https://firebase.google.com/docs/crashlytics/alerts-default.md.txt)

## Basic alerting integrations with Slack, Jira, and PagerDuty

Firebase offers basic alerting integrations to send the default Crashlytics
alerts to Slack, Jira, and PagerDuty.

> [!NOTE]
> **Note:** Basic alerting integrations with Slack, Jira, and PagerDuty aren't supported for web apps. To send web app alerts to Slack, Jira, PagerDuty, or other third-party channels, [set up custom alerts using Cloud Monitoring](https://firebase.google.com/docs/crashlytics/alerts-advanced.md.txt#cloud-monitoring).

At a high-level, here's how to set up and configure these integrations in the
Firebase console:

1. Follow the guided workflow for each alerting service in the
   **Settings** \>
   [**Integrations** page](https://console.firebase.google.com/project/_/settings/integrations/)
   of the Firebase console.

2. Select which configuration is used for individual mobile apps and configure
   the destination of other alerts in the **Crashlytics** card of the
   **Settings** \>
   [**Alerts** page](https://console.firebase.google.com/project/_/settings/alerts)
   of the Firebase console.

[Learn more about basic alerting integrations with Slack, Jira, and PagerDuty](https://firebase.google.com/docs/crashlytics/alerts-basic-integrations.md.txt)

## Advanced alerting to custom notification channels

Firebase offers two options for configuring alerts and sending them to custom
notification channels.

#### *(Recommended)* Set up and send custom alerts using Cloud Monitoring

You can use Cloud Monitoring to send **fully customized alerts** to custom
notification channels based on Crashlytics data and (optionally)
Firebase sessions data that you've exported to Cloud Logging.
For example, if your crash rate exceeds a specific threshold, you can send a
customized message to a specific email address or post it to a third-party
service, like Discord, Slack, or Jira.

[Learn more about setting up and sending custom alerts using Cloud Monitoring](https://firebase.google.com/docs/crashlytics/alerts-advanced.md.txt#cloud-monitoring)

#### Send default Crashlytics alerts using Cloud Functions

You can use Cloud Functions to send the **default Crashlytics alerts**
(see the list at the top of this page) to custom notification channels.
For example, you can write a function that captures an alert event for velocity
alerts and posts the alert information to a third-party service, like Discord,
Slack, or Jira.

[Learn more about sending Crashlytics alerts using Cloud Functions for Firebase](https://firebase.google.com/docs/crashlytics/alerts-advanced.md.txt#cloud-functions)