Engineering Team Productivity: Why the Metrics You Are Tracking Are Telling You the Wrong Story
•Mrunalini Wankhede•October 3, 2026
The most commonly tracked engineering productivity metrics, lines of code, story points, commit frequency, and ticket close rates, measure activity rather than output. They tell you what developers did, not whether what they did was good or whether it will ship on time. The metrics that actually predict engineering delivery health, PR cycle time, review turnaround, revision cycle count, and recurring issue patterns, are available in real time from the pull request layer and require no manual data collection. Most engineering teams are not tracking them because the tools they use do not surface them automatically.
When a board asks an engineering VP how productive the engineering team is, the honest answer in most organizations is: we do not actually know. We have proxy metrics that measure things adjacent to productivity but none that measure it directly. We have story points completed and tickets closed and commits merged, all of which can be high while delivery is slow, quality is declining, and the team is burning out.
This is not a measurement problem unique to software engineering. It is a problem of measuring the wrong things because they are easy to count, not because they are meaningful.
Why the Commonly Tracked Metrics Mislead
Every metric commonly used to measure engineering productivity has a well-documented failure mode. Understanding these failure modes is not an argument against measurement. It is an argument for measuring the right things.
Lines of code conflates volume with value. A developer who writes 500 lines of elegant, well-tested code that solves the problem cleanly produces more value than one who writes 2,000 lines of tangled code that technically passes the tests. Lines of code also perversely incentivizes verbosity over clarity and features over bug fixes, since fixing a critical bug might reduce line count while adding measurable business value.
Story points measure estimated complexity rather than actual output. They are useful for sprint planning and are actively harmful as a productivity metric because teams learn to inflate estimates to make velocity numbers look consistent. A team that completes 40 points in a sprint where every ticket was harder than estimated is more productive than a team that completes 60 points in a sprint where estimates were padded to ensure completion. Story point velocity cannot tell you which team you have.
Commit frequency measures how often developers push code, not whether what they pushed is good or whether it will ship. A developer who commits ten times a day on a feature that gets reverted in production contributed nothing measurable despite high commit frequency. A developer who commits twice a week on a complex architectural change that ships cleanly and stays stable for months contributed significant value.
Ticket close rate has the same problem as story points. It measures whether tickets moved to done, not whether the work that closed them was correct, complete, or delivered on time in the sense that matters, which is merged, tested, and in production.
The McKinsey developer productivity research published in 2023 attempted to create a comprehensive developer productivity framework and received significant pushback from the engineering community for exactly this reason: the metrics it proposed measured activity that could be gamed rather than outcomes that reflected real productivity. The debate that followed was valuable because it forced a clearer articulation of what engineering productivity actually means.
What Engineering Productivity Actually Means
Productivity in software engineering has two dimensions that need to be measured separately and together.
The first is output quality: is the code being produced correct, complete relative to the requirements, consistent with the team's standards, and likely to stay stable in production. This is a quality dimension that most productivity metrics ignore entirely.
The second is delivery velocity: how quickly does work move from started to shipped, how predictably does it move, and where does time get consumed in the process. This is a speed and predictability dimension that most productivity metrics address only partially, through ticket velocity numbers that capture whether work was completed but not where time was lost in the process.
The metrics that reflect both dimensions simultaneously are not found in Jira or in commit logs. They are found in the pull request layer, where code transitions from development to the shared codebase and where the quality and velocity signals both exist in the same artifact.
What Is an Engineering Intelligence Platform and Why the Category Is Replacing Standalone Dev Tools covers why the pull request is the right layer for engineering intelligence and why platforms built around it produce more accurate productivity signals than those built around ticket management or commit tracking.
The Metrics That Actually Predict Delivery Health
These four metrics, all derivable from PR data automatically, predict engineering delivery health more accurately than any combination of the commonly tracked alternatives.
PR cycle time measures how long a pull request takes from open to merge. It is the most direct available measure of how efficiently the team moves completed work through the review process and into the main branch. A team with consistently low PR cycle time ships faster, catches bugs earlier, and has more predictable release timelines than a team with the same story point velocity but high PR cycle time.
PR cycle time also reveals where delivery is actually slowing down in a way that ticket velocity cannot. A ticket in "In Review" status for three days looks the same as a ticket in "In Review" status for three hours on a sprint board. PR cycle time data shows the difference and points to the cause.
Review turnaround time measures how long a PR sits before the first review comment arrives. This isolates the reviewer availability problem from the review quality problem. If review turnaround time is consistently high, the issue is review load distribution: too few reviewers carrying too much review responsibility. If review turnaround time is low but PR cycle time is high, the issue is in revision cycles, which points to feedback quality or standards clarity rather than reviewer availability.
Revision cycle count measures how many times a PR goes back and forth between developer and reviewer before merging. This is the metric that most directly reflects review quality and standards consistency. A team with high revision cycle counts is either receiving unclear feedback, operating without consistent standards, or submitting PRs that are not sufficiently complete when they are first opened. All three are fixable problems once the metric makes them visible.
What Is PR Cycle Time and Why It Is the Most Important Metric Engineering Managers Are Not Tracking covers these metrics in depth including how to calculate them from GitHub data and how to use them to diagnose where delivery is breaking down.
Recurring issue patterns measure which categories of review comment appear most frequently across the team over time. This metric requires a review layer that categorizes findings rather than just counting them, which is where automated code review tools become necessary. A team where 35 percent of review comments over the last quarter were for the same three issue categories has a standards problem that a Rule Builder check would solve. A team where the recurring issue categories are diverse and changing is a team where the standards layer is working and review is catching genuine complexity rather than the same preventable issues repeatedly.
Noise vs Thoroughness: What Good PR Review Actually Looks Like covers how to distinguish between review activity that reflects genuine complexity and review activity that reflects a fixable process gap, which is the frame for interpreting recurring issue pattern data.
DORA Metrics: The Right Framework, Partially Applied
The DORA metrics framework, developed through Google's DevOps Research and Assessment program, identified four metrics that correlate most strongly with software delivery performance: Deployment Frequency, Lead Time for Changes, Change Failure Rate, and Time to Restore Service.
This is a significantly better framework than lines of code or story points because it measures outcomes rather than activity. Deployment Frequency measures how often the team ships. Lead Time for Changes measures how long it takes from code commit to production. Change Failure Rate measures how often changes cause incidents. Time to Restore measures how quickly the team recovers when they do.
The limitation of DORA metrics for day-to-day engineering management is that they are lagging indicators. Lead Time for Changes tells you what happened last week or last quarter. It does not tell you where in the delivery process the time went or what you can change today to improve it next sprint.
PR cycle time, review turnaround, and revision cycle count are the leading indicators that predict DORA metric outcomes before they are finalized. A team with a PR cycle time of 3 days is going to have a longer Lead Time for Changes than a team with a PR cycle time of 18 hours, and you can know that now rather than at the end of the quarter when the DORA metric is calculated.
The right measurement framework combines both: DORA metrics for quarterly performance assessment and PR-layer metrics for weekly operational visibility. The Business Case for Faster Code Reviews: What Engineering Teams Actually Gain covers the connection between PR cycle time improvements and DORA metric outcomes in the context of the full business case for faster review.
Why These Metrics Are Not Being Tracked
The PR-layer metrics described above are not being tracked in most engineering teams not because they are hard to calculate but because the tools teams use to manage work do not surface them automatically.
Jira tracks ticket status. It does not track how long PRs are sitting in review queues or how many revision cycles are happening before merge. GitHub contains all the raw data but does not surface it in a management-friendly format. Custom dashboards and manual tracking scripts fill the gap for teams with the engineering capacity to build and maintain them, but most teams do not have that capacity on top of their delivery commitments.
This is the visibility problem that an engineering intelligence platform solves. When the PR layer is instrumented and the data is surfaced automatically in a role-appropriate dashboard, engineering managers can see PR cycle time by squad, review turnaround by module, revision cycle trends, and recurring issue patterns without running a single query or holding a status meeting.
Lyxor's manager dashboard surfaces all four of these metrics automatically from the PR data without requiring developers to update anything manually. The data is current because it comes from the actual PR events rather than from developer-reported status. It is actionable because it points to specific squads, modules, or issue categories rather than aggregate numbers that describe a problem without locating it.
Scenario: A VP of Engineering at a 35-person software company has been tracking story points and commit frequency as her primary productivity metrics for two years. Both numbers look healthy. Deployment frequency is reasonable. But her product team keeps flagging that feature delivery timelines are unpredictable and the engineering team seems to be working hard without output matching the effort. She starts tracking PR cycle time and revision cycle count for the first time. What she finds: average PR cycle time is 2.9 days, with PRs touching the core API averaging 4.2 days. Revision cycle count for the API module is 3.1 per PR compared to 1.4 for the rest of the codebase. She looks at the recurring issue patterns in the API module and finds that 45 percent of review comments over the last quarter were for the same four issues. She adds four Rule Builder checks covering those issues. Within two sprints, API module cycle time drops to 1.8 days, revision cycle count drops to 1.6, and the product team's first feedback is that the engineering team seems significantly faster without any additional headcount or working hours added.
What a Better Measurement Framework Looks Like
Engineering productivity measurement that actually reflects delivery health combines four layers.
Leading indicators from the PR layer: PR cycle time, review turnaround time, revision cycle count, recurring issue patterns. These tell you what is happening now and predict what will happen to delivery timelines if they do not change.
Quality indicators from the review layer: False positive rate from the automated review tool, issue categories being caught at review versus escaping to QA or production, standards compliance rate across the team. These tell you whether the code being shipped is good, not just whether it is being shipped.
Delivery indicators from the sprint layer: Sprint completion rate, carryover rate, feature lead time from ticket creation to production. These are the lagging indicators that confirm whether the leading indicators are predicting correctly.
Team health indicators from the process layer: Senior developer review hours per week, junior developer revision cycle improvement over time, onboarding time to first independent PR. These tell you whether the process is sustainable and whether it is developing the team's capability over time.
Together these four layers give an engineering manager a complete picture of productivity that no single metric or single tool can provide. The PR-layer metrics are the ones most engineering teams are missing and the ones with the most immediate impact on the delivery outcomes that matter to the business.
How to Evaluate an AI Code Review Tool: The Questions Every Engineering Manager Should Ask First covers how to assess whether a tool surfaces these metrics in a way that is actually useful for engineering managers rather than just technically available. And PR Volume, Repo Context, and Why Benchmark Data Matters When Choosing a Code Review Tool covers how to evaluate whether the review quality underlying these metrics is actually reliable or just impressively presented.
See how Lyxor surfaces engineering productivity metrics automatically at lyxor.ai/features
FAQ
What are the best metrics for measuring engineering team productivity?
The most useful metrics combine leading indicators from the PR layer with delivery outcomes. PR cycle time, review turnaround time, revision cycle count, and recurring issue patterns from the PR layer predict delivery health in real time. Sprint completion rate, feature lead time, and Change Failure Rate from the DORA framework confirm delivery outcomes. The commonly tracked alternatives, lines of code, story points, and commit frequency, measure activity rather than output and have well-documented failure modes that make them misleading as primary productivity measures.
Why are story points a poor productivity metric?
Story points measure estimated complexity at the time of planning, not actual output or delivery quality. They are useful for sprint capacity planning but mislead as productivity indicators because teams learn to calibrate estimates toward consistent velocity rather than accurate complexity. A team that consistently completes its story point target by inflating estimates looks as productive as a team that consistently delivers at a genuinely accurate estimate. The metric cannot distinguish between them.
What is the relationship between PR cycle time and engineering productivity?
PR cycle time is one of the most direct available measures of delivery velocity. It measures how long completed work spends in the review process before it merges. A team with consistently low PR cycle time ships features faster, catches bugs earlier in the cycle where fixing them is cheaper, and has more predictable release timelines than a team with the same development output but high PR cycle time. Reducing PR cycle time is one of the highest-leverage interventions available to an engineering manager who wants to improve delivery velocity without adding headcount.
How do DORA metrics relate to day-to-day engineering management?
DORA metrics, Deployment Frequency, Lead Time for Changes, Change Failure Rate, and Time to Restore, are valuable for quarterly performance assessment because they correlate strongly with software delivery performance across a wide range of engineering organizations. Their limitation for day-to-day management is that they are lagging indicators calculated after the fact. PR-layer metrics like cycle time and revision cycle count are the leading indicators that predict DORA outcomes before they are finalized, making them more actionable for engineering managers who need to course-correct within a sprint rather than at the end of a quarter.
Why do most engineering teams track the wrong productivity metrics?
Because the tools most commonly used to manage engineering work surface the metrics that are easy to collect, not the ones that are most meaningful. Jira surfaces ticket velocity. GitHub shows commit frequency. These are the numbers available without additional instrumentation, so they become the default. The PR-layer metrics that actually predict delivery health require either custom tooling, manual calculation, or a platform built specifically to surface them from the PR data automatically.