{{<figuresrc="/media/docs/alerting/alert-rule-evaluation-2.png"max-width="750px"alt="Set the evaluation behavior of the alert rule in Grafana."caption="Set alert rule evaluation">}}
Every alert rule is assigned to an evaluation group. You can assign the alert rule to an existing evaluation group or create a new one.
Each evaluation group contains an **evaluation interval** that determines how frequently the alert rule is checked. For instance, the evaluation may occur every `10s`, `30s`, `1m`, `10m`, etc.
- **Grafana-managed** alert rules within the same group are evaluated concurrently—they are evaluated at different times over the same evaluation interval but display the same evaluation timestamp.
- **Data-source managed** alert rules within the same group are evaluated sequentially, one after the other—this is useful to ensure that recording rules are evaluated before alert rules.
You can set a period to keep an alert firing after the threshold is no longer breached. This sets the alert to a Recovering state. In a Recovering state, the alert won’t fire again if the threshold is breached. The Keep firing timer is then reset and the alert transitions back to Alerting state.
The Keep firing for period helps reduce repeated firing-resolving-firing notification scenarios caused by flapping alerts.
{{<figuresrc="/media/docs/alerting/alert-rule-evaluation-overview-statediagram-v2.png"alt="A diagram of the alert instance states and when to route their notifications."max-width="750px">}}
Consider an alert rule with an **evaluation interval** set at every 30 seconds and a **pending period** of 90 seconds. The evaluation occurs as follows: