Software Testing Metrics and KPIs: Complete Guide to QA Metrics

Testing your software is one challenge. Measuring quality and making the right decisions is another. Learn how to choose QA metrics that help you evaluate everything from the quality of new product releases to the health of your application, and everything in between
Written by Hannah Son
qa metrics dashboard

TL;DR: QA testing metrics measure software quality, test efficiency, and team productivity. This guide covers the metrics that actually matter: test coverage, defect detection rates, MTTD, MTTR, plus the formulas and frameworks you need to choose metrics that improve your testing outcomes and help you ship better software faster.

QA testing metrics separate effective testing programs from those flying blind. Most QA teams track too many metrics or the wrong ones entirely. You end up with dashboards full of numbers that don't tell you whether your testing strategy works, where your bottlenecks are, or if you're ready to ship.

The metrics that matter answer specific questions: Are teams testing the right things? How fast can they detect and fix problems? Are bugs being caught before customers find them? This guide covers the QA metrics that answer these questions, improve testing processes, and inform better release decisions.

What are QA metrics in software testing? (Definition and examples)

QA metrics are measurements that tell you how well your testing works. They track everything from test coverage and defect rates to how long testing takes and how much it costs. The measurements themselves come from your test management system, bug tracker, and CI/CD pipeline.

Good QA metrics answer real questions about your testing operations:

  • What has been tested and how thoroughly?
  • How long will this release take to test?
  • Will testing finish by the deadline?
  • How severe are the bugs being found?
  • Where are the bottlenecks slowing things down?
  • How much is testing costing?

You can measure almost anything in QA, and most teams end up tracking 20+ metrics and drowning in data. It’s a more efficient approach to pick 5-10 metrics that directly answer your most important questions.

Why QA metrics matter: How metrics improve software quality and release readiness

You can't improve what you don't measure. QA metrics tell you whether your testing strategy works and where it falls short. Without metrics, you're guessing about test coverage, bug severity, and whether you're ready to ship.

Teams that track the right metrics:

  • Spot patterns in where bugs cluster and focus testing there
  • Predict how long testing will take for similar releases
  • Catch quality problems early instead of finding them in production
  • Justify QA budget and headcount with concrete ROI data
  • Make release decisions based on data instead of gut feel

Teams that ship quality software measure what matters. Measuring everything doesn't help—you need metrics that inform decisions.

QA Metrics Pillar Page 02

Types of QA metrics and KPIs: Absolute, derived, leading, and lagging indicators

QA metrics fall into a few useful categories.

Absolute vs. derived QA metrics (and when to use each)

Absolute metrics are counts you measure directly: number of tests run, number of bugs found, hours spent testing. They're easy to track but lack context.

Derived metrics combine two or more measurements to give you that context. Test pass rate (passing tests divided by total tests) means more than just knowing you ran 500 tests. Defect density (bugs per 1,000 lines of code) tells you more than a raw bug count.

Most useful metrics are derived because they account for scale and provide comparison points.

Test effectiveness vs. QA team efficiency

Some metrics measure whether your tests catch bugs effectively. Others measure whether your team executes tests efficiently. Both matter, but they answer different questions.

  • Test effectiveness: Do tests accurately reflect product quality? Are the bugs that matter getting caught?
  • Team efficiency: Are tests executing on time? Are testing hours spent wisely?

Teams often focus too heavily on efficiency metrics (tests run per day, bugs logged per tester) and not enough on effectiveness metrics (what percentage of production bugs went undetected during testing).

Leading vs. lagging indicators

Leading indicators (test coverage, test execution status) inform decisions during testing. They show whether you're on track, but don't guarantee quality outcomes.

Lagging indicators (bugs found in production, customer complaints) tell you definitively whether you shipped quality software. You only get this data after release, when fixing problems costs more.

You need both. Leading indicators guide release decisions. Lagging indicators validate whether those decisions were correct and inform your next release cycle.

The gap between what leading indicators predicted and what lagging indicators showed reveals the most about your testing process.

QA Metrics Pillar Page 03

