Skip to main content

Core Web Vitals Thresholds

Core Web Vitals are the three metrics that Google uses for search ranking and page experience evaluation. Values are measured at the 75th percentile of page visits.
To rank well in Google Search, 75% of your page visits must meet the “Good” threshold for all three metrics.

The Three Metrics

MetricMeasuresGoodNeeds ImprovementPoor
LCP
Largest Contentful Paint
Loading performance≤ 2.5s2.5s – 4.0s> 4.0s
INP
Interaction to Next Paint
Interactivity and responsiveness≤ 200ms200ms – 500ms> 500ms
CLS
Cumulative Layout Shift
Visual stability≤ 0.10.1 – 0.25> 0.25
Largest Contentful Paint (LCP)Measures when the largest visible content element renders. Usually:
  • Hero image or video
  • Large text block
  • Background image (with CSS)
  • SVG element
Target: ≤ 2.5 secondsCommon issues:
  • Slow server response (TTFB > 800ms)
  • Render-blocking resources
  • Slow resource load times
  • Client-side rendering delays

Lighthouse Score Targets

Lighthouse audits produce scores from 0-100 for each category. These are the recommended target scores:
CategoryTarget ScorePriority
Performance≥ 90High
Accessibility100Critical
Best Practices≥ 95High
SEO≥ 95Medium
Unlike other categories where some issues are recommendations, accessibility issues directly impact users’ ability to access your content. A score below 100 means some users cannot fully use your site. This is both an ethical concern and a legal risk in many jurisdictions.

Performance Score Breakdown

Lighthouse Performance score is weighted:
MetricWeightTargetImpact
LCP (Largest Contentful Paint)25%< 2.5sLoading
TBT (Total Blocking Time)30%< 200msInteractivity
CLS (Cumulative Layout Shift)25%< 0.1Visual Stability
FCP (First Contentful Paint)10%< 1.8sLoading
Speed Index10%< 3.4sVisual Progress
INP (Interaction to Next Paint) is measured separately as a Core Web Vital and is not part of the Lighthouse Performance score calculation, though it’s reported in Lighthouse 10+.

Performance Budget Recommendations

Performance budgets help prevent regression. These budgets assume 3G network connection (4 Mbps):

Resource Size Budgets

Resource TypeBudget (Compressed)Budget (Uncompressed)Rationale
Total page weight< 1.5 MB~3-4 MB3G loads in ~4s
JavaScript< 300 KB~900 KBParsing + execution time
CSS< 100 KB~300 KBRender blocking
Images (above-fold)< 500 KBN/ALCP impact
Fonts< 100 KBN/AFOIT/FOUT prevention
Third-party scripts< 200 KB~600 KBUncontrolled latency
Why 300 KB compressed?
  • 300 KB gzipped ≈ 900 KB uncompressed
  • Parse time: ~100-200ms on mid-tier mobile
  • Execution time: Varies by code complexity
  • Total impact: Can block main thread for 300-500ms
Budget strategy:
  • Critical JS: < 50 KB (inline or preloaded)
  • Main bundle: < 150 KB
  • Lazy-loaded routes: < 100 KB each

Timing Budgets

MetricBudgetCategory
TTFB (Time to First Byte)< 800msServer
FCP (First Contentful Paint)< 1.8sLoading
LCP (Largest Contentful Paint)< 2.5sLoading
TTI (Time to Interactive)< 3.8sInteractivity
TBT (Total Blocking Time)< 200msInteractivity
INP (Interaction to Next Paint)< 200msResponsiveness
CLS (Cumulative Layout Shift)< 0.1Stability

Accessibility Conformance Levels

WCAG 2.1 defines three conformance levels. Most organizations target Level AA as it balances accessibility with implementation practicality:
LevelRequirementTargetLegal Status
AMinimum accessibilityMust passOften legally required
AAStandard complianceShould passLegally required in many jurisdictions
AAAEnhanced accessibilityNice to haveRarely legally required

WCAG 2.1 Level AA Requirements

