Markdown Editor

Software Delivery Performance Report Template (DORA Metrics)

Quarterly DORA five-metric report per service, definitions and formulas, data quality, capability assessment, survey data, findings, actions

सॉफ़्टवेयर और इंजीनियरिंगपूर्णDORA metrics guide (2026-01-05); DORA capabilities; SPACE 2021; DevEx 2023CC BY 4.0deliveryperformancereport
एडिटर में खोलें.md डाउनलोड करें

उपयोग कैसे करें: Use it when you report software delivery performance each quarter for a set of services. Fill the scope and metric definitions in section 2 first and keep them stable across quarters. The main pitfall is blending different services into one number or using the metrics to rank people.

प्रीव्यू

Software Delivery Performance Report: [Organisation or product area] [Quarter]

Quarterly report on software delivery performance for a set of applications or services: the five DORA software delivery metrics measured per service with explicit definitions and formulas, data quality, a capability assessment, perception data from the developer survey, findings and actions with owners and dates. Based on the DORA metrics guide published at dora.dev (page updated 2026-01-05, CC BY 4.0) and the DORA capability catalogue, with perception data framed by the SPACE (ACM Queue, 2021) and DevEx (ACM Queue, 2023) frameworks. Replace every [bracketed] value and every row marked Example. The worked example uses Corvid Commerce, a fictional SaaS company.

Document control

FieldValue
Document ID[DPR-2026-Q3]
Reporting unit[Organisation, product area or team group]
Reporting period[YYYY-MM-DD] to [YYYY-MM-DD]
Services in scope[Number] services, listed in 2.1
Data extracted onYYYY-MM-DD
Metrics definition version[MDEF-1.2] (section 2.2)
Version[0.1]
Status[Draft / In review / Published / Corrected]
Owner[@engineering-effectiveness-lead]
Approvers/reviewers[@vp-engineering], [@platform-lead], [@sre-lead], [@team-leads]
Last updatedYYYY-MM-DD
Classification[Internal]
Previous report[DPR-2026-Q2]
Related documents[Engineering strategy], [Developer experience survey results], [Tech debt register]

Approvals

RoleNameDecisionDate
VP Engineering[@name][Approve / Approve with changes / Reject]YYYY-MM-DD
Platform lead[@name][Decision]YYYY-MM-DD
SRE lead[@name][Decision]YYYY-MM-DD
Engineering effectiveness lead (author)[@name][Decision]YYYY-MM-DD

Revision history

VersionDateAuthorChange summary
0.1YYYY-MM-DD[@name]First draft from automated extract
1.0YYYY-MM-DD[@name]Example: Published after team review
1.1YYYY-MM-DD[@name]Example: Corrected payments-gateway rework count after incident relinking

Contents

1. Executive summary

Example (Corvid Commerce, Q3 2026, checkout product area):

  • Throughput improved on checkout-api. Deployment frequency rose from 12.0 to 14.0 deployments per week and median change lead time fell from 29 to 21 hours, after the merge queue and parallel test stages went live (action ACT-2026Q2-03).
  • Instability is concentrated in payments-gateway. It has the highest change fail rate (7.7%) and deployment rework rate (10.3%) of the three services, and a median failed deployment recovery time of 3.1 hours, because rollback is manual and depends on one engineer.
  • Review wait is now the largest share of lead time on checkout-api (9 of 21 hours), and developers rate "waiting for code review" as their top friction in the Q3 survey.
  • Decisions requested: fund automated rollback for payments-gateway in Q4 (ACT-2026Q3-01) and adopt a review service level for the checkout teams (ACT-2026Q3-02).

2. Scope and method

2.1 Services in scope

Measure each metric per application or service. A service here is a unit that is deployed independently and has a named owning team.

