How does alert routing work between Alert Rules and Notification Policies in Grafana Alerting?

Hi everyone,

I’m trying to better understand how alert routing works in Grafana Unified Alerting, specifically the relationship between Alert Rules, Contact Points, and Notification Policies.

When creating an Alert Rule, Grafana allows me to select a Contact Point directly.
At the same time, in Notification Policies, I can also define Contact Points based on label matching and policy hierarchy.

This makes me a bit confused about the actual routing logic:

  • If an Alert Rule already has a Contact Point defined, does it bypass Notification Policies, or

  • Does Grafana still evaluate the Notification Policy tree and override the Contact Point defined in the Alert Rule?

  • Which one has higher priority:
    Contact Point defined in the Alert Rule vs Contact Point defined in Notification Policies?

  • In practice, what is the recommended approach:

    • Always route via Notification Policies and avoid setting Contact Points in Alert Rules?

    • Or use Contact Points in Alert Rules only for simple setups?

I’d appreciate a clear explanation of the evaluation order and best practices for using Notification Policies effectively.

Thanks in advance!

Welcome @brandon

We have a dedicated tutorial that covers this topic. Hope it helps.

You can use contact points for simple setups but if the data that you are querying return multiple alert instances, you might want to use notification policies instead, since you can use some of the returned labels for routing to multiple contact points.