Safeguard
Industry Analysis•

Which metrics should an open source program report each month?

Five numbers show if open source risk is under control: coverage, decision time, overdue fixes, unapproved use and aging exceptions. Definitions inside.

Safeguard Security Team
3 min read

Report five numbers each month: inventory coverage, median intake decision time, overdue vulnerability fixes, use of unapproved packages, and aged exceptions. Together they show whether you can see your open source, whether the process is usable, and whether risk is shrinking.

Why only five

Dashboards with forty charts are not read. Pick a few measures that change a decision. Each number below has a clear owner and a clear action when it moves the wrong way.

The five numbers

NumberDefinitionWhat a bad trend means
Inventory coverageShare of production services and shipped products with a current SBOMYou cannot answer exposure questions fast
Intake decision timeMedian and 90th percentile days from request to decisionThe process is too slow, expect shadow use
Overdue fixesCount and share of open vulnerabilities past their policy deadline, by severityRemediation capacity or ownership problem
Unapproved usePackages found in builds or proxy logs not on the approved listThe process is being bypassed
Aged exceptionsOpen exceptions past expiry or older than a set ageRisk is being deferred without a plan

How to measure each

Coverage needs a denominator, so keep a list of products and services. Count those with an SBOM generated in the last release.

Decision time comes from your intake tool's timestamps. Report the 90th percentile too, since slow outliers are what developers remember.

Overdue fixes need a deadline per finding, which is why the policy must define the start of the clock. Use reachability and exposure to prioritize inside the overdue list.

Unapproved use needs a join between your approved list and logs or SBOMs. Treat the first report as a baseline, not a failure.

Aged exceptions come from the exception register. Report counts by owner team.

Reading the numbers together

  • Fast decisions and low unapproved use mean the process is working.
  • Slow decisions and high unapproved use mean developers are working around you.
  • High coverage and high overdue fixes mean you see the risk but cannot fix it, so look at capacity.
  • Low coverage means every other number is unreliable.

Presenting to leadership

Show the trend over six months, not just the current month. Add one sentence per number saying what you will do next. Do not invent targets you cannot influence. Agree on targets with the owners first.

Try it yourself

Click through it at your own pace, or open it full screen. Notice how ongoing monitoring produces the data these numbers need.

Quick check

Should we report the total number of vulnerabilities?

Total counts rise with scanning depth and say little on their own. Overdue counts against policy are more useful.

Who owns these numbers?

The program lead owns the report, and each number has an owning team for action.

Safeguard scans dependencies and builds SBOMs, runs reachability analysis, and applies policies and gates on pull requests, so the rules in this post can be checked automatically. Autonomous fix PRs are off by default, with every category on Manual. You can run 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.