Service IDServiceOwning teamDeployment modelProduction definitionIn scope since
SVC-001 (Example)checkout-apiTeam KestrelContinuous deployment behind feature flagsAll three production regions2025-Q1
SVC-002 (Example)payments-gatewayTeam HeronScheduled release three times a week (Mon, Wed, Fri), release candidate cut 48 hours before each window, manual approvalPrimary region plus disaster recovery region2025-Q3
SVC-003 (Example)catalog-searchTeam WrenContinuous deployment, canary 5% then 100%Production cluster, all tenants2026-Q1
[SVC-NNN][Service][Team][Model][What counts as production][Quarter]

Excluded this quarter: [list services and reason, Example: internal admin tools with fewer than 5 deployments in the period, reported annually instead].

2.2 Metric definitions

The five metrics and their grouping follow the DORA metrics guide at dora.dev. Throughput metrics describe how quickly and how often changes move to production; instability metrics describe how often deployments go wrong and cause extra work. The local measurement rules in the last column are this organisation's choices and must be stated because DORA leaves them to each team.

IDMetricGroupDORA definition (paraphrased)FormulaLocal measurement rule
DM-01Change lead timeThroughputTime for a change to go from being committed to version control to running in productionFor each change: t(running in production) - t(commit); report the median and 85th percentile over all changes deployed in the periodExample: Start at the first commit of the merged pull request; end when the deployment containing the merge commit completes in the last production region
DM-02Deployment frequencyThroughputHow often application changes are deployed to productionproduction deployments in period / weeks in period; also report deploy days as a share of working daysExample: Count successful and failed deployments; exclude configuration-only pushes that do not change the application artefact
DM-03Failed deployment recovery timeThroughputTime to recover when a deployment fails and needs immediate interventionFor each failed deployment: t(service restored) - t(failed deployment completed); report the medianExample: Restored means the incident record shows impact ended, whether by rollback, roll forward or flag off
DM-04Change fail rateInstabilityShare of deployments that need immediate intervention afterwards, such as a rollback or hotfixfailed deployments / total deploymentsExample: A deployment is failed when it is linked to an incident of any severity in the Incident Severity Matrix or is rolled back within 24 hours
DM-05Deployment rework rateInstabilityShare of deployments that were not planned and were made because of an incident in productionunplanned deployments caused by a production incident / total deploymentsExample: A deployment is rework when its change record links an incident ID as the reason

Notes on the definitions:

  1. A deployment can be both a failure (it caused the incident) and the cause of a rework deployment (the hotfix that followed). The failed deployment counts in DM-04; the hotfix counts in DM-05. Do not count one event twice in the same metric. A rework deployment that itself fails counts as a failure in DM-04 as well.
  2. Use medians for time-based metrics. Means are distorted by a few very long changes. Report the 85th percentile next to the median to show the tail.
  3. Report counts next to rates. A change fail rate of 50% on 2 deployments is noise, not a trend.
  4. Older DORA material used other names, such as "time to restore service" and "mean time to recovery". If your history uses them, record the mapping in 2.4.

2.3 Data sources and pipeline

Source IDDataSystemOwnerExtraction
SRC-01 (Example)Commit and pull request timestampsGit hosting service[@platform-lead]Nightly API export
SRC-02 (Example)Deployment start, end, result, artefact version, regionCI/CD platform deployment events[@platform-lead]Webhook into the metrics store
SRC-03 (Example)Incident start, impact end, severity, linked deploymentIncident management tool[@sre-lead]Nightly API export
SRC-04 (Example)Change records with reason code (planned, incident)Change management in the CI/CD platform[@release-manager]Webhook
[SRC-NN][Data][System][@owner][Method]

2.4 Local adaptations and definition changes

Change IDDateChangeReasonMetrics affectedComparable with earlier quarters
MDEF-CHG-01 (Example)2026-01-15Added deployment rework rate as the fifth metricAligned with the updated DORA metrics guideDM-05No history before 2026-Q1
MDEF-CHG-02 (Example)2026-04-01Lead time end point moved from "first region" to "last region"Multi-region rollout made the first-region time misleadingDM-01No; Q1 and earlier restated where raw data allowed
[MDEF-CHG-NN]YYYY-MM-DD[Change][Reason][DM IDs][Yes / No / Restated]