How to choose QA metrics: A framework for selecting the right testing KPIs

Start by identifying your biggest quality problems or questions: Metrics exist to answer questions and inform decisions, not to fill dashboards.

Three criteria determine whether a metric is worth tracking:

  • Can you act on it? If a metric goes up or down, do you know what to change? Metrics that don't inform action waste time.
  • Can you update it regularly? Metrics you calculate only quarterly don't help with sprint planning. Match metric frequency to decision frequency.
  • Does it align with your goals? If your goal is faster releases, track metrics that measure speed and quality together, not just speed.

Most teams should track 5-10 core metrics maximum. More than that, and you spend more time analyzing data than improving testing.

Narrow it down:

Match metrics to your testing approach

Manual testing teams need different metrics than automation-heavy teams. Manual testing reveals different patterns: usability issues, edge cases, workflow problems. Automation excels at catching regressions and consistency problems. If you run mostly manual tests, focus on defect discovery rates and test execution time. If you're heavily automated, track test stability, execution time, and pass rate trends.

Match metrics to your development methodology

Waterfall teams need a stronger emphasis on regression and coverage metrics because all testing happens before release. Agile teams benefit more from sprint-level metrics like unresolved defects and production escapes, because you're shipping continuously.

Balance activity and outcome metrics

Tests executed and bugs logged show the team is working. Defect escape rate and customer-reported issues show whether the work matters. Don't confuse activity with results.

Avoid metric overload

Twenty metrics means you'll track everything and improve nothing. Pick the 5-10 that answer your most critical questions—you can always add more later if needed.

Tailor metrics to the organizational level

Project managers track day-to-day execution, like test progress, defect counts, and sprint velocity. Department managers track broader patterns, like MTTD, MTTR, and quality trends across projects. Executives track business impact, like defect escape rates, testing ROI, and quality cost.

QA Metrics Pillar Page 04

Essential QA metrics and KPIs to track for better testing outcomes

These metrics consistently provide value across different teams and methodologies. Not every metric will matter for your situation; most teams pick their core 5-10 from this list.

Test coverage metrics (execution, functional, and risk coverage)

Test coverage

Test coverage tells you how much of your application you're actually testing. Without coverage metrics, you don't know if you have gaps.

Test case management systems visualize coverage and show you where gaps exist. The goal is mapping every requirement to at least one test.

Test execution progress

Test execution progress tracks executed tests versus pending tests. It answers "are we on schedule?" during test execution.

Test Execution Coverage = (Executed test cases / Planned test cases) × 100

Functional coverage

Functional coverage measures whether your tests cover all product functions. You execute 100% of your test plan, but still have functional gaps if your test plan doesn't cover everything.

Calculate this by dividing the functions tested by the total functions in the application. The distinction matters because teams often confuse test execution progress with actual coverage. You might run every planned test and still miss entire feature areas, integration points, or user workflows.

Risk coverage

Risk coverage weights tests by risk level. Not all tests matter equally. Tests covering payment processing, data security, or regulatory compliance deserve more attention than cosmetic UI tests.

For a medical device application pulling data from third-party APIs, risk coverage ensures you test what happens when that API fails. Does your app crash, show an error message, use cached data, or switch to a backup source? Risk coverage makes sure critical scenarios have tests.

To assess risk coverage, you should track:

  • Coverage of highest-priority risks
  • Whether high-risk areas meet your quality bar
  • Percentage of untested risk scenarios

Defects per requirement 

Defects per requirement reveal which features are in trouble. One requirement generating 15 bugs while other requirements average 2-3 bugs signals problems: unclear requirements, technical complexity, or insufficient design work. You identify features that need more attention before release.

Regression testing metrics: measuring change impact and test effectiveness

Every code change risks breaking existing functionality. Regression metrics quantify that risk.

Defect injection rate

Defect injection rate measures bugs introduced per code change. Calculate it by dividing the tested changes by attributable defects.

If you make 10 changes and find 30 bugs from those changes, your defect injection rate is 3 bugs per change. High injection rates mean code reviews need strengthening, developers need better local testing, or architectural decisions are making changes error-prone.

