> For the complete documentation index, see [llms.txt](https://developer.harness.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.harness.io/continuous-delivery/use-continuous-delivery/monitor-deployments/dora-metrics-dashboard.md).

# DORA metrics dashboard

Set a baseline for team performance and measure improvements by tracking DORA metrics.

DevOps Research and Assessment (DORA) metrics is a standard measure of DevOps performance. By understanding these metrics, you can make informed decisions and implement improvements that can help your business grow.

## What you will learn from this topic

This page covers the following topics:

* How to [create queries to pull data into your DORA dashboard](#create-queries-to-pull-data-into-your-dora-dashboard)
* How to create [deployment frequency](#deployment-frequency), [mean time to restore](#mean-time-to-restore), [change failure rate](#change-failure-rate), and [lead time to production](#lead-time-to-production) queries
* How to [use reverted executions to capture mean time to restore](#use-reverted-executions-to-capture-mean-time-to-restore)
* How to [improve DORA reporting with Harness Software Engineering Insights](#improve-dora-reporting-with-harness-software-engineering-insights)

## Before you begin

* Go to [create dashboards](https://developer.harness.io/docs/platform/dashboards/create-dashboards/) to create a DORA metrics dashboard before you add queries and tiles to it.

### Create queries to pull data into your DORA dashboard <a href="#create-queries-to-pull-data-into-your-dora-dashboard" id="create-queries-to-pull-data-into-your-dora-dashboard"></a>

After you [create a DORA metrics dashboard](https://developer.harness.io/docs/platform/dashboards/create-dashboards/), you can [add tiles](https://developer.harness.io/docs/platform/dashboards/create-dashboards/#step-2-add-tiles-to-a-dashboard) to the dashboard.

You can edit, delete, resize, move positions, or download data of the tiles.

Using the DORA metrics dashboard, you can view the following metrics.

* **Deployments Frequency** tells you how many deployments happened in a particular duration. This metric helps measure the consistency of software delivery and delivery performance.
* **Mean Time to Restore (MTTR)** tells you the time taken to restore an issue found in the production environment.
* **Change Failure Rate** is the percentage of failure rate across all services in a given time period.
* **Lead Time to Production** shows the median duration of deployments.

![picture 1](https://3694223630-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fy1JhZ4oKIppwY7d5AhPj%2Fuploads%2Fgit-blob-3c8ca1ab4130d032ed625b6b366c2bb86e1bfe54%2F2ab6c57ffae6974916e7d6c40878bf83bcbcd8734376c1a682bc79d6f18b0d60.png?alt=media)

To gain deeper insights, you can create queries in the dashboard to capture data. Harness captures metrics for each service-environment combination within a pipeline. If you have a multi-service pipeline, metrics for each service-environment combination will be captured and reported separately.

### Deployment frequency <a href="#deployment-frequency" id="deployment-frequency"></a>

1. Enter a name for your query. For example, Deployment Frequency.
2. Select the following filters.
   * In **Deployments**, select **Custom Aggregation Period**, then select the time period.
   * In **Deployments**, select **Total Deployments**.
3. Go to [create visualization and graphs](https://developer.harness.io/harness-platform/use-harness-platform/harness-dashboards/dashboard-legacy/create-visualizations-and-graphs) to configure your visualization options.
4. Select **Run**.
5. Select **Save** to save the query as a tile on your dashboard.

![](https://3694223630-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fy1JhZ4oKIppwY7d5AhPj%2Fuploads%2Fgit-blob-90a5f686b9b42d20028634f31be8cd34892b7f96%2Fdeployment-frequency.png?alt=media)

### Mean time to restore <a href="#mean-time-to-restore" id="mean-time-to-restore"></a>

1. Enter a name for your query. For example, Mean Time to Restore.
2. Select the following filters.
   * In **Deployments**, select **Custom Aggregation Period**, then select the time period.
   * In **Reverted Deployments**, select **Mean Time to Restore**.
3. Go to [create visualization and graphs](https://developer.harness.io/harness-platform/use-harness-platform/harness-dashboards/dashboard-legacy/create-visualizations-and-graphs) to configure your visualization options.
4. Select **Run**.
5. Select **Save** to save the query as a tile on your dashboard.

![](https://3694223630-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fy1JhZ4oKIppwY7d5AhPj%2Fuploads%2Fgit-blob-2c0ffb887c9e9ad2ed1266bd9beedd249daf646f%2Fmean-time-to-restore.png?alt=media)

### Use reverted executions to capture mean time to restore <a href="#use-reverted-executions-to-capture-mean-time-to-restore" id="use-reverted-executions-to-capture-mean-time-to-restore"></a>

{% hint style="info" %}

1. This only works for executions reverted using post production rollback feature.
   {% endhint %}

Harness does not measure regressions or failures that occur after a production deployment is complete.

During the pipeline deployment, if there is an issue that causes downtime, a reverted pipeline execution can restore the service.

You can mark a pipeline execution as a restored/reverted pipeline and link it to the pipeline execution that introduced the issue.

You can then use the difference between the end time of the parent execution and the end time of the reverted execution to capture mean time to restore.

In the pipeline YAML, you can add the following sample expression as a tag:

```yaml
  tags:
    reverted_execution_id: <+pipeline.originalExecution.executionId>
```

Below is an example of a pipeline execution. The `reverted_execution_id` tag represents the execution Id of the pipeline that was reverted.

```yaml
pipeline:
  identifier: "DOra_pipeline"
  tags:
    reverted_execution_id: "Q0bizp0QTM6xtB1FZsR0zQ"
  stages:
  - stage:
      identifier: "stage1"
      type: "Deployment"
      spec:
        service:
          serviceRef: "Ser2"
        environment:
          environmentRef: "Env2"
          infrastructureDefinitions:
          - identifier: "Infra_2"
```

### Change failure rate <a href="#change-failure-rate" id="change-failure-rate"></a>

1. Enter a name for your query. For example, Change Failure Rate.
2. In **Deployments**, select **Custom Aggregation Period**, then select the time period.
   * In **Deployments**, select **Change Failure Rate**.
3. Go to [create visualization and graphs](https://developer.harness.io/harness-platform/use-harness-platform/harness-dashboards/dashboard-legacy/create-visualizations-and-graphs) to configure your visualization options.
4. Select **Run**.
5. Select **Save** to save the query as a tile on your dashboard.

![](https://3694223630-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fy1JhZ4oKIppwY7d5AhPj%2Fuploads%2Fgit-blob-37e5726b182576689e00e880be9ce622c98956c6%2Fchange-failure-rate.png?alt=media)

### Lead time to production <a href="#lead-time-to-production" id="lead-time-to-production"></a>

Lead Time to Production shows the median duration of deployments.

1. Enter a name for your query. For example, Lead Time to Production.
2. In **Deployments**, select **Custom Aggregation Period**, then select the time period.
3. In **Deployments**, select **Median Duration**.
4. Go to [create visualization and graphs](https://developer.harness.io/harness-platform/use-harness-platform/harness-dashboards/dashboard-legacy/create-visualizations-and-graphs) to configure your visualization options.
5. Select **Run**.
6. Select **Save** to save the query as a tile on your dashboard.

![picture 0](https://3694223630-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fy1JhZ4oKIppwY7d5AhPj%2Fuploads%2Fgit-blob-533603c9b0dd7438a7e06f0092f839e7533f7c8f%2F0d658c5d680e7d165ec15ece8f89d73bb206e23d5c7a70304456b09abcfacdd0.png?alt=media)

### Improve DORA reporting with Harness Software Engineering Insights <a href="#improve-dora-reporting-with-harness-software-engineering-insights" id="improve-dora-reporting-with-harness-software-engineering-insights"></a>

While the DORA metrics dashboard in Harness Continuous Delivery (CD) provides visibility into deployment frequency, lead time, failure rates, and recovery times, it focuses primarily on deployment activity within Harness pipelines.

This view may not fully capture bottlenecks or inefficiencies in upstream stages of the software delivery lifecycle (SDLC), such as hygiene in the issue management systems, code review delays, testing gaps, or build tool inefficiencies.

For a holistic view of software delivery performance across your entire toolchain (e.g., Jira, Jenkins, GitHub, Harness CD), use the DORA dashboard in [Harness Software Engineering Insights (SEI)](https://developer.harness.io/software-engineering-insights/new-to-software-engineering-insights/overview).

![](https://3694223630-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fy1JhZ4oKIppwY7d5AhPj%2Fuploads%2Fgit-blob-40b4f80113ed2a7ddcc028c3d6fc2c6acd310499%2Fsei-dora-dashboard-gif.gif?alt=media)

This dashboard is powered by:

* [**DORA profile**](https://developer.harness.io/software-engineering-insights/use-software-engineering-insights/setup-sei/sei-profiles/workflow-profiles/dora-profile): Allows you to define the software delivery lifecycle with customizable thresholds and higher granularity for measuring DORA metrics.
* [**Correlation engine**](https://developer.harness.io/software-engineering-insights/use-software-engineering-insights/analytics-and-reporting/efficiency/dora-metrics/dora-metrics): Analyzes data from all integrated tools (Issue management system, Continuous Integration (CI), CD, SCM, incident management, etc.) to identify root causes of bottlenecks. For example:
  * Long lead times caused by code review delays in GitHub
  * High failure rates linked to flaky tests in Jenkins pipelines
  * Recovery time outliers correlated with specific service architectures

Use the CD DORA dashboard for pipeline-level metrics, and Software Engineering Insights for organization-wide optimization.

***

## Next steps

The following resources provide additional context for DORA metrics reporting:

* Go to [Harness Software Engineering Insights overview](https://developer.harness.io/software-engineering-insights/new-to-software-engineering-insights/overview) to understand the full SEI offering.
* Go to [Set up the DORA profile](https://developer.harness.io/software-engineering-insights/use-software-engineering-insights/setup-sei/sei-profiles/workflow-profiles/dora-profile) to define your software delivery lifecycle with customizable thresholds.
* Go to [Set up the DORA dashboard](https://developer.harness.io/software-engineering-insights/use-software-engineering-insights/setup-sei/create-and-manage-dashboards/insight-tutorials/dora-insight) to create an organization-wide DORA dashboard in SEI.

{% @harness-feedback/feedback %}