3. Delivery metrics results

3.1 Results per service

Period: Example: 2026-07-01 to 2026-09-30, 13 weeks.

ServiceDeploymentsDeployment frequency (per week)Change lead time median (p85)Failed deploymentsChange fail rateFailed deployment recovery time medianRework deploymentsDeployment rework rate
checkout-api (Example)18214.021 h (52 h)94.9%48 min73.8%
payments-gateway (Example)393.0149 h (230 h)37.7%3.1 h410.3%
catalog-search (Example)967.430 h (66 h)22.1%25 min22.1%
[Service][N][N / weeks][h (h)][N][failed / deployments][time][N][rework / deployments]

Check the arithmetic before publishing. Example: checkout-api 182 / 13 = 14.0 per week; 9 / 182 = 4.9%; 7 / 182 = 3.8%. payments-gateway 39 / 13 = 3.0; 3 / 39 = 7.7%; 4 / 39 = 10.3%. catalog-search 96 / 13 = 7.4; 2 / 96 = 2.1% for both instability metrics.

3.2 Trend against the previous quarter

ServiceMetricPrevious quarterThis quarterDirectionComment
checkout-api (Example)Deployment frequency12.0 per week (156 deployments)14.0 per week (182)ImprovedMerge queue live since 2026-07-08
checkout-api (Example)Change lead time median29 h21 hImprovedReview wait unchanged; build and queue time fell
checkout-api (Example)Change fail rate7.1% (11 of 156)4.9% (9 of 182)ImprovedContract tests added to the pipeline
checkout-api (Example)Deployment rework rate5.8% (9 of 156)3.8% (7 of 182)ImprovedFollows the change fail rate
checkout-api (Example)Failed deployment recovery time median71 min48 minImprovedFlag-off runbook used in 6 of 9 failures
payments-gateway (Example)Change fail rate7.5% (3 of 40)7.7% (3 of 39)FlatBelow the size where a change is meaningful
[Service][Metric][Value (count)][Value (count)][Improved / Flat / Worse][Explanation]

Treat a movement as real only when the counts behind it are large enough and the cause is known. Example rule: do not call a rate change a trend when the service had fewer than 30 deployments in either quarter or when fewer than 5 events sit behind the rate.

3.3 Change lead time breakdown

Splitting lead time into stages shows where waiting happens. Use the median for each stage; stage medians do not always add up exactly to the overall median, so state any residual. In the example they add up because the rows were reconciled against the overall median.

Stagecheckout-api median (Example)payments-gateway median (Example)What drives it
First commit to pull request opened2.0 h4.0 hSize of the change, local working practice
Pull request opened to first review9.0 h31.0 hReviewer availability, size of change
Review to merge0.8 h6.0 hRework after review, approvals
Merge to deployment start8.2 h100.0 hRelease schedule, merge queue, change approval
Deployment duration (all regions)1.0 h8.0 hPipeline stages, canary bake time
Total21.0 h149.0 h

Example reading: payments-gateway spends 100 of 149 hours (67%) after merge: the release candidate is cut 48 hours before each window and changes that miss a cut wait for the next one. Of the 39 release windows in 13 weeks, 35 were used (4 fell in a change freeze); with the 4 unplanned rework deployments this gives the 39 deployments in 3.1. Batch size, not engineering speed, sets its lead time.

3.4 Interpretation

  • [Service]: [what the numbers say, the likely cause, the confidence].
  • Example: checkout-api throughput and stability improved together, which matches DORA's finding that speed and stability are not a trade-off for most teams.
  • Example: payments-gateway combines low throughput with high rework. Larger batches make each deployment riskier and recovery slower. See finding FND-01.

4. Data quality and confidence

