# Regression Analysis

> See how test outcomes trend over time, catch regressions and newly flaky tests, and compare runs so you know whether quality is improving before a release.

Source: https://totalshiftleft.ai/help-center/product-documentation/regression-analysis

## Overview

**Regression analysis** turns your run history into trends so you can tell whether quality is improving or slipping. It reports whether a project or test has regressed, how confident that verdict is, whether performance has degraded, and how success, failure, duration, and response time are trending per day. Explore the capability at [regression analysis](/features/analytics-monitoring/regression-analysis).

Regression analysis draws on the same run history as the **Trends Analysis** section of a project dashboard and the **Pass Rate Trend Analysis** chart. It reads your recorded runs — no configuration and no AI key are required.

Analytics is a paid capability. On the Free edition the **Analytics** area is gated; Professional, Trial, and Enterprise licenses unlock it.

## Before you begin

- You need a **project** with **run history**. Regression signals are statistical — a project or test with only one or two runs shows *"No regression data available"* until more runs accumulate.
- Navigation path: top navigation bar → **Analytics** → **Project Analytics** tab → choose a project.
- Scores are computed over a **time range** (the default is the last 30 days). Widen the range to smooth out noise; narrow it to focus on a recent release.

## Step 1 — Open Project Analytics

1. In the top navigation bar, click **Analytics**.
2. The Analytics area opens with two tabs: **Dashboards** and **Project Analytics**. Click **Project Analytics**.
3. Pick a project from the list. The project's analytics dashboard opens with collapsible sections: **Project Overview**, **Performance Metrics**, **Trends Analysis**, **Top Failing Tests**, **Environment Comparison**, and **Endpoint Analytics**.

## Step 2 — Read the regression verdict

The regression panel summarizes whether quality has slipped over the time range.

| Field | What it does |
|-------|--------------|
| **Regression Status** | A chip that reads **Regression Detected** (red) or **No Regression** (green). |
| **Confidence Level** | A progress bar and percentage (0–100%) with a severity label beneath it: **High** (80%+), **Medium** (60–79%), **Low** (40–59%), or **None** (below 40%). Higher confidence is a stronger signal that the change is real, not noise. |
| **Regression Reasons** | A bulleted list explaining *why* a regression was flagged (for example, a drop in pass rate or a spike in failures). Shown only when reasons exist. |

## Step 3 — Check for performance regression

When response times or durations have degraded, a **Performance Regression** block appears with a warning callout describing the reason, plus up to two metrics:

| Field | What it does |
|-------|--------------|
| **Response Time** | The recent average response time in milliseconds, with the percentage increase over the baseline shown in red. |
| **Duration** | The recent average test duration in milliseconds, with the percentage increase shown in red. |

If performance hasn't regressed, this block is hidden.

## Step 4 — Read the per-day trends

The **Trend Analysis** grid shows the direction and rate of change for four metrics. Each has a trend arrow — up (green), down (red), or flat (—) — and a "% per day" figure:

| Field | What it does |
|-------|--------------|
| **Success Rate** | How the pass rate is trending per day. An up arrow is good here. |
| **Failure Rate** | How the failure rate is trending per day. A down arrow is good here. |
| **Duration** | How average test duration is trending per day. |
| **Response Time** | How average response time is trending per day. |

Direction is derived from the metric's slope over the time range: a small positive slope shows as trending up, a small negative slope as trending down, and near-zero as flat.

## Step 5 — Compare recent runs

The **Recent Status History** list compares the latest runs so you can see exactly when a regression started. Each row shows:

- A status chip — **PASSED** (green), **FAILED** (red), or another state (amber).
- The run **date**.
- The run **duration** in milliseconds.

Scan top to bottom: a run of green that turns red pinpoints where quality changed, and the duration column reveals slowdowns even when the status stayed green.

## Step 6 — Cross-check with the trend charts

Two related views corroborate the regression verdict:

- The **Trends Analysis** section on the project dashboard breaks recent days into per-day trend rows with success-rate figures.
- The **Pass Rate Trend Analysis** chart plots average pass rate over time. Filter it by **Run Type** (All Types / Manual / Scheduled), **Environment** (free text, e.g. `staging`, `production`), and **Time Period** (Last 7 days / Last 30 days / Last 90 days / Last year), then use **Clear Filters** to reset. Below the chart, tiles show **Average Pass Rate**, **Highest Pass Rate**, **Lowest Pass Rate**, and **Data Points**.

## Troubleshooting / Notes

- **"No regression data available"** — the project or test doesn't have enough runs in the selected time range yet. Run more tests or widen the range.
- **Confidence shows "None"** — the data doesn't support a regression conclusion; this is the healthy state, not an error.
- **Analytics area is locked** — Analytics is gated on the Free edition. Upgrade to Professional or Enterprise (Trial also unlocks it).
- **Trends look flat despite failures** — a flat (—) trend means the slope is near zero over the range; a single bad run may not move a 30-day slope. Narrow the time range to surface recent shifts.
- **Pass Rate chart says "No data available for the selected filters"** — loosen the Run Type / Environment / Time Period filters or clear them.

## Related articles

- [Understanding Analytics](/help-center/product-documentation/understanding-analytics)
- [Project analytics](/help-center/product-documentation/project-analytics)
- [Scheduled reports and alerts](/help-center/product-documentation/scheduled-reports-and-alerts)
- [API change detection](/help-center/product-documentation/api-change-detection)

