METHODOLOGY

How we measure accuracy and noise

Other pages mention detection rates and false positives. This page explains where those numbers come from, what we tested, and what they do not promise.

Last updated: July 22, 2026

Or review Why Puaro and features.

99.8%
Less noise vs a common regex scanner*

OpenSSL in our April 2026 benchmark (15 alerts vs 8,449)

2–5%
Typical false-positive range*

From our internal tests, not a guarantee on every repo

Not audited
No public third-party audit yet

These are our own test results

*From controlled tests and our published benchmark. Your repos may look different.

CLAIMS

How to read these numbers

When you see “99.8%” or “2–5% false positives” on Puaro pages, they refer to specific tests, not a promise that every repository will match those figures.

What you seeWhat it meansWhere it comes from
99.8%On OpenSSL, Puaro raised 15 alerts while a popular regex scanner raised 8,449: about 99.8% fewer alerts in that one repo.Benchmark report, April 2026 (8 open-source repos, ~2.2M lines)
2–5% false positivesIn our internal tests, most flagged items that were not real, actionable secrets fell in roughly this band.Internal labeled tests during product development
Severity + explanationEach finding gets a severity and a short reason in plain English, not a bare “possible secret” list.Same benchmark and product behavior

We share these so buyers know how we test. They are directional. They are not a warranty for every language, layout, or secret type.

METRICS

What we look for

Three simple checks: did we catch a real problem, did we cry wolf, and can a developer act on it in a pull request?

True positive

A finding that matches a real or high-likelihood secret, confirmed by labeled data or review.

False positive

Something that looks like a secret but is not worth acting on: test fixtures, docs, placeholders, or random high-entropy strings.

Usable in a PR

A finding a developer can understand in a pull request without being a security specialist: severity, reason, and a next step.

HOW IT WORKS

How a scan works

We do not dump your whole repo into a chatbot and hope. We filter first, then score only the remaining suspects.

01

Drop obvious noise

Skip paths that are usually harmless: test folders, docs, examples, comments, and clear placeholders.

02

Find candidates

Match known credential shapes across many providers (2,000+ patterns).

03

Check the surrounding code

For each suspect: test value or real? Docs or live use? How serious? Output: severity, confidence, and a short explanation.

04

See where it goes

For stronger findings, follow how the value is used in code (for example a network call or a log) so the risk is clearer.

Where we can check with a provider that a credential is live, we use that to cut more noise. Timing is measured on cloud pull-request diffs, not a cold laptop CLI.

When we add languages or detectors, we re-run the core suites and update the date on this page. Full write-up: benchmark report.

BENCHMARK

What the benchmark showed

In April 2026 we scanned eight popular open-source repos (~2.2 million lines) with Gitleaks, TruffleHog, GitGuardian, and Puaro. Here are the highlights.

OpenSSL

Gitleaks raised 8,449 alerts. Puaro raised 15, five of them treated as real threats (2 critical, 3 high), each with a written reason.

Eight repos total

Across ~2.2 million lines, Gitleaks raised about 9,793 alerts. Puaro raised about 2,236, with severity on every finding.

OWASP WrongSecrets

Alert counts were similar across tools, but Puaro marked them low and explained they were training material, not live risk.

Details and tables: We tested 4 secret scanners on 8 real repos. Tool fit: Puaro vs Gitleaks vs TruffleHog.

LIMITS

What we do not claim

Clear limits so you can compare tools without inflated promises.

Perfect detection of every secret format forever.
The same false-positive rate on every customer repository.
A replacement for penetration tests, red teams, or human review.
Finished SOC 2 Type II: status is SOC 2 (In Progress).
That “99.8%” means we catch 99.8% of all secrets in the wild. In the published benchmark it means far fewer alerts than a noisy regex run on that OpenSSL corpus.
YOUR CODE

Try it on your own code

The best check is your repos. Connect GitHub or GitLab, open a few pull requests that include known test secrets, and compare noise to your current scanner. Design partners get help during that pilot.

GET STARTED

See it on your next PR

Connect a repository in under 5 minutes.
No credit card. No servers to run.

Start Scanning Free
RELATED

Keep exploring detection

Comparisons, the full benchmark tables, and notes for AI agents.