Check IDCheckThreshold (Example)Result this quarterStatus
DQ-01Deployments with a resolvable artefact and commit list≥ 98%Example: 315 of 317 (99.4%)Pass
DQ-02Incidents of severity 1 to 3 with a deployment link or an explicit "not deployment-related" flag≥ 95%Example: 41 of 45 (91.1%)Fail
DQ-03Change records with a reason code100%Example: 317 of 317Pass
DQ-04Manual corrections to raw dataLogged with reasonExample: 3 corrections, all loggedPass
DQ-05Clock source consistent across systems (UTC)YesYesPass
[DQ-NN][Check][Threshold][Result][Pass / Fail]

The deployment total in DQ-01 is 182 + 39 + 96 = 317. Because DQ-02 failed, the change fail rates in 3.1 may be understated: up to 4 incidents may belong to a deployment. Confidence:

MetricConfidenceReason
Deployment frequencyHighDirectly from pipeline events
Change lead timeHighCommit and deployment data complete
Change fail rateMediumIncident linking below threshold (DQ-02)
Failed deployment recovery timeMediumDepends on incident impact-end timestamps entered by hand
Deployment rework rateMediumReason codes complete, but depend on correct incident links

5. Capability assessment

DORA publishes a catalogue of capabilities that its research links to better software delivery and organisational performance, at dora.dev/capabilities. Assess a short list each quarter, chosen for the current constraint, and rotate the rest. Use a four-step scale: 1 = not in place, 2 = partial, 3 = in place for most services, 4 = in place and measured. Base each score on evidence, not opinion.

Capability (dora.dev name)Service or scopeScore last quarterScore this quarterEvidenceGap and next step
Continuous integration (Example)All three services33Every merge triggers the full pipeline; median build 11 minFlaky tests at 2.3% of runs; see ACT-2026Q3-04
Deployment automation (Example)payments-gateway22Deploy is scripted; rollback is a manual 14-step runbookAutomate rollback (ACT-2026Q3-01)
Working in small batches (Example)payments-gateway11Median 23 merged pull requests per releaseMove to daily releases after rollback automation
Streamlining change approval (Example)payments-gateway22Every release needs a human approval regardless of riskRisk-based approval in the Versioning and Release Policy
Trunk-based development (Example)checkout-api, catalog-search34Branches live under one day for 92% of pull requestsHold
Monitoring and observability (Example)All33SLOs exist for all three servicesAdd deployment markers to dashboards
Code maintainability (Example)checkout-api2214 open high-interest items in the debt registerBudget per Tech Debt Register section 5
[Capability][Scope][1 to 4][1 to 4][Evidence][Next step]

Capabilities from the catalogue that are often relevant to delivery performance include: version control, continuous delivery, test automation, test data management, database change management, loosely coupled teams, empowering teams to choose tools, documentation quality, pervasive security, flexible infrastructure, visibility of work in the value stream, work in process limits, generative organisational culture, learning culture, job satisfaction and well-being. Check the current catalogue for the full list and definitions.

6. Perception data

Perception data comes from the Developer Experience Survey (dev/developer-experience-survey). The DevEx framework (Noda, Storey, Forsgren and Greiler, ACM Queue 2023) groups developer experience into feedback loops, cognitive load and flow state. The SPACE framework (Forsgren and others, ACM Queue 2021) argues that productivity needs several dimensions together: satisfaction and well-being, performance, activity, communication and collaboration, and efficiency and flow. Report only aggregated results that meet the survey's minimum group size.

