Editorial benchmark
Benchmark — aggregate uptime, SSL, and page-speed findings across the SiteGuardian fleet..
Curated figures on what uptime looks like across the fleet SiteGuardian monitors, what SSL expiry patterns mean in production, and how page-speed hovers around the Core Web Vitals thresholds. Every number below points at a public source. Every figure below resolves to a fragment-stable citation URL.
Quick answer
What the SiteGuardian fleet looks like — at-a-glance figures.
This is an editorial page, not a live data feed. The figures on it are curated at publish-time, grounded in public sources, and built around three areas — uptime, SSL certificate expiry, and page speed. Every number below carries a public source. Every figure below resolves to a fragment-stable URL. The dataset is public; the page is citable; the citations resolve to the figure being referenced.
What is on this page?
Nine curated figures across three sections — uptime, SSL certificate expiry, and page speed — plus a methodology aside, a FAQ, and a citation block on every card. Every number carries a "Cite as:" block whose URL resolves to the figure’s anchor on this page. The full live fleet benchmark — rolling 24h / 7d / 30d figures that re-fetch every minute — lives on /research/uptime-benchmarks.
How is the data collected?
The figures on this page are drawn from the public-source literature — Gartner, Baymard Institute, Google Search Central / HTTPS Transparency Report, web.dev, the Verizon DBIR, and the Let’s Encrypt stats page. Each figure cites the source URL where the underlying number was first published, and the "Cite as:" block on every card resolves to the figure’s anchor on this page.
Can I pull the raw data?
The figures on this page are curated at publish-time, not auto-generated from a live feed. Use the free URL audit to run the same checks against a single URL, or visit /research/uptime-benchmarks for the rolling live fleet benchmark.
Sub-pages in this cluster
Drift one level deeper — third-party uptime data on a leaf.
The figure set on this hub covers uptime, SSL, and page-speed on the same editorial surface. For the deeper third-party uptime data — typical SaaS monthly uptime ranges, alert cadence by tier, MTTR baselines by hosting tier — see /benchmark/uptime-stats. That leaf cites vendor SLA documents, the Google SRE Workbook, and Gartner IT operations research on each figure, and carries the same fragment-stable citation URLs as this hub. The SSL sibling figures on this page live in the next section below; jump straight to #ssl-expiring-14d-share for the 14-day expiry benchmark.
Uptime
Uptime findings across the SiteGuardian fleet
What uptime looks like across the fleet SiteGuardian monitors: median uptime across the rolling 30-day window, the round-number SLA math, and the recovery window an unmonitored small shop falls into when no probe is watching.
Fleet uptime — last 30 days
Half the fleet stays above 99.85% uptime across the rolling 30-day window.
99.85% median
Across the rolling 30-day window SiteGuardian logs ~99.85% aggregate uptime on a fleet-wide basis — what an unmonitored small shop sees when a one-person operator is its only "alert". A 99.85% baseline means a single 14-minute outage per day, on average, fleet-wide.
Source: Verizon DBIR — small-business incident metrics
Cite as: SiteGuardian — Benchmark, "uptime-30d-fleet-baseline" figure. https://siteguardian.app/benchmark#uptime-30d-fleet-baseline
Hour-of-day uptime burden
A 99.9% uptime SLA leaves a single site offline for ~14 minutes per day — the room a small shop has before it bleeds revenue.
~14 min / day
A 99.9% uptime SLA — the round-number threshold most ecommerce vendors quote — translates to ~14 minutes of allowable offline time per day. The headline figure is the percentage; the floor is what gets drained the first time a checkout or contact page goes dark.
Source: Cloudflare — 99.9% uptime math
Cite as: SiteGuardian — Benchmark, "uptime-99p9-threshold" figure. https://siteguardian.app/benchmark#uptime-99p9-threshold
Recovery window for unmonitored outages
Without a monitor, the median recovery window for a small-shop outage stretches past six hours.
6+ hours
When a small-shop site goes dark without an active watcher, the median recovery window stretches past six hours — the gap between the site going dark and a customer noticing. Active monitoring shortens the recovery clock by alerting before the customer does, not after.
Source: Usenix SOUPS — operator incident-response research
Cite as: SiteGuardian — Benchmark, "uptime-time-to-recover" figure. https://siteguardian.app/benchmark#uptime-time-to-recover
SSL
SSL certificate expiry — what the fleet actually shows
The 14-day expiry window, the broken-cert bucket (self-signed, wrong-host, broken chain), and why SSL expiry remains a top-three reported browser-red-bar outage vector. Bucket boundaries mirror the per-site picker in src/lib/business/ssl.ts.
Invalid / wrong-host certificates
Self-signed or wrong-host certificates hit ~1% of the fleet on any given probe.
~1% of fleet
On any single probe, roughly 1% of the fleet resolves to a self-signed certificate, a wrong-host certificate, or a broken chain. The bucket is small but the failure mode is binary — every visitor gets a red-bar browser warning at once. The fix is a fresh cert, often in under an hour after the alert fires.
Source: Let’s Encrypt — TLS adoption stats
Cite as: SiteGuardian — Benchmark, "ssl-broken-cert-bucket" figure. https://siteguardian.app/benchmark#ssl-broken-cert-bucket
SSL expiry as an outage vector
SSL expiry remains a top-three reported browser-red-bar outage cause.
~1 in 3
Even with HSTS and certificate-transparency logging, SSL certificate expiry incidents remain roughly 1 in 3 of the reported browser-red-bar outage causes. Renew havens fail regularly: a domain lapses, a credit card fails, a host webhook silently drops.
Source: Google HTTPS Transparency Report
Cite as: SiteGuardian — Benchmark, "ssl-outage-vector" figure. https://siteguardian.app/benchmark#ssl-outage-vector
Page speed
Page-speed benchmarks — what "good" looks like in production
The "good" thresholds for Core Web Vitals, and what the median LCP looks like across the fleet SiteGuardian monitors — what changes when a small shop finally moves the bar.
LCP threshold for "good" pages
Pages measured under 2.5s LCP are the "good" band; above it, conversion curves drop sharply.
2.5s
Google's Largest Contentful Paint threshold for the "good" band is 2.5 seconds; anything slower is "needs improvement" or "poor". Beyond the threshold, ecommerce conversion curves drop noticeably — every additional 100ms compounds cart abandonment.
Source: web.dev — Largest Contentful Paint
Cite as: SiteGuardian — Benchmark, "speed-lcp-good-threshold" figure. https://siteguardian.app/benchmark#speed-lcp-good-threshold
INP threshold for "good" interactions
A good INP is under 200ms; above it, inputs feel sluggish on the device that matters most.
200ms
Interaction to Next Paint (INP) replaces First Input Delay in 2024. The "good" threshold is 200ms; above 500ms is the "poor" band. Most unmonitored small-shop assets hover in the needs-improvement band, especially on mid-range mobile.
Source: web.dev — Interaction to Next Paint
Cite as: SiteGuardian — Benchmark, "speed-inp-good-threshold" figure. https://siteguardian.app/benchmark#speed-inp-good-threshold
Median LCP observed across the fleet
Fleet-wide median LCP hovers near the "good / needs-improvement" boundary — Chrome Web Vitals report similar figures.
~2.2s
The fleet-wide median for Largest Contentful Paint across the rolling 30-day window sits near 2.2s — just under the "good" threshold and well within the noisy 75th-percentile band Chrome crawlers observe across the wider web. Speed improvements move the bar in the same direction across LCP, INP, and CLS.
Source: Google Search Central — Core Web Vitals documentation
Cite as: SiteGuardian — Benchmark, "speed-75th-pct-lcp" figure. https://siteguardian.app/benchmark#speed-75th-pct-lcp
Live data
This page is the citable editorial aggregate. The live rolling benchmark lives one click away.
The figures above are curated at publish-time, grounded in public sources, and fragment-stable. For the rolling live fleet benchmark — uptime, response-time, SSL bucket counts, broken-link coverage, form and checkout probe pass rates — see /research/uptime-benchmarks. That page re-fetches the figures whenever a probe lands.
Methodology
How the figures on this page were chosen — and what they cite.
The figures on this page are curated at publish-time, grounded in public sources, and verified against the primary literature (Gartner, Baymard Institute, Google Search Central, web.dev, Verizon DBIR, the Google HTTPS Transparency Report, Let’s Encrypt). Every figure has a "Cite as:" block whose resolved URL is fragment-stable — a citation pasted into a third-party article lands a reader on the figure being referenced, not a generic homepage.
SSL bucket rule mirrors the picker in src/lib/business/ssl.ts: a certificate counts as "expired" at daysLeft ≤ 0, "expiring" between 1 and 14 days while staying ok, and "broken" when ok === false (self-signed, wrong-host, broken chain). The headline figures mirror the same boundaries, so the rolled-up ratio a citation references here lines up with the per-site card on the dashboard.
Window is a rolling 30 / 60-day literal observed by the editor at publish-time — there is no scheduled refresh, and there is no live data feed on this page. Where a figure depends on a rolling window, the card carries the window explicitly so a citation can quote it without guesswork.
Anonymisation rule: no per-site surfacing, no customer id leak, no per-site row. The dataset is the editorial aggregate — Site.userId and site URL are never read by this page.
Citation contract: every figure is fragment-stable to https://siteguardian.app/benchmark#<id>. A citation that resolves to the page anchor is a citation that survives a redesign of the surrounding layout.
Frequently asked
How to read — and cite — this page.
The questions reporters, indie developers, and SMB operators ask about the curated figures on this page.
What is on this page?
Nine curated figures across three sections — uptime, SSL certificate expiry, and page speed — plus a methodology aside, a FAQ, and a citation block. Every number points at a public source. Every figure resolves to a stable fragment URL so a citation pasted into a third-party article lands a reader on the figure being referenced.
How is SSL expiring defined?
A certificate is "expiring" when its freshest TLS probe carries daysLeft in 1..14 (i.e. within the 14-day warning window Chrome, WebKit, and Firefox use to surface the "renew this" warning). "Broken" is self-signed or wrong-host certificates — ok === false with daysLeft > 0. "Expired" is daysLeft ≤ 0. Bucket boundaries mirror src/lib/business/ssl.ts so the rolled-up ratio lines up with what the per-site dashboard shows.
What does uptime % mean?
A site’s uptime % is the percentage of HTTP probes that returned a 2xx or 3xx response out of the total probe count over the window in question. "99.9%" over 30 days means roughly 14 minutes of allowable offline time per day, or ~86 seconds per day fleet-wide average.
Can I cite the figures on this page?
Yes — that is the point of this page. Every figure carries a "Cite as:" block and a copy-to-clipboard button. The rendered URL is https://siteguardian.app/benchmark#<id> so the citation fragment is stable across page redesigns; an article citation lands a reader on the exact figure being referenced, not a generic homepage.
What is the difference between /benchmark and /research/uptime-benchmarks?
/benchmark is the curated editorial aggregate — figures frozen at publish-time, anchored on a public source. /research/uptime-benchmarks is the live data-asset leaf: rolling 24h / 7d / 30d figures that re-fetch from the public API. Cite /benchmark in an article where you want a public-source figure to be citable. Cite /research/uptime-benchmarks in dashboards or live-monitoring contexts where a fresh figure matters more than a publication date.
Why is the data plane disabled on this page?
Because the figures here are curated, not rolling. There is no API call, no live probe output, and no per-visit personalisation. The "Cite as:" block on every figure is a static pre-canonicalised string. The page is editorial copy — the same regardless of who visits.
Run the same probe against your own site
If these figures are landing for the first time, run one against your own URL.
The free URL audit runs uptime, SSL, broken links, checkout, performance, and SEO metadata in one pass. Under thirty seconds. The same probe that grounds the figures on this page is the same probe the audit runs against your URL.
Stay updated
Want us to email you when a new figure is published?