> For the complete documentation index, see [llms.txt](https://docs.fuul.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.fuul.xyz/core-concepts/budgets-and-smart-contracts/budget-alerts.md).

# Rewards Pool Budget Alerts

Budget alerts notify you in Slack before a rewards pool runs low, so onchain payouts never stall. Instead of checking your program balance manually, you set thresholds once and Fuul watches the pool for you.

{% hint style="info" %}
Budget alerts apply to programs that pay **onchain token rewards** from a smart contract budget. Points-only programs don't need them.
{% endhint %}

## How it works

Fuul reads your program's onchain balance once a day and compares it against the thresholds you configured.

| State                 | What happens                                                                                          |
| --------------------- | ----------------------------------------------------------------------------------------------------- |
| **Healthy**           | No message. Alerts stay silent while the pool is in good shape.                                       |
| **Threshold crossed** | Fuul posts an alert to your Slack channel with the current balance, the alert type, and the severity. |
| **Recovered**         | Fuul posts an all-clear in the same channel once the pool is healthy again.                           |

{% hint style="info" %}
No spam: the same alert is not repeated day after day. It fires again only if the situation gets worse and crosses a higher severity.
{% endhint %}

## Alert types

You can enable one or both alert types. They are evaluated independently, so one can fire without the other.

| Type         | Question it answers                                                                                   | Fires when                                                                     |
| ------------ | ----------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |
| **Coverage** | Does the pool have enough to cover what users and affiliates have already earned but not yet claimed? | The margin between the balance and the earned rewards shrinks past a threshold |
| **Balance**  | Has the balance dropped a lot since the last deposit?                                                 | The balance falls below a set fraction of your most recent top-up              |

## Severity levels

Each alert type has four severity levels, from the earliest warning to the most urgent:

* **Warning**
* **Breach**
* **Critical**
* **Super Critical**

Enable the severities you want for each alert type. Every severity carries an optional custom trigger ratio: set your own value, or leave it blank to use Fuul's default for that alert type.

## Configuring alerts

Project admins configure budget alerts from **Settings → Notifications** in the dashboard.

1. Enable the alert types you want to monitor (Coverage, Balance, or both).
2. Turn on the severity levels you care about, and optionally set a custom trigger ratio for each.
3. Add the Slack webhook URL where alerts should be posted.

Changes take effect on the next daily check.

{% hint style="warning" %}
The Slack destination must be an incoming webhook (`https://hooks.slack.com/...`). For security, Fuul stores the webhook write-only: it is never displayed back after you save it.
{% endhint %}

## Use cases

* Keep programs running without checking the budget manually every day.
* Get warned early, before a low balance causes reward claims to fail.
* Route alerts to a dedicated ops channel so the right people act the moment a pool needs a top-up.

For how program budgets and smart contracts work, see [Budgets & Smart Contracts](/core-concepts/budgets-and-smart-contracts.md).