Effect of testing changes

The effect of testing changes tracks defects attributable to code changes versus other sources. This requires categorizing bugs by root cause, which takes effort but provides valuable insight into where quality problems originate.

Teams that track this differentiate between "our new feature has bugs," and "our bug fix broke something else," and "this was always broken, but nobody noticed." Each pattern points to different root causes. New feature bugs mean insufficient design or unclear requirements. Regression bugs indicate inadequate test coverage or brittle architecture. Latent defects that surface late often mean gaps in exploratory testing or edge case coverage.

Test team metrics

These metrics track team workload and productivity. They inform resource planning and identify team members who need support.

Defects reported and rejected

Defects reported and rejected measures both volume and quality. A tester who logs 50 bugs but gets 30 rejected (duplicates, not reproducible, working as intended) needs clearer acceptance criteria, better testing environments, or more thorough investigation before logging bugs.

Compare this across team members to spot patterns. High-volume, low-quality bug reporting wastes developer time. Low volume might mean undertesting or missing problems.

Test cases allocated/executed per team member

Test cases allocated per team member and test cases executed per team member track workload distribution. Use these to ensure balanced assignments and identify bottlenecks. If one tester is consistently behind, they might be blocked, overloaded, or need additional support.

Test effort metrics

These metrics answer "How long will testing take?" and "Are we getting faster or slower?"

Tests completed per time period

Tests completed per time period = Tests run / Time spent. This establishes baselines for estimation. If your team averages 50 tests per day, 500 tests will take 10 days.

Test design efficiency

Test design efficiency = Tests designed / Time spent designing. Track this separately from execution because design and execution have different bottlenecks. Declining design efficiency often indicates increasingly complex features or poorly specified requirements.

Bug find rate

Bug find rate = Total defects / Total tests. This shows you defect density. If the rate stays high after multiple test cycles, you're still finding new problems. If it drops close to zero, you're approaching diminishing returns.

Average time to test a bug fix

Average time to test a bug fix = Total retest time / Total bug fixes. Teams with high retest times often lack good reproduction steps, have poor developer-tester communication, or are testing in unstable environments.

Defect distribution metrics

Tracking how defects cluster shows you where quality problems concentrate.

Graph defects by severity, component, test type, or root cause. Patterns emerge. If 60% of bugs come from one module, that module needs architectural review or additional testing. If most critical bugs are found in manual testing but most minor bugs come from automation, you're allocating resources correctly.

Defect distribution evolves. Early in a project, you find more architectural and integration bugs. Late in a project, you find edge cases and usability issues. Track distribution over time to verify you're progressing through expected patterns.

Defect detection metrics (MTTD, MTTR, and recovery performance)

How fast you find and fix bugs determines how much they cost.

Mean time to detect defects (MTTD)

Mean time to detect defects (MTTD) = Time spent finding bugs / Bugs found

The faster you detect problems, the cheaper they are to fix. IBM research found that bugs found during design cost 6x less than bugs found during development, and 100x less than bugs found in production.

Teams with high MTTD often lack sufficient test coverage, run tests infrequently, or have poor visibility into test results.

Mean time to resolution (MTTR)

Mean time to resolution (MTTR) = Time spent fixing bugs / Bugs fixed

MTTR measures how fast your team resolves bugs. High MTTR points to specific bottlenecks: inadequate debugging tools, unclear bug reports that force back-and-forth with QA, complex codebases where fixes ripple across modules, or missing documentation that slows down knowledge transfer. Teams that reduce MTTR typically invest in better logging and monitoring, clearer defect reporting standards with reproducible steps, and developer-friendly staging environments that match production.

Fast MTTD and MTTR together mean you catch problems quickly and fix them quickly. That keeps development momentum high and reduces bug backlog.

Testing ROI metrics: cost per bug fix, cost of not testing, and test ROI

These metrics justify testing investment and expose hidden costs.

Cost per bug fix

Cost per bug fix = Hours spent fixing bug × Developer hourly rate

