# Scheduled Reports and Alerts

> Email a dashboard report on a recurring schedule and set threshold alerts on quality metrics so the team is notified in-app, by email, or via webhook when something slips.

Source: https://totalshiftleft.ai/help-center/product-documentation/scheduled-reports-and-alerts

## Overview

Turn dashboards into proactive monitoring: schedule reports to arrive by email, and set alerts that fire when a metric crosses a threshold. Explore the capability at [scheduled reports](/features/analytics-monitoring/scheduled-reports).

Both features are reached from the dashboard toolbar under **Analytics** → **Dashboards**. Scheduled reports go out on a recurring cadence to a recipient list; dashboard alerts watch a metric and notify in-app, by email, or by webhook.

## Before you begin

- Navigation path: top navigation bar → **Analytics** → **Dashboards** tab. The toolbar carries the **Schedule** button; the **notification bell** (top-right) opens the alerts panel.
- A scheduled report needs at least one **recipient** email address.
- Email delivery of reports and email/webhook alert channels depend on your workspace's outbound email and webhook configuration.

## Step 1 — Schedule a report

1. In the dashboard toolbar, click **Schedule**. The **Scheduled Reports** dialog opens on the **New Report** tab.
2. Fill in the report:

| Field | What it does |
|-------|--------------|
| **Report Title** | Optional label (e.g. `Weekly QA Summary`). |
| **Description** | Optional longer description. |
| **Persona** | Which dashboard the report renders (CIO, CTO, Head of Development, DevOps / SRE, Release Manager, QA Lead, Project Manager, Product Owner, Scrum Master, Developer, Tester). |
| **Project** | A specific project, or **All Projects**. |
| **Time Range** | Last 24 hours, 7 days, 14 days, 30 days, or 90 days. |
| **Frequency** | **Daily**, **Weekly**, **Bi-weekly**, or **Monthly**. |
| **Format** | **HTML Email**, **PDF Attachment**, or **JSON Data**. |
| **Day of Week** | Shown for Weekly/Bi-weekly — Sunday through Saturday. |
| **Day of Month** | Shown for Monthly — 1 through 28. |
| **Time of Day** | The send time (24-hour clock). |
| **Timezone** | The timezone the send time is interpreted in (e.g. `UTC`). |
| **Include charts in report** | Toggle to embed charts. |

3. Under **Recipients**, enter an **Email** (and optional **Name**) and click **Add**; repeat for each recipient. Added recipients appear as removable chips. At least one is required.
4. Click **Schedule Report**. The dialog switches to the **Existing Reports** tab.

## Step 2 — Manage, preview, and send reports

On the **Existing Reports (N)** tab, each report row shows its title, an **Active**/**Paused** chip, the frequency, recipient count, last-sent and next-run times, and any last error. Per-report controls:

- **Toggle active** — the switch pauses or resumes the schedule.
- **Preview** — opens the rendered report HTML in a new browser tab.
- **Send Now** — sends the report immediately to its recipients.
- **Edit** — reopens the form pre-filled (the save button becomes **Update Report**).
- **Delete** — removes the schedule.

## Step 3 — Open Dashboard Alerts

1. Click the **notification bell** in the dashboard toolbar. The dropdown lists recent notifications; use **Mark all read** to clear them.
2. At the bottom of the dropdown, click **View All / Manage Alerts**. The **Dashboard Alerts** panel opens.

## Step 4 — Create an alert

1. In the **Dashboard Alerts** panel, click **+ New Alert**. The **New Alert** form opens.
2. Configure the rule:

| Field | What it does |
|-------|--------------|
| **Name** | Required. E.g. `Low Pass Rate Alert`. |
| **Description** | Optional. |
| **Metric** | **Quality Score**, **Pass Rate (%)**, **Failure Count**, **P95 Response Time (ms)**, **Flaky Test Count**, or **Test Coverage (%)**. |
| **Operator** | **Less than (<)**, **Less than or equal (<=)**, **Greater than (>)**, **Greater than or equal (>=)**, or **Equals (=)**. |
| **Threshold** | The numeric value the metric is compared against. |
| **Cooldown (minutes)** | Minimum time between repeat notifications (default 60). |
| **Project** | A specific project, or **All Projects**. |
| **Environment** | Optional environment filter (e.g. `production`). |
| **Notification Channels** | **In-App** is always on. Tick **Email** to reveal an **Email Address** field, and/or **Webhook** to reveal a **Webhook URL** field. |

3. Click **Create Alert**. The alert appears in the list with a state chip — **OK**, **Triggered**, or **Acknowledged** — and a summary line of its metric, operator, threshold, scope, trigger count, and cooldown.

## Step 5 — Test, acknowledge, and manage alerts

Each alert row has inline controls:

- **Active / Inactive** — toggles whether the alert is evaluated.
- **Test** — evaluates the rule against current data and shows a **Test Result** banner reporting the current value, the threshold, and whether it **WOULD TRIGGER** or is **OK (not triggered)**.
- **Acknowledge** — shown only when the alert is **Triggered**; silences it until it recovers.
- **Edit** / **Delete** — modify the rule or remove it (delete asks for confirmation).

In-app notifications continue to surface on the notification bell, color-coded by severity, with an unread count badge.

## Troubleshooting / Notes

- **Can't save a report** — you must pick a **Persona** and add at least one **Recipient**; you'll see *"Please add at least one recipient"* otherwise.
- **Preview didn't open** — allow pop-ups for the app; Preview opens the report in a new tab.
- **Email/Webhook checkbox has no effect** — enter the **Email Address** / **Webhook URL** after ticking the channel; empty channels are dropped when saving.
- **Alert never fires** — confirm it's **Active**, check the **Cooldown**, and use **Test** to see the current value versus the threshold.

## Related articles

- [Understanding Analytics](/help-center/product-documentation/understanding-analytics)
- [Regression analysis](/help-center/product-documentation/regression-analysis)
- [Sharing and embedding dashboards](/help-center/product-documentation/sharing-and-embedding-dashboards)
- [Webhooks](/help-center/product-documentation/webhooks)

