Metrics and thresholds

The good, needs improvement and poor limits that VitalSentinel uses for Core Web Vitals, Lighthouse scores, uptime and the Health score.

View as Markdown

This page lists the limits that VitalSentinel uses to rate a value as good, needs improvement or poor. It covers RUM Monitoring, CrUX Monitoring, Synthetic Monitoring, Uptime Monitoring, Site Health Monitoring and the Dashboard.

How VitalSentinel rates a value

VitalSentinel puts most values in one of three bands: Good, Needs improvement and Poor. Each band has a color:

  • Green means that all is well.
  • Amber means that something is worth a look.
  • Red means that a problem needs you now.

On the Dashboard, a grey dot has nothing to judge yet, and an empty ring is a module that is not set up. Hover a dot, a chip or the "?" next to a figure to see what the rating uses.

Some uptime and error figures use the word Warning for the middle band instead of Needs improvement. The meaning is the same.

The typical visit

RUM Monitoring and CrUX Monitoring show one figure for each metric: the value of a typical visit. In tooltips, this figure has the label Typical visit. The tooltip explains it in words: 3 out of 4 visits were this fast or faster.

So the figure does not describe the fastest visit or the slowest visit. Google uses the same statistic, so you can compare the figures of VitalSentinel with the figures of Google.

How Google judges Core Web Vitals

Google judges LCP, INP and CLS each on its own. A metric passes when at least 3 out of 4 page loads are Good. Google judges phones and desktops separately. A page can pass on desktop and fail on phones.

Good visits

Some charts show the share of visits in each band. Good is the share of visits fast enough to count as a good experience. Needs improvement is the share in the middle band: usable, but with room to get faster. Poor is the share of visits slow enough to hurt the experience.

Core Web Vitals limits

Core Web Vitals are the three speed metrics that Google uses in search ranking: LCP, INP and CLS. VitalSentinel also rates FCP and TTFB.

MetricGoodNeeds improvementPoor
LCP (Largest Contentful Paint)2.5 s or less4 s or lessmore than 4 s
INP (Interaction to Next Paint)200 ms or less500 ms or lessmore than 500 ms
CLS (Cumulative Layout Shift)0.1 or less0.25 or lessmore than 0.25
FCP (First Contentful Paint)1.8 s or less3 s or lessmore than 3 s
TTFB (Time to First Byte)800 ms or less1.8 s or lessmore than 1.8 s

These limits apply to field data: measurements from real visitors in RUM Monitoring and CrUX Monitoring. Phones and desktops use the same limits.

LCP limits

LCP (Largest Contentful Paint) is how long visitors wait until the main content of the page is on screen. The main content is the largest image, video or block of text. An LCP of 2.5 seconds or less is good. More than 4 seconds is poor.

INP limits

INP (Interaction to Next Paint) is how quickly the page reacts when a visitor taps, clicks or presses a key. It reflects the slowest reactions during the visit. An INP of 200 milliseconds or less is good. More than 500 milliseconds is poor.

CLS limits

CLS (Cumulative Layout Shift) is how much the page jumps around while it loads, for example a button that moves just as you tap it. A score of 0 means that nothing moved. A CLS of 0.1 or less is good. More than 0.25 is poor.

FCP limits

FCP (First Contentful Paint) is how long until the first text or image appears. Until then, the visitor sees a blank page. An FCP of 1.8 seconds or less is good. More than 3 seconds is poor.

TTFB limits

TTFB (Time to First Byte) is how long your server takes to start answering a page request. Every other speed number starts after it, so a slow server slows everything. A TTFB of 800 milliseconds or less is good in field data. More than 1.8 seconds is poor.

Synthetic Monitoring limits

Synthetic Monitoring runs Lighthouse tests in a lab. A lab test is one controlled run, not a real visit. Lighthouse uses its own limits for lab results.

Lighthouse scores

Lighthouse gives four scores from 0 to 100: Performance score, Accessibility, Best practices and SEO. All four scores use the same bands.

ScoreRating
90 to 100Good
50 to 89Needs improvement
0 to 49Poor

The Performance score is a weighted blend of LCP, TBT, CLS and the other speed measures.

Lab speed measures

MeasureGoodNeeds improvementPoor
LCP2.5 s or less4 s or lessmore than 4 s
FCP1.8 s or less3 s or lessmore than 3 s
TBT (Total Blocking Time)200 ms or less600 ms or lessmore than 600 ms
CLS0.1 or less0.25 or lessmore than 0.25
TTFB (lab)600 ms or less1.8 s or lessmore than 1.8 s
SI (Speed Index)3.4 s or less5.8 s or lessmore than 5.8 s
TTI (Time to Interactive)3.8 s or less7.3 s or lessmore than 7.3 s
Requests50 or fewer100 or fewermore than 100
Data transferred1.5 MB or less3 MB or lessmore than 3 MB

The lab TTFB has a stricter good limit (600 ms) than the field TTFB (800 ms). The lab TTFB is not the same as the TTFB that real visitors get. Lighthouse no longer uses TTI in the Performance score.

One test or many tests

A single Synthetic Monitoring test is one run, so it has no typical value. When a figure covers many tests, the score is an average. The speed measures show the typical value: 3 out of 4 tests were this fast or faster.

CrUX ad metrics

CrUX Monitoring can show four experimental Google measures about ads: Ads in view, Screen covered by ads, Ad CPU time and Ad data transferred. Google gives no good or poor limits for these measures, so VitalSentinel does not color them.

Uptime Monitoring limits

Uptime Monitoring rates these figures in its tooltips:

FigureGoodWarningPoor
Uptime percentage99.9% or more99% or moreless than 99%
Average response time200 ms or less500 ms or lessmore than 500 ms
SSL certificate expirymore than 30 daysmore than 7 days7 days or less
Domain registration expirymore than 60 daysmore than 14 days14 days or less

An uptime of 99.9% allows about 43 minutes of downtime in a month.

JavaScript error limits

Two places rate the errors that real visitors hit:

  • Domain Overview: the RUM Monitoring card shows a JS errors tile only when more than 1% of page loads hit an error. The tile is amber up to 5% and red above 5%. Its tooltip, JavaScript error rate, says "Good: ≤1% | Warning: ≤5% | Poor: >5%".
  • RUM Monitoring Errors page: the Visits with an error tile is green below 2%, amber from 2% and red from 10%. The verdict shows from 2%. See Errors.

Health score bands

Site Health Monitoring gives your site a Health score from 0 to 100. A score of 90 or more is Good. A score below 70 is Poor. A score between the two is Needs attention.

The score starts at 100. Each open issue takes points off by how serious it is and how much of your site it affects. Before the first score, the Overview shows a word instead, such as Not checked yet, Getting to know your site or Not scored yet. For the details, see Site Health Monitoring.

On this page

VitalSentinel

Catch issues before they cost you

Track SEO, performance, and uptime in one place and get alerted the moment something breaks – hours before it hits your traffic.

  • Free plan for 1 domain
  • Set up in minutes
  • No credit card required