Skip to content

The Site Health score and the badge you can embed

How the single 0-100 Site Health score is built from uptime, PageSpeed, known vulnerabilities and backup freshness, why an unmeasured component is not a zero, and how to publish the badge on your own site.

Uptime, PageSpeed, vulnerabilities and backups are four different screens with four different scales. The Site Health score puts them into one number per site — and, where a number would mislead, into no number at all.

What the score is made of

Every site gets a score between 0 and 100, weighted like this:

  • Uptime, 40 points — the last 30 days of monitoring. A site with fewer than 100 checks in that window is “not enough data”; from 95% downwards the component scores zero.
  • PageSpeed, 20 points — the most recent mobile PageSpeed result. Older than 30 days and it counts as no data rather than as a bad result.
  • Known vulnerabilities, 25 points — the installed plugins and themes matched against the vulnerability data we already hold. If we know too little about the installed list, the component is left out instead of guessed.
  • Backup freshness, 15 points — full points for a backup in the last 24 hours, falling to zero by a week old, with a grace period for a site that was only just connected.

90 and above reads as good, 70 and above as fair, below that as poor. The panel shows the breakdown at all times: how many points each part cost, and for anything missing, why it could not be measured.

Missing data is not zero

A component we could not measure does not score zero — its weight leaves the total as well. Scoring a site zero for a measurement we never took would say something about us, not about the site.

Two rules follow from that. If less than 40 points of weight could be measured, no score is shown: a “100” built on one component looks reassuring and means nothing. And backups that were never scheduled count as a choice rather than a failure — the component is marked off and stays out of the score, while a site that does have a schedule but no backup yet is marked as no data.

The score is recalculated in the background as new measurements land. The site's Uptime tab has a “Recalculate” button if you want it now, and the Monitoring page shows the fleet average with the lowest-scoring sites first.

The badge (paid plans)

You can embed the result in the site itself. The badge is a static image served from its own address:

https://wpsafer.com/badge/<token>.svg

It needs no login, carries no personal data and shows the uptime percentage we measured and nothing else — not the score, not the site name, not your account. The percentage is rounded down, so a site at 99.987% shows 99.98% and never a flat 100%.

Turn the badge on from the site's Uptime tab, copy the snippet with the Copy the code button and paste it into your theme or a widget. The snippet can include a link back to WP Safer, or be image-only. If you ever want the old address to stop working, Create a new address issues a new token — anything already embedded with the old one stops working immediately, so paste the new snippet in the same visit.

Turning the badge off makes the address answer 404. Copies already cached by browsers and CDNs can linger for a few minutes, because the image is served with a five-minute cache lifetime.

Your own wording (Agency)

On Agency you can replace the badge text with your own — up to 40 characters — and our name goes away. Until you write your own text, the badge says “Monitored by WP Safer”, on Agency as well.

Which plans

The score is on for every plan, Free included: it is built from measurements we already take. The embeddable badge is on for all paid plans, and the unbranded version is Agency only.