---
title: A day of test runs - what broke, what got fixed, hour by hour
description: 'The day page of TestingBot Test Analytics compares a day of automated
  test runs with the day before: newly failing and fixed tests, an hour-by-hour chart
  per browser, What broke and every run of the day.'
source_url:
  html: https://testingbot.com/support/analytics/day
  md: https://testingbot.com/support/analytics/day.md
---

# A day of runs

The day page answers the question you ask after a red night in CI: _what changed today?_ It compares one day with the day before, shows the day hour by hour, lists every test that failed and every test that was fixed, and every run of the day.

Open it by clicking a day in the [Runs per day](https://testingbot.com/support/analytics/guide#runs-per-day) chart on the Test Analytics dashboard. The buttons in the top right, labelled with the dates either side (for example `‹ Oct 13` and `Oct 15 ›`), go to the day before and the day after, so you can walk through a week day by day.

The title is the date, for example `Tuesday, Oct 14, 2026`, and the line below it sums the day up: its runs, tests and environments, and the builds that ran. Days are UTC days, from 00:00 to 24:00 UTC.

![The page for Tuesday, Oct 13: 672 runs of 42 tests, Worse than Oct 12 because 1 test started failing with build main-2512, which first ran at 13:05, and the day's numbers against Oct 12](https://testingbot.com/assets/support/analytics/day-overview-d286bfa812335c98db2431212a2f4596c225ebc9ceaec89f64f36e09971e84a9.webp)
_A day against the day before: the build that broke a test is named, with the time it first ran._

## Against the day before

The first card compares the day with the day before, with a label on the left:

| Label | When |
| --- | --- |
| **Worse than \<day before\>** | The pass rate fell by 2 points or more, or a test started failing. |
| **Better than \<day before\>** | The pass rate rose by 2 points or more, and no test started failing. |
| **Like \<day before\>** | Neither. |
| **No runs** | No automated run finished that day. |

When tests started failing, the sentence names the build in which they first failed, so you know which change to look at. _Show what broke_ jumps to the [What broke](https://testingbot.com#broke) list.

A whole day is compared with the whole day before, also while today is still going: early in the day, today has fewer runs than yesterday.

## The numbers

| Number | What it is |
| --- | --- |
| **Runs** | Finished runs that day, with the change against the day before. |
| **Pass rate** | Passed out of passed and failed runs, with the change in points, and how many passed and failed. |
| **Newly failing** | Tests that failed today and passed the day before (at least one pass and no failure the day before). |
| **Fixed** | Tests that failed the day before and passed every run today. |
| **Duration p50 / p95** | The median and 95th percentile duration of the day's passed runs, with the change of the median in seconds. |

## The day, hour by hour

A timeline of the day from 00:00 to 24:00 UTC with a row per environment and a mark per run, placed at the time the run started:

![The day hour by hour: a row per environment, the runs of four builds as clusters of marks, dashed red lines where each build started, and the hover card of a failed run of Account › changes password on Chrome 148](https://testingbot.com/assets/support/analytics/day-hours-388d0f483c4994956c43464040d0339eeaf843e89486712bc2f53e4549236678.webp)
_Each cluster is a build. Failed runs are red diamonds; hover one to see the test, the environment and the time._

- **Green dot** : the run passed.
- **Red diamond** : the run failed.
- **Grey dot** : the run has no result.
- **Dashed red line** : the moment a build first ran that day. The 5 newest builds are named at the top, with their start time.

The 5 environments with the most runs get a row each; the others share an _Other_ row. This makes patterns easy to spot: failures that start right after a build line point at that build, and failures that fill one row point at one browser or device.

Hover over a mark to see the test, its environment, the time it started, its duration and its build, and for a failed run where it failed. **Click a mark** to open the run in the test panel next to the page, with its video, steps and logs.

On a busy day the chart draws the newest 2,000 runs and says so above the chart: _The newest 2,000 of 5,312 runs_. All runs are still in the numbers and in the [Runs](https://testingbot.com#runs) list.

## What broke

Every test that failed that day. Tests that **started failing** come first (they passed the day before), then the others, most failures first. A day has too few runs per test to call a test flaky, so this list shows every failure rather than only failing and flaky tests.

![What broke lists Account › changes password as Started failing on FF 146, Chrome 148 and Safari 26 with an unexpected alert error, and four tests that failed one to four of their 16 runs](https://testingbot.com/assets/support/analytics/day-what-broke-36eac2a22c1d92c556653206395e5cf663a03ca1607fe7a36b088fba1ad6368f.webp)
_What broke: the test that started failing first, then every other test that failed that day._

The table has the same columns as [Needs attention](https://testingbot.com/support/analytics/guide#attention-columns) on the dashboard: the test, its state, pass rate, last 20 runs, flips, where it fails and why it fails. The state is either _Started failing_ or _Failed 3 of 8_: how many of its runs that day failed. The _Started failing_ and _Failed_ tabs narrow the list. The first 6 tests show; _Show all_ lists the rest.

What broke lists up to 200 tests, those with the most failures. On a day with more failed tests it says so; the _Failed_ tab of [Runs](https://testingbot.com#runs) still has every failed run.

## Compared per environment

The _Compared with \<day before\>_ table has a row per environment, most runs first: its runs, pass rate, the change of its pass rate against the day before, and its failed runs. A red change shows which browser or device got worse. The first 8 environments show; _Show all_ lists the rest.

![Compared with Oct 12 per environment, with the change of each pass rate, next to Fixed today, which lists Wishlist › removes an item: failed 6 on Oct 12, passed 16 today](https://testingbot.com/assets/support/analytics/day-compared-fixed-dd851baac5e0836959d43634eef18e06d21759ba856b49c24dc700de9bd8d78e.webp)
_Each environment against the day before, and the tests that were fixed._

## Fixed today

Tests that failed the day before and passed every run today, most runs first, for example _failed 4 on Oct 13 · passed 6 today_. _All runs →_ opens the test's [All runs](https://testingbot.com/support/analytics/insights) page, to confirm the fix holds.

## Runs

Every run of the day, newest first, with its start time, test name, result, environment, build, duration and, for a failed run, the step it failed at.

![The Runs list with the All, Failed, Newly failing and Slower than p95 tabs, a name filter, and rows with time, test, result, environment, build and a duration bar](https://testingbot.com/assets/support/analytics/day-runs-9b96aa6af9b7d54410dea690910b348ed02cae579911ac9725eea6efad53d792.webp)
_Every run of the day. The bar shows each run's duration; the tick marks the day's median._

| Tab | Lists |
| --- | --- |
| **All** | Every run of the day. |
| **Failed** | The failed runs. |
| **Newly failing** | The failed runs of tests that passed the day before. |
| **Slower than p95** | Passed runs that took longer than the day's p95 duration. |

Each tab shows how many runs it has. _Filter by test name_ narrows the list to tests whose name contains what you type. The first 25 runs show; _Load 25 more_ adds the next ones. Runs that finish while you read the page do not shift the list.

Click a run to open it in the test panel next to the list, or _All runs_ to open that test's [All runs](https://testingbot.com/support/analytics/insights) page.

A day page whose URL carries Test Analytics filters (an environment, build, tag or team member) says _Filtered as on Test Analytics_ under the title. _Show every run_ removes the filters.

## CSV export

**Export CSV** downloads every run matching the day's Test Analytics filters, newest first, regardless of the open Runs tab or test-name search, as `test-runs-<date>.csv`. It has a row per run:

| Column | Contains |
| --- | --- |
| `started_at` | When the run started, in UTC (ISO 8601) |
| `test` | The test name |
| `result` | `passed`, `failed` or `unknown` |
| `browser` | The browser name and version |
| `os` | The operating system or device |
| `build` | The build name, if any |
| `duration_seconds` | From start to finish, in seconds |
| `session_id` | The session id, as used by the [REST API](https://testingbot.com/support/api/tests) |
| `url` | The link to the run in the member dashboard |

## Looking for more help?

Have questions or need more information? Reach out via email or Slack.

[Email us](https://testingbot.com/contact/new) [Join our Slack](https://join.slack.com/t/testingb0t/shared_invite/zt-3bcw9xch-jk19~6XPs_xBrsAgAedkCw)