Item IDSurvey item (short)Framework dimensionRespondents in scopeFavourable last quarterFavourable this quarterAgrees with system data?
DX-FL-02 (Example)Waiting for code review rarely slows down my workDevEx: feedback loops4641%39%Yes: review wait is 9 of 21 h (3.3)
DX-FL-01 (Example)CI results arrive fast enough that I stay in contextDevEx: feedback loops4652%71%Yes: build time fell after parallel stages
DX-CL-03 (Example)I can release my changes without depending on one specific person (Payments group)DevEx: cognitive load1225%25%Yes: single-person rollback dependency
DX-FS-01 (Example)I get enough uninterrupted time for focused workDevEx: flow state4648%50%No system equivalent
DX-SAT-01 (Example)I would recommend my team's tooling to a peer (checkout and payments groups)SPACE: satisfaction5855%62%Partly
[Item ID][Item][Dimension][n][%][%][Note]

"Favourable" is the share of respondents choosing the top two points on a five-point agreement scale. The respondents column gives the group size; with 12 respondents, one person changes the result by about 8 percentage points, so read small groups as signals, not measurements.

7. AI-assisted development

The DORA State of AI-assisted Software Development report (2025) found that AI acts as an amplifier: it magnifies the strengths and weaknesses of the existing system. The DORA capability catalogue tags seven capabilities as part of its AI Capabilities Model, listed on dora.dev at the time of writing as: clear and communicated AI stance, healthy data ecosystems, AI-accessible internal data, version control, working in small batches, user-centric focus, and platform engineering. Check the current list before use.

ItemValue this quarter (Example)Comment
Developers using an approved AI assistant weekly (survey)78% of 168 respondentsUp from 64%
Share of merged pull requests with AI-assisted changes (self-declared label)41% on checkout-apiLabelling is voluntary; treat as a lower bound
Change fail rate, AI-labelled vs other pull requestsNot reportedFewer than 5 failures in either group
AI capability with the largest gapWorking in small batches (payments-gateway)Same constraint as in section 5
Policy referenceAI Usage Policy (ai-data/ai-usage-policy)[Version]

8. Findings

Finding IDFindingEvidenceLikely causeImpactSeverity
FND-01 (Example)payments-gateway has the highest instability and slowest recovery3.1: CFR 7.7%, rework 10.3%, recovery 3.1 hLarge batches (23 PRs per release) and manual rollback known by one engineerCustomer-facing payment errors last longer; on-call load on Team HeronHigh
FND-02 (Example)Review wait dominates checkout-api lead time3.3: 9.0 of 21.0 h; DX-FL-02 at 39% favourableNo review rota; reviewers concentrated in two seniorsContext switching and batching of changesMedium
FND-03 (Example)Incident-to-deployment linking is incompleteDQ-02 at 91.1%Linking is manual in the incident toolInstability metrics may be understatedMedium
FND-04 (Example)Flaky tests waste CI capacity2.3% of pipeline runs fail and pass on retryShared test data across parallel stagesSlower feedback, lower trust in CILow
[FND-NN][Finding][Section and data][Cause][Impact][High / Medium / Low]

9. Actions

Action IDActionFindingOwnerDueExpected effectMeasure of success
ACT-2026Q3-01 (Example)Automate one-step rollback for payments-gateway and train two more engineersFND-01[@team-heron-lead]2026-11-30Lower recovery time, then smaller batchesRecovery time median below 1 h by Q1 2027
ACT-2026Q3-02 (Example)Introduce a review rota and a review service level of 4 working hours for the checkout teamsFND-02[@checkout-em]2026-10-31Lower review waitStage median below 4 h; DX-FL-02 above 55%
ACT-2026Q3-03 (Example)Make the deployment link a required field when closing a severity 1 to 3 incidentFND-03[@sre-lead]2026-10-31DQ-02 at 100%DQ-02 Pass in Q4
ACT-2026Q3-04 (Example)Isolate test data per parallel stage and quarantine known flaky testsFND-04[@platform-lead]2026-12-15Fewer retriesFlaky rate below 0.5% of runs
[ACT-YYYYQn-NN][Action][FND ID][@owner]YYYY-MM-DD[Effect][Measure]

10. Follow-up of previous actions

