Choosing how, when, and where to send your alert notifications is an important part of setting up your alerting system. These decisions have a direct impact on your team’s ability to receive the necessary information to resolve issues quickly and minimize alert noise.
Start defining your [contact points](ref:contact-points) to specify how to receive your alert notifications. Then, configure your alert rules to send their alerts to either a contact point or use the [Notification Policy Tree](#notification-policies) to flexibly route alerts to contact points.
{{<figuresrc="/media/docs/alerting/alerting-configure-notifications-v2.png"max-width="750px"alt="Configure alert rules to forward firing alerts directly to a contact point or through notification policies"caption="Configure alert rules to forward firing alerts directly to a contact point or through notification policies">}}
- Grafana alerting periodically [evaluates your alert rules](ref:alert-rule-evaluation).
- It triggers notifications for alert instances that are **firing** or **resolved**.
- You can configure an alert rule to send notifications to a **contact point** or route them through **notification policies** for greater flexibility.
- To reduce the number of notifications, you can **group related alerts** into a single notification by using label grouping and notification timings.
[Contact points](ref:contact-points) contain the configuration for sending alert notifications, specifying destinations like email, Slack, IRM, webhooks, and their notification messages.
By default, notification messages include common alert details, such as the number of alerts, alert names, labels, annotations, and other alert information. You can also customize notification messages and use notification templates.
First, create the contact point and test the notifications. Then, configure the alert rule to send its notifications to either a contact point or through Notification Policies.
### Notification policies
[Notification policies](ref:notification-policies) are the backbone of a comprehensive alerting system. They provide a flexible and effective method to route alerts to distinct contact points, helping reduce alert noise while ensuring no alerts are missed.
{{<figuresrc="/media/docs/alerting/notification-routing.png"max-width="750px"alt="A diagram displaying how the notification policy tree routes alerts">}}
{{<figuresrc="/media/docs/alerting/alerting-notification-policy-diagram-v5.png"max-width="750px"alt="A diagram of the notification policy component">}}
When something fails in our system, our alerting setup can easily trigger hundreds or even thousands of alert instances (notifications). Several alert rules often fail simultaneously. Additionally, each alert rule may generate multiple alert instances.
[Grouping alert notifications](ref:group-alert-notifications) is commonly necessary to avoid bombarding our alert inbox. Grouping combines similar alert instances in a given period into one single notification.
For instance, you can customize notifications with shared [templates](ref:templates) that provide actionable alert information and can be reused for multiple notifications.
Additionally, you can use [silences](ref:silences) and [mute timings](ref:mute-timings) to pause or suppress notifications without interrupting alert evaluation.
{{<figuresrc="/media/docs/alerting/alerting-alertmanager-architecture.png"max-width="750px"alt="A diagram with the alert generator and alert manager architecture">}}
Grafana includes a custom Alertmanager that extends the Prometheus Alertmanager to manage and deliver alert notifications. You can also [configure Grafana Alerting to work with other Alertmanagers](ref:configure-alertmanager).