Safeguard
Industry Analysis•

How do you write a limitations paragraph for KEV, EPSS and OSV posts?

A limitations paragraph says what your data cannot show. Here are the specific caveats for KEV, EPSS and OSV, with wording you can adapt to your own post.

Safeguard Security Team
6 min read

A limitations paragraph says what your data cannot show, in specific terms, right after your findings. For KEV, EPSS and OSV, the core cautions are: KEV lists known exploitation, not all exploitation; EPSS is a probability, not a prediction for your host; OSV completeness varies by ecosystem. Write each as a plain sentence.

Why it builds trust

Readers and answer engines both quote posts that know their own limits. A limitations paragraph also protects you from being cited for a claim you never made. It should be short, specific and tied to the dataset you used, not a generic disclaimer.

What to say for each source

DatasetLimitationSentence you can adapt
KEVA list of vulnerabilities CISA has evidence were exploited. Absence is not safety"KEV is a floor on known exploitation, not a count of all exploited flaws."
KEVSingle snapshot"We used release 2026.10.16; later releases will differ."
EPSSA daily global probability for a CVE"EPSS estimates exploitation in the next 30 days across all environments, not for a specific system."
EPSSScores change daily and by model"Scores are from 18 October 2026 and model v2026.06.15."
OSVOptional fields vary by source"Summary, alias and credit fields are filled unevenly across ecosystems."
OSVWithdrawn records exist"Counts exclude withdrawn records" or "include", as you chose.

The EPSS wording follows FIRST's description of the model: a probability that a published CVE will be exploited in the wild in the next 30 days.

Limits that apply to all three

  1. You looked at a snapshot, and the data keeps changing.
  2. Counts depend on your counting unit. State it.
  3. You did not verify each record against its original source, unless you did.
  4. Correlation between datasets does not mean one caused the other. For example, a high EPSS for KEV entries does not show the model "caused" anything. See what the spread of EPSS among KEV entries shows.
  5. Free text fields were grouped by rules you wrote, and a different rule would give different counts.

Steps

  1. Reread your findings and for each, ask "what would make this false?"
  2. Write one sentence per answer.
  3. Remove sentences that apply to no finding in your post.
  4. Place the paragraph under the findings, not in a footer.
  5. Keep it under 150 words.

What not to write

Avoid "results may vary" and "this is not exhaustive". They say nothing. Avoid claiming the analysis is "comprehensive" or "definitive". If you are not sure of a fact, say it should be checked rather than hiding it. For the companion section on how you counted, see the methodology template.

A worked example paragraph

Here is a limitations paragraph for a post that joined KEV and EPSS, under 150 words:

"KEV lists vulnerabilities that CISA has evidence were exploited, so it understates exploitation we cannot see. We used release 2026.10.16, and later releases will differ. EPSS is a daily probability for a CVE across all environments, not a forecast for any one host, and we used scores from 18 October 2026. One KEV entry had no EPSS row and is excluded from score statistics. We grouped free text values by rules we wrote, and a different rule would give different counts. We did not verify each entry against its vendor advisory."

Every sentence ties to a choice made in the analysis, and every sentence can be checked. Compare that to "results may vary", which tells the reader nothing.

Match each limitation to a finding

Finding in the postLimitation to pair with it
A share of KEV entries with some propertyKEV is a list of known cases, so the share describes the list
High EPSS among KEV entriesEPSS and KEV are different evidence, so this is not validation
A count of OSV advisoriesRecords are not unique vulnerabilities, and withdrawn records exist
A comparison across ecosystemsField completeness varies by source
A trend across datesSnapshots, model versions and release timing differ

Common limits that authors forget

  1. Survivorship. A dataset of listed items cannot tell you about unlisted ones.
  2. Time. A one day snapshot says nothing about stability.
  3. Definitions. Your category rules are a choice.
  4. Joins. Unmatched rows are excluded from statistics.
  5. Sampling. If you used five ecosystems out of many, you sampled, and the sample is not random.

Steps to write yours

  1. List your findings.
  2. For each, write what would make it false.
  3. Convert each answer into a plain sentence.
  4. Delete anything that does not apply.
  5. Put the paragraph after the findings.
  6. Have a colleague read it and say what they now would not claim.

The last step is the useful one. If a reader leaves with a narrower claim than you intended, the paragraph is doing its job.

Tone

Be direct and calm. The goal is accuracy, not self protection. A limitation that you state is a boundary on your claim, and a boundary makes the claim stronger. For the section that describes how you counted, see the methodology template.

Try it yourself

Click through it at your own pace, or open it full screen. Look at how evidence of exploitation and exploitability change a finding, then compare that with what a global list can and cannot say about your own systems.

Quick check

Does a limitations paragraph weaken my post?

No. It tells readers exactly how far they can trust each number, which is why other writers cite posts that include one.

Should limitations come before the findings?

After is better. Readers want the result first and the cautions next to it.

Should the limitations paragraph mention that the data may change?

Yes, and give the snapshot date. It tells readers which version your claims apply to.

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.