Skip to content

Methodology

How the Nivaronix scanner works, what it checks, and exactly how a website security score and grade are calculated. This page describes the real, currently-running logic — not an aspirational description of it.

Last updated August 9, 2026.

What a scan does

A scan runs a fixed set of independent checker modules against the target URL. Before those modules run, the scanner follows the target's full redirect chain (so every module inspects the address a visitor actually lands on, not the first URL entered), and revalidates every hop along the way. The modules that run against the resolved target are:

  • SSL/TLS
  • HTTP security headers
  • Redirect behavior
  • Cookie attributes
  • DNS configuration
  • Technology detection (informational)

Each module runs independently and is time-bounded. If a module fails or times out against a particular target, that failure is logged and the scan continues with the remaining modules — a module that could not complete is not treated as a passing (or failing) result for that category. See "What ‘Not measured’ means" below.

Categories checked and their weight

Every finding belongs to a category. Each category has a maximum number of points it can cost the overall score, regardless of how many individual findings land in it. The weights below sum to 100 and reflect the categories' relative security impact, as encoded directly in the scoring engine:

CategoryMaximum points at stakeWhat it checks
SSL/TLS30Checks the certificate and transport configuration presented by the scanned host.
HTTP Headers25Checks for the presence and configuration of security-relevant response headers (e.g. HSTS, Content-Security-Policy, X-Content-Type-Options, and similar). Because this category checks several headers independently, a site missing several of them can accumulate more raw deduction than the category's own weight — see "Why fixing an issue can leave the score unchanged" below.
Redirects15Checks how the site redirects (for example HTTP to HTTPS), and separately walks the full redirect chain to flag loops, excessive hops, or a chain that ends somewhere the scanner refuses to connect to.
Cookies15Checks cookie attributes such as Secure, HttpOnly and SameSite.
DNS10Checks DNS-level configuration and records.
Technology detection5Identifies detectable technologies running on the site. Informational — used for context, not scored the same way as the other categories.

Any category outside this fixed list falls back to a default cap of 10 points.

Severity model

Every individual finding is assigned one of five severity levels, and each severity carries a fixed point deduction:

SeverityPoints deducted
Critical20
High15
Medium8
Low3
Info0

How the score is calculated

The calculation is a fixed arithmetic rule, run the same way for every scan:

  1. Start from a base score of 100.
  2. For every finding, add its severity's fixed point deduction to a running total for that finding's category.
  3. For each category, cap that category's total deduction at the category's maximum (the table above). A category cannot cost the score more than its cap, no matter how many findings it produced.
  4. Subtract the sum of all capped category deductions from 100. The result is clamped between 0 and 100.

This means the score is driven entirely by how many findings exist, in which categories, and at what severity — nothing about traffic, reputation, industry, or history factors into it.

Why fixing an issue can leave the score unchanged

Because deductions are capped per category, a category that produces many findings (headers checks several distinct headers, for example) can rack up more raw deduction than its cap allows. When that happens, the score already reflects the cap, not the raw total — so resolving one issue in an over-the-cap category can leave the score exactly where it was, because the cap was already absorbing the difference. The score only moves once the category's raw deduction drops back under its cap. This is a known, deliberate property of the capping design, not a bug — it keeps one noisy category from single-handedly sinking a score that is otherwise clean.

Grade thresholds

The final score maps to a letter grade using fixed thresholds:

ScoreGrade
90–100A
80–89B
70–79C
60–69D
0–59F

What "Not measured" means

If a check could not be completed against a target — a module timed out, or failed for a reason specific to that target — it is not scored as if it had passed, and it is never rendered as a zero or a default value standing in for a real result. It is labelled "Not measured" instead, so a scan report never implies certainty the scan does not actually have. This is the same convention already used across Nivaronix's reporting: a value the platform did not observe is always disclosed as unmeasured, never guessed or defaulted.

Scan scope and limitations

  • A scan describes the target at the moment it ran. It is a point-in-time snapshot, not a continuous measurement — a site's configuration can change at any time after a scan completes.
  • The scanner checks external, observable configuration (SSL/TLS, HTTP headers, redirects, cookies, DNS, and detectable technologies). It does not test application logic, authenticate into the target, attempt exploitation, or perform any form of penetration testing.
  • A finding's absence means the check ran and found no issue at that severity — it does not mean the target has no security issues outside what this scanner is built to check for.
  • Each scan is bounded by a fixed timeout. A target that is slow or unreachable within that window produces "Not measured" results for the affected checks rather than a false pass or fail.

Evidence and reports

Findings and scores shown in a Nivaronix report are reproduced directly from the stored scan record — nothing in a report is estimated, extrapolated, or filled in with a default value. Where evidence is available (for example the hops of a followed redirect chain), it is attached to the relevant finding so a result can be independently verified rather than taken on faith.

Continuous monitoring

Beyond a one-off scan, Nivaronix can re-run these same checks against a monitored asset on a recurring schedule and raise an incident when a check's result changes for the worse. The scoring rule applied on each run is identical to the one described on this page — monitoring does not use a different or weighted methodology from a manual scan.

Frequently asked questions

What is a security score deduction based on?

Every finding has a severity: Critical, High, Medium, Low, or Info. Each severity has a fixed point deduction — Critical costs 20 points, High 15, Medium 8, Low 3, and Info costs nothing. There is no other input to the deduction: it does not vary by target, industry, or history.

Why did fixing an issue not change my score?

Each category (SSL, Headers, Redirects, Cookies, DNS, Technology) has a maximum number of points it can cost, regardless of how many findings land in it. If a category's raw deductions already exceed its cap, fixing one issue in that category can leave the applied deduction — and the score — unchanged, because the cap was already absorbing the difference. Fixing enough issues to bring the raw total under the cap is what moves the score.

What does "Not measured" mean on a report?

It means a check did not run for that scan — for example a module failed or timed out against that specific target. A check that did not run is never scored as if it had passed, and it is never shown as zero or as a passing result. It is labelled "Not measured" so a report never implies more certainty than the scan actually has.

Does Nivaronix use AI to calculate the score?

No. The score is a fixed, deterministic calculation: start at 100, subtract capped per-category deductions based on the severity of findings, and map the result to a letter grade using fixed thresholds. Nothing about the score itself is model-generated, predicted, or estimated.

Related pages