Join our Newsletter — 33% off our NHI Course

What is the difference between true positive rate and false discovery rate in SAST testing?

True positive rate measures how many expected vulnerabilities the tool actually finds. False discovery rate measures how many reported issues are wrong. Together, they show whether a scanner is accurate and usable. A strong SAST product should detect real flaws consistently while keeping noise low enough that security and development teams can trust the output.

What true positive rate tells you in SAST

true positive rate is about detection sensitivity. In SAST, it measures how often the tool successfully flags flaws that are genuinely present in the codebase. A higher true positive rate means the scanner is better at finding real issues, especially if those issues span patterns the team expects it to catch consistently.

For practitioners, this metric is most useful when you want to know whether the tool is missing important defects, not whether every alert is worth actioning. A scanner can produce a high true positive rate and still be noisy if it also generates many incorrect findings. That is why this metric should be read alongside precision-oriented measures.

What false discovery rate tells you about alert quality

false discovery rate measures the share of reported findings that are wrong. In SAST, that is the practical noise burden: how many alerts do not correspond to real vulnerabilities. A lower false discovery rate means developers and security reviewers spend less time triaging false alarms and are more likely to trust the results.

It is the better metric when the question is, “How much of this output can I believe?” If a tool reports 100 findings and 40 are false, the false discovery rate is 40 percent, even if it also caught many real problems. In other words, this metric reflects usability and triage cost, not just detection capability.

For teams comparing scanners, OWASP Web Security Testing Guide is a useful external reference for thinking about how test findings are validated and how structured security testing separates signal from noise.

How to use both metrics together when choosing or tuning SAST

The two metrics answer different questions, and neither is sufficient on its own. True positive rate tells you how complete the detection is for known vulnerabilities, while false discovery rate tells you how much effort the team will waste on incorrect alerts. A strong SAST program needs both: sufficient coverage to catch real flaws and enough precision that output remains operationally usable.

The practical trade-off is straightforward. Pushing a scanner to surface more issues may increase sensitivity, but it can also raise false discovery rate and overwhelm reviewers. Tightening rules to reduce noise may improve trust, but it can also suppress real findings. The right balance depends on whether the product is being used for developer feedback, release gating, or risk prioritisation.

Top 10 NHI Issues and Ultimate Guide to NHIs — Key Challenges and Risks are useful for understanding the same signal-versus-noise problem in security programmes, especially where weak validation creates operational distrust and missed risk.

Standards & Framework Alignment

This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.

OWASP Agentic AI Top 10 address the attack and risk surface, while CIS Controls v8 and NIST CSF 2.0 set the governance and control requirements practitioners need to meet.

Framework Control / Reference Relevance
CIS Controls v8 8 — Audit Log Management SAST output quality supports operational visibility into validated findings and reviewability.
Recommendation — Validate scanner findings before routing them into operational triage and reporting.
NIST CSF 2.0 DE.CM — Continuous Monitoring SAST is a continuous monitoring signal for code weaknesses and alert quality.
Recommendation — Monitor SAST findings for coverage, noise, and repeatable validation quality.
OWASP Agentic AI Top 10 A2 — Insecure Output Handling False discoveries resemble unreliable output that teams must verify before actioning.
Recommendation — Verify scanner output before using it to drive security or developer decisions.

Practitioner Guidance

What to verify: Do not compare SAST tools on one metric alone. Verify true positive rate against a known vulnerable sample set, then review false discovery rate on representative real code so you understand both detection coverage and analyst burden.

Decision rule: If the team is missing real defects, prioritise sensitivity and rule coverage. If the team is drowning in triage, prioritise precision, tuning, and suppressions that are backed by clear justification rather than blanket exceptions.

What good looks like: The best operating state is not “maximum alerts,” it is a scanner that finds real issues consistently, keeps incorrect findings low enough for developers to engage, and produces output that security can trust enough to use in workflow decisions.

Practitioner takeaway: Treat true positive rate as a completeness measure and false discovery rate as a trust measure, then tune SAST for the balance your workflow can actually sustain.