Text Alternatives (1.1)
  • All images must have alt text
  • Decorative images: alt=""
  • Complex images: Use aria-describedby
Color Contrast (1.4.3)
Text SizeMinimum Contrast (AA)Enhanced Contrast (AAA)
Normal text (< 18px or < 14px bold)4.5:17:1
Large text (≥ 18px or ≥ 14px bold)3:14.5:1
UI components & graphics3:13:1
Media Alternatives (1.2)
  • Videos must have captions
  • Audio must have transcripts
  • Pre-recorded video should have audio descriptions (AA)
Keyboard Accessible (2.1)
  • All functionality available via keyboard
  • No keyboard traps
  • Skip links provided
Focus Visible (2.4.7)
  • Focus indicators must have 3:1 contrast ratio
  • Focus indicators always visible (never outline: none without replacement)
Timing (2.2)
  • Users can extend time limits
  • No auto-advancing content without pause control
Target Size (2.5.5 - Level AAA, recommended)
  • Interactive elements: ≥ 44×44 CSS pixels
  • Mobile tap targets: ≥ 48×48 CSS pixels (recommended)
Page Language (3.1.1)
  • <html lang="en"> must be set
  • Language changes marked: <span lang="fr">
Consistent Navigation (3.2.3)
  • Navigation order consistent across pages
  • Navigation mechanisms in same location
Error Identification (3.3.1)
  • Form errors clearly described
  • Error messages associated with fields (aria-describedby)
Labels (3.3.2)
  • All form inputs have labels
  • Labels visible (not placeholder-only)
Valid HTML (4.1.1)
  • No duplicate IDs
  • Properly nested elements
  • Valid ARIA attributes
Name, Role, Value (4.1.2)
  • Interactive elements have accessible names
  • Correct ARIA roles
  • State changes announced

SEO Thresholds

While SEO doesn’t have strict “pass/fail” thresholds like Core Web Vitals, these are recommended targets:

On-Page SEO Targets

ElementTargetMaximumNotes
Title tag50-60 characters~60Google truncates around 600px
Meta description150-160 characters~160Truncates at ~920px
H1 heading1 per page1Primary page topic
URL length< 75 characters< 100Shorter is better
Alt text125 characters250Screen readers may truncate
Internal links per page50-100< 150Avoid excessive linking

Technical SEO Targets

MetricTargetImpact
TTFB (Time to First Byte)< 800msSearch ranking
Core Web VitalsAll “Good”Search ranking
Mobile usability100% passMobile-first indexing
HTTPS100%Ranking factor
Crawl errors0Indexing
Broken links0User experience + crawling

Page Speed Targets for SEO

Google considers page speed as a ranking factor, especially for mobile:
DeviceLCP TargetFCP TargetLighthouse Score
Mobile< 2.5s< 1.8s≥ 90
Desktop< 2.0s< 1.5s≥ 95
Mobile performance is more important for SEO since Google uses mobile-first indexing.

Security Best Practices Thresholds

Security Headers Scores

HeaderRequiredTarget ScoreNotes
HTTPSYesA+Enable HSTS
HSTSYesmax-age ≥ 31536000One year minimum
CSPRecommendedStrictNo unsafe-inline/unsafe-eval
X-Frame-OptionsYesDENY or SAMEORIGINPrevent clickjacking
X-Content-Type-OptionsYesnosniffPrevent MIME sniffing

Vulnerability Thresholds

SeverityActionTimeframe
CriticalImmediate fix required< 24 hours
HighMust fix before deploy< 7 days
MediumShould fix soon< 30 days
LowFix when convenient< 90 days

Summary Table: All Critical Thresholds

Quick reference for the most important thresholds:
MetricTarget
LCP≤ 2.5s
INP≤ 200ms
CLS≤ 0.1
FCP≤ 1.8s
TBT≤ 200ms
Lighthouse Score≥ 90
Page Weight< 1.5 MB
JavaScript< 300 KB

Build docs developers (and LLMs) love