A developer spending 20 hours fixing a bug at $50/hour costs $1,000 (plus retest time). The same bug caught earlier might cost $100.

Track this across the development lifecycle to quantify the cost difference. Bugs found in design reviews cost minimal developer time because no code exists yet. Bugs caught in unit testing might cost 1-2 hours. Bugs found during integration testing cost 5-10 hours due to debugging complexity. Production bugs cost 50+ hours when you factor in emergency triage, hotfix development, deployment coordination, customer communication, and reputation damage. These multipliers make the business case for shift-left testing and stronger quality gates.

Cost of not testing

The cost of not testing includes rework costs, lost customers, support burden, and reputation damage. When teams skip testing to meet deadlines, they discover the cost of not testing exceeds the cost of testing by orders of magnitude. A rushed release might save two weeks of testing time but create months of emergency fixes, support tickets, and customer apologies.

Schedule variance

Schedule variance = Planned schedule - Actual schedule

Consistently finishing early suggests overestimation, improved efficiency, or inadequate test coverage. Consistently finishing late signals underestimation, scope creep, or resource constraints that need addressing.

Either pattern needs investigation. Schedule variance data improves future estimation.

The number of test cases allocated to each team member

As the name implies, this metric measures the number of test cases allocated to each test team member. This is yet another metric that helps QA leads allocate work and make sure that each team member has the appropriate amount of work for their abilities.

The number of test cases executed by each team member

Test cases executed measures how much work (the number of tests) each member of your team completes. Similar to the metric above, this can help team leads track how much work each team member completes.

Test effort

Test effort metrics assist in determining how many tests a product needs, how long it will take to accomplish all your testing, and how long it will take to fix bugs in your product. These metrics are especially important because they help to better understand any variations in testing and help establish baselines for any similar future test planning projects. Test efforts are evaluated with various metrics:

Number of tests in a given time frame

This metric aims to tell you the number of tests completed in a given time frame. This helps developers plan for future testing times. The number of tests per period can be determined by dividing the number of completed tests by the total testing time.

Formula: Number of tests in a certain time period = Number of tests run/Total time

Test design efficiency

This metric aims to assess the design efficiency of the executed test. Test design efficiency measures how long it takes a team to completely design a test for a particular requirement. To find the average time, divide the total number of tests your team designs by the total time taken to design them.

Formula: Test Design Efficiency = Number of tests designed / Total time

Number of bugs per test

The number of bugs per test, sometimes referred to as the bug find rate, measures the number of bugs (or defects) found during every stage of testing. To find this metric, you can divide the total number of defects by the total number of tests.

Formula: Number of bugs per test = Total number of defects / Total number of tests

Average time to test a bug fix

This QA metric helps to understand how much time was spent testing a bug fix. You can find this average by dividing the total number of bug fixes your team tests by the total time spent testing bug fixes. Other metrics in the test effort group include defects per test hour, number of tests run, and average time to test a bug fix.

Formula: Average Time to Test a Bug Fix = Total time between bug fix & retest for all bugs / Total number of bugs

Defect distribution

The defect distribution metric helps you understand the types of flaws in your product, how they correspond to testing, which parts of your software (or process) are susceptible to defects, and ultimately where to focus your testing effort. 

Teams tracking this QA metric can create graphs that track how the distribution of defects changes over time and map flaws based on variables like cause, type, or severity. By analyzing and comparing these numbers, teams can better monitor their progress and increase the quality of their releases. Defect distribution metrics include the number, percentage, or severity of defects distributed by categories like severity, priority, test type, and so on.

Defect detection and recovery

The defect detection and recovery metric tracks how long it takes to locate and remove bugs in your product. It is important for testers to be able to plan future testing schedules and be more efficient with their time and processes. Mean time to detect defects (MTTD) and Mean time to resolution (MTTR) are the two main metrics in this category:

Mean time to detect defects

Mean time to detect defects or MTTD refers to the mean time it takes your organization to detect issues in a product. The sooner a defect is detected, the sooner you can fix it. We all know that it is much easier (and cheaper) to fix an issue earlier on, by measuring how much time it takes to uncover issues, you are taking the first step towards improving said time.

 You can find the MTTD by dividing the time spent locating defects by the total number of defects your team locates.

Formula: MTTD = Amount of time spent locating defects / Total number of defects located

Mean time to resolution

Mean time to resolution or MTTR refers to the mean time it takes an organization to fix bugs that affect users. Tracking this metric is important because maintaining a low MTTR is crucial to making sure that all systems are functioning properly. Simply put, when things are not working, users get upset and you make less money. 

Formula: MTTR = Amount of time spent fixing a defect / Total number of defects located

Testing ROI Metrics

Testing ROI Metrics help calculate the total cost of testing, the total cost of individual testing components, and the ROI of your organization’s testing processes. It is important to compare the expected cost of testing to the actual expenses used for testing. These metrics can aid developers and QA leads when budgeting for future testing expenses and assessing the efficiency of their testing processes. They can also help to track how much labor and time are used.

Cost per bug fix

Cost per bug fix is a test economic metric that informs you of how much it costs your company to fix a defect. The cost per bug fix is calculated by the amount spent on a defect per developer. 

Formula: Cost per bug fix = Hours spent on a bug fix x developer’s hourly rate

Example: If a developer spent 20 hours on fixing a bug and their hourly rate is $50, then the cost of bug fix is 20 * 50 dollars = 1,000 dollars. (Note: teams can also account for the cost of retesting for a more accurate measurement.)

Cost of not testing

This metric helps you to understand the expenses associated with not testing your product. If a new set of features was released but needed to be reworked, the cost of reworking them is the “cost of not testing.” This not only includes costs associated with having to redo a product but also includes subjective factors like declining customer loyalty, loss of profit, more customer service requests, and product failures.

Schedule variance

Schedule variance is the difference between the planned testing time and the actual testing time.

Formula:

Schedule variance (if testing finishes earlier than planned) = Planned schedule – Actual schedule

Schedule variance (if testing finishes later than planned) = Actual schedule – Planned schedule

QA Metrics Pillar Page 01

Glossary of QA metric formulas

Quick reference for calculating common QA metrics:

  • Test Coverage = (Requirements with tests / Total requirements) × 100
  • Test Execution Coverage = (Executed tests / Planned tests) × 100
  • Defect Injection Rate = Tested changes / Attributable problems
  • Defect Density = Defect count / Release size
  • Defect Leakage = (UAT defects / Pre-UAT defects) × 100
  • Test Case Effectiveness = (Defects detected / Test cases run) × 100
  • Test Design Efficiency = Tests designed / Design time
  • Bug Find Rate = Total defects / Total tests
  • Average Time to Test Bug Fix = Total retest time / Total bugs
  • MTTD = Time locating defects / Defects located
  • MTTR = Time fixing defects / Defects fixed
  • Cost per Bug Fix = Hours × Developer hourly rate
  • Test Case Productivity = Test cases / Preparation time
  • Defect Removal Efficiency = Resolved defects / Total defects at measurement time

How to track QA metrics and improve software quality (tools and implementation)

Tracking metrics manually in spreadsheets doesn't scale. You need tools that collect, calculate, and visualize metrics automatically.

TestRail tracks QA metrics across your entire testing process. Reports provide visibility into project status, milestones, and test execution—and everything archives automatically so you can track trends and compare releases.

Are you ready to start tracking smarter? Effective QA metrics programs:

  • Start small. Pick 3-5 metrics that answer your most pressing questions. Add more only after those metrics are working and informing decisions.
  • Review regularly. Match review frequency to decision frequency. Agile teams review metrics at sprint retrospectives. Longer release cycles might be reviewed monthly.
  • Act on data. Metrics without action waste time. When metrics show problems, investigate root causes and implement changes. Track whether those changes improve the metric.
  • Share broadly. Don't let metrics live in QA alone. Developers need to see defect patterns. Product managers need coverage data. Executives need ROI metrics. Transparency builds quality culture.
  • Avoid vanity metrics. Track metrics that inform decisions, not metrics that make you look good. "Tests executed" makes you look busy. "Defect escape rate" tells you if testing works.

