Lighthouse Performance Score
Understanding and optimizing your site's loading speed and responsiveness.
What is the Performance Score?
The Lighthouse Performance score is a weighted average of several metrics that measure how quickly your page loads and becomes interactive. A score of 90 or above is considered good, 50-89 needs improvement, and below 50 is poor.
Performance Score Thresholds
90-100
Good
50-89
Needs Improvement
0-49
Poor
How the Score is Calculated
The Performance score is a weighted combination of these metrics:
*TBT is a lab metric that correlates with INP (the field metric). In lab tests, TBT is used; in real user monitoring, INP is the standard.
Key Performance Metrics Explained
First Contentful Paint (FCP)
Time until the first text or image is painted on screen.
Good: ≤ 1.8s | Needs Improvement: ≤ 3.0s | Poor: > 3.0s
Largest Contentful Paint (LCP)
Time until the largest content element is rendered in the viewport.
Good: ≤ 2.5s | Needs Improvement: ≤ 4.0s | Poor: > 4.0s
Total Blocking Time (TBT)
Sum of time periods between FCP and Time to Interactive when task length exceeds 50ms.
Good: ≤ 200ms | Needs Improvement: ≤ 600ms | Poor: > 600ms
Cumulative Layout Shift (CLS)
Measures visual stability by summing unexpected layout shift scores.
Good: ≤ 0.1 | Needs Improvement: ≤ 0.25 | Poor: > 0.25
Speed Index
Measures how quickly content is visually displayed during page load.
Good: ≤ 3.4s | Needs Improvement: ≤ 5.8s | Poor: > 5.8s
Top Performance Optimization Strategies
1. Optimize Images
Images are typically the largest assets on a page. Optimizing them has the biggest impact.
- Use modern formats (WebP, AVIF)
- Implement responsive images with
srcset - Lazy load offscreen images
- Preload LCP images with
fetchpriority="high" - Use a CDN with automatic image optimization
2. Minimize JavaScript
JavaScript is the most expensive resource - it must be downloaded, parsed, and executed.
- Code split and lazy load non-critical JavaScript
- Remove unused code (tree shaking)
- Defer non-critical scripts
- Avoid large third-party libraries when possible
- Use Web Workers for heavy computations
3. Optimize CSS Delivery
CSS blocks rendering until it's fully downloaded and parsed.
- Inline critical CSS for above-the-fold content
- Load non-critical CSS asynchronously
- Remove unused CSS
- Minify CSS files
4. Use Caching Effectively
Proper caching reduces server load and speeds up repeat visits.
- Set long cache lifetimes for static assets
- Use content hashing in filenames for cache busting
- Implement a CDN for global distribution
- Consider service workers for offline caching
5. Reduce Layout Shifts
Layout shifts frustrate users and hurt your CLS score.
- Always include width/height on images and videos
- Reserve space for ads and embeds
- Use
font-display: optionalfor web fonts - Avoid inserting content above existing content
Performance Diagnostics
Lighthouse provides detailed diagnostics to help identify performance issues:
Opportunities
Suggestions that could speed up page load, with estimated savings.
Diagnostics
Additional information about performance issues that don't directly affect the score.
Passed Audits
Best practices you're already following correctly.
Treemap
Visual breakdown of JavaScript bundle sizes and coverage.
Quick Wins for Performance
- Enable text compression (gzip/Brotli)
- Serve images in WebP format
- Add
loading="lazy"to offscreen images - Preconnect to required origins
- Use a CDN for static assets