Safeguard
Security Guides•

How do you check coverage before retiring a security scanner?

Build a coverage matrix of what each scanner checks and where it runs, then test the gaps with known findings before you switch any old scanner off.

Safeguard Security Team
3 min read

Before retiring a scanner, build a matrix of what it checks (rows) against each repository, language and environment (columns), mark which tool covers each cell, then test the cells the old tool alone covered using a known vulnerable sample. Retire only when every cell has a covering tool or a documented decision to accept the gap.

Why overlap is not the same as redundancy

Two tools can both claim to scan dependencies and still differ. One may read lockfiles only, the other may also read container layers. One may skip private registries. Calling them duplicates without checking is how coverage quietly disappears.

Build the matrix

Rows are the things you must check. Columns are your assets.

CheckRepo ARepo BContainer imagesDeployed app
Open source dependenciesTool 1Tool 1, Tool 2Tool 2n/a
Own code (SAST)Tool 3nonen/an/a
Secrets in code and historyTool 3Tool 3nonen/a
Infrastructure filesnoneTool 4Tool 4n/a
Running application (DAST)n/an/an/aTool 5

The empty cells matter as much as the doubled ones. A gap you find now is a gap you already had.

Test the cells that depend on the old tool

For every cell where the tool you plan to retire is the sole cover, check the replacement actually finds things there.

  1. Pick a repository with known issues, ideally one with a documented vulnerable dependency.
  2. Run both tools and compare. Our post on deduplicating findings across scanners covers matching them.
  3. Record what the old tool found and the new one missed, and why: unsupported language, missing lockfile, private registry, or a rule difference.
  4. Fix the cause or record an accepted gap with an owner.

Language and ecosystem support is the usual culprit. Check it up front, as described in checking scanner language and ecosystem support.

Include where the check runs

A scanner that runs in the IDE, in the pull request and on a schedule gives three chances to catch a problem. A replacement that runs only on a schedule is weaker even if its rules are good. Add the run points as columns too.

Try it yourself

Click through it at your own pace, or open it full screen.

Click through the image scan and note which findings come from layers that a repository-only scan would never see.

Quick check

What if two tools disagree on a finding?

Treat the disagreement as a test case. Check the advisory and the installed version by hand, then note which tool was right so you can judge the replacement fairly.

Is one tool covering a cell enough?

Usually yes, if you have tested that it finds known issues there. Doubling up is a cost, not a safety net, unless the tools use genuinely different methods.

Safeguard covers SBOM and dependency scanning, reachability analysis, policies and gates, and compliance evidence automation. You can try a free scan at gold.safeguard.sh/scan.

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.