Action IDActionOwnerStatusOutcome
ACT-2026Q2-03 (Example)Merge queue and parallel test stages for checkout-api[@platform-lead]Done 2026-07-08Lead time median 29 h to 21 h; frequency 12.0 to 14.0 per week
ACT-2026Q2-04 (Example)Contract tests between checkout-api and payments-gateway[@team-kestrel-lead]Done 2026-08-02Checkout change fail rate 7.1% to 4.9%
ACT-2026Q2-05 (Example)Daily release for payments-gateway[@team-heron-lead]DeferredBlocked by manual rollback; replaced by ACT-2026Q3-01
[ACT-ID][Action][@owner][Done / In progress / Deferred / Dropped][Outcome and evidence]

11. Use and misuse of these metrics

The following rules apply to everyone who reads or uses this report:

  1. Metrics describe services and systems, not people. Do not use them in individual performance reviews, compensation or ranking.
  2. Do not compare teams that run very different services on one chart. Compare a service with its own history.
  3. Always read throughput and instability together. A target on one group alone invites gaming of the other.
  4. Teams own their numbers. Each team reviews its figures before publication and can add a context note.
  5. When a metric is turned into a target, record the target, the reason and the counter-metric that will detect gaming.
  6. Treat survey data as confidential aggregates under the rules in the Developer Experience Survey; never try to identify respondents.
  7. Publish corrections openly in the revision history.

Other measurement frameworks exist, such as SPACE, DevEx and the DX Core 4. Use them to choose complementary measures, not to replace the definitions in section 2.

12. Glossary and references

12.1 Glossary

TermMeaning in this report
DeploymentA change to the application artefact running in production, as recorded by the CI/CD platform
Failed deploymentA deployment that needs immediate intervention, such as a rollback, roll forward, hotfix or feature flag off
Rework deploymentAn unplanned deployment made because of a production incident
Change lead timeTime from commit to running in production for one change
p8585th percentile: 85% of values are at or below it
FavourableTop two points on a five-point agreement scale
CapabilityA practice or condition that DORA research associates with better delivery and organisational outcomes
Throughput / instabilityThe two groups of DORA software delivery metrics

12.2 References

ReferenceVersion or date checkedUse
DORA, Software delivery performance metrics guide, https://dora.dev/guides/dora-metrics/Page updated 2026-01-05; checked 2026-10-24Names, grouping and definitions of the five metrics (paraphrased)
DORA, Capabilities catalogue, https://dora.dev/capabilities/Checked 2026-10-24Capability names and AI Capabilities Model tags
DORA, State of AI-assisted Software Development 2025, https://dora.dev/research/2025/dora-report/2025 edition (published September 2025); no 2026 edition found on 2026-10-24AI as an amplifier finding
Forsgren, Storey, Maddila, Zimmermann, Houck, Butler, "The SPACE of Developer Productivity", ACM Queue 19(1)2021Concept of five productivity dimensions (cited, not reproduced)
Noda, Storey, Forsgren, Greiler, "DevEx: What Actually Drives Productivity", ACM Queue 21(2), DOI 10.1145/35958782023Concept of three developer experience dimensions (cited, not reproduced)
DX Core 4 (DX)2024Named only as another framework
[Internal metrics definition][MDEF version][Local rules]

Standard and licence note

Based on the DORA software delivery performance metrics guide and the DORA capabilities catalogue published at dora.dev by Google LLC under the Creative Commons Attribution 4.0 International licence (CC BY 4.0, https://creativecommons.org/licenses/by/4.0/); metric definitions are paraphrased and adapted, and changes are this template's own. The SPACE and DevEx frameworks are cited from their ACM Queue articles for their concepts only; no text from those articles is reproduced. DX Core 4 is named only. Google, DORA, ACM and DX are trademarks of their owners; this template is not affiliated with or endorsed by them. This template is original text written for this collection. Check the current official guide and reports at dora.dev before use, as definitions and capability lists are updated. Template licence: MIT.

संबंधित टेम्पलेट