Using TestRail to measure QA metrics and optimize test coverage

TestRail tracks the metrics that matter:

  • Customize dashboards for instant visibility into progress, coverage, and quality
  • Get advanced traceability linking requirements, test cases, and defects
  • Deploy intuitive workflows with fast navigation and bulk actions
  • Generate comprehensive reports on test coverage, execution, and defects
  • Integrate with Jira, GitHub, Azure DevOps, Jenkins, Selenium, and more

Over 10,000 QA teams use TestRail to ship higher-quality software faster. Start your free 30-day trial today!.

QA testing metrics FAQs

What's the difference between QA metrics and KPIs?

QA metrics are any measurements related to your testing process, and KPIs are the specific metrics your organization tracks because they're critical to your business goals. All KPIs are metrics, but not all metrics are KPIs. Choose your KPIs based on what decisions they drive.

How many QA metrics should I track?

Most teams succeed with 5-10 core metrics. Fewer than 5 and you're missing important signals. More than 10 and you'll spend too much time analyzing data instead of improving testing. Start small and add metrics only when they answer questions your current metrics don't.

Should I track the same metrics for manual and automated testing?

Not necessarily. Manual and automated testing catch different types of problems. Manual testing focuses more on execution time and defect severity, while automated testing prioritizes test stability, execution time, and pass rate trends. Some metrics, like defect detection rate, apply to both.

How often should I review QA metrics?

Match your review frequency to your development cycle. Agile teams typically review metrics after each sprint. Teams with longer release cycles might review monthly or quarterly. Use real-time dashboards for continuous visibility, then do deeper analysis at regular intervals.

What's the most important QA metric to track?

The answer changes based on your biggest quality problem. For most teams, defect leakage (bugs found in production) matters most because it directly measures whether testing works. But if your biggest problem is slow releases, focus on test execution time. Pick metrics that answer your most important questions.

In this article:

Intro ss9

Why QA metrics matter:

Quality assurance metrics are important for more than one reason. First and foremost, they are decision points that lead you to take action. How effective those actions are in improving your quality level depends on the metrics you choose.

QA metrics also help you judge your productivity and efficiency over time. How many test cases are added to new release? How many tests pass in the first run, how many require a retest, and how many lead to new bug reports?

TestRail helps you keep track of those QA metrics and much more. Reports on various levels give you insights about project status, milestones, or even individual test runs. All test results and project activity is archived so that you can learn from the past, discover trends, and be better prepared with each new release cycle.

Join over 10,000 QA teams using TestRail to release flawless products, faster

TestRail is used by leading organizations everywhere to track their quality assurance metrics.

Beyond the product

The QA Lead's Guide to Agile Testing

Free Ebook: The QA Lead's Guide to Agile Testing

Many QA teams are already utilizing Agile or an Agile-like scrum methodology, yet still struggle to find the balance between the fast-paced Agile development cycle and delivering quality software their customers can count on.

This guide provides actionable and impactful agile testing takeaways that you can introduce now, as well as a "Crawl/Walk/Run" framework to help your team get onboarded and start seeing results.
Fourth Edition Software Testing and Quality Report

The State of QA in 2025: The 4th Edition Software Testing and Quality Report

We surveyed thousands of QA professionals to uncover what’s changing in testing—and where things are headed next. Download our most in-depth analysis on the state of QA yet to explore:

  • Where teams are succeeding and struggling with test automation
  • How teams are balancing speed and quality
  • The impact of AI adoption on QA processes
  • And much more
The Total Economic Impact of TestRail

Forrester TEI Study: 204% ROI with TestRail

Read the TestRail Total Economic Impact™ (TEI) study to learn how real customers accelerate software testing while driving significant cost savings, including:

  • 204% ROI over three years
  • $3.34M in benefits over three years
  • 14-month payback period

Download the full report for more on how TestRail can help your team see results.

Build quality processes and release with confidence