Safeguard
Industry Analysis•

Advisory counts by year: why 2026 looks huge and what to trust

In OSV, 47 percent of PyPI and 43 percent of npm advisories are dated 2026, with one PyPI month at 2,995. Why publication dates mislead trend charts.

Safeguard Security Team
4 min read

In OSV exports downloaded on 19 October 2026, 47.1 percent of PyPI advisories and 42.9 percent of npm advisories carry a 2026 publication date, even though the year is not over. One PyPI month holds 2,995 records. Publication dates reflect when records were filed, so do not chart them as a trend in flaws.

Method

We downloaded eight OSV exports on 19 October 2026 and kept vulnerability advisories (excluding MAL- and withdrawn records). We counted by the year and month of the published field. We did not check the underlying disclosure dates.

What the numbers say

Share of each ecosystem's current advisories with a 2026 publication date (to mid October):

EcosystemAdvisoriesPublished in 2026Share
PyPI13,9416,56247.1%
Go9,4644,23444.7%
npm7,4473,19642.9%
NuGet1,14239734.8%
crates.io2,79984430.2%
Packagist7,1471,64123.0%
RubyGems1,09118817.2%
Maven7,07799114.0%

Monthly counts show lumps. PyPI had 120 to 803 records in most 2026 months, then 2,995 in July. Other examples from earlier years: Maven has 2,977 in 2022 against 390 in 2021 and 936 in 2023, and Packagist has 2,313 in 2022 against 422 in 2021 and 744 in 2023.

Those jumps look like backfills or bulk imports. We do not know the cause for any of them. A real surge in new flaws would not usually arrive in a single month in one ecosystem only.

How to read advisory counts

Treat an advisory feed as an event log of record publication, not a clock of discovery. Three rules help.

  1. Do not draw a trend line from published alone. A record can describe a flaw found years earlier.
  2. Use a second date where you can. A CVE's published date, a fix release date or the commit that fixed it each answer a different question.
  3. Compare within a feed, not across. A larger count in one ecosystem may come from how its advisories are filed and who files them.

For your own reporting, the useful series are counts about your estate: new findings per week against your lockfiles, and time from record to fix. Those do not depend on how an upstream feed batches its work.

If a feed suddenly adds thousands of records, rescan. New matches against your inventory are the part that matters, and the rescan finds them.

Whatever tool you use, rescan on a schedule. Safeguard's SBOM and dependency scanning supports that, so a bulk import shows up as new matches against your estate, not as a headline number.

Try it yourself

Open the demo and watch how a monitored inventory surfaces a new match when advisory data changes.

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

Quick check

Does a 2026 spike mean more vulnerabilities were found?

Not necessarily. The date is when the record was published in the feed, and large single month jumps often come from batches.

What should I chart instead?

New findings against your own inventory and time to fix them.

Sources

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.