How to Fix Speed Index
Speed Index measures how quickly the visible content of a page is populated. Learn how to improve visual completeness during load and lower your Speed Index score.
What Lighthouse Is Telling You
When Lighthouse flags Speed Index, it means the page’s visible content is populating slowly. Speed Index carries a weight of 10 in the Performance score. Unlike metrics that measure a single moment (FCP or LCP), Speed Index captures how quickly the entire viewport becomes visually complete. A page that shows content progressively scores better than one that stays blank for three seconds and then renders everything at once.
Lighthouse calculates Speed Index by capturing video frames of the page loading and computing the area under the visual progress curve.
Why Speed Index Is High
- Render-blocking resources — CSS and synchronous JavaScript prevent any rendering, keeping the screen blank
- Large above-the-fold images — Unoptimized images in the viewport load slowly, delaying visual completeness
- Font loading issues —
font-display: blockhides text until the font loads, creating gaps in visual progress - Client-side rendering — SPA frameworks that render on the client show a blank or skeleton state until JavaScript executes
- Heavy main thread work — Long JavaScript tasks delay rendering between frames
The Old Way to Fix It
- Run Lighthouse and note the Speed Index value
- Record a performance trace and watch the filmstrip to see where visual progress stalls
- Identify which resources are blocking rendering
- Inline critical CSS, defer scripts, optimize images
- Test again and compare filmstrips
- Iterate until visual progress is smooth
Speed Index is hard to optimize directly because it is a composite measure. You typically fix it by fixing the underlying issues: render-blocking resources, unminified CSS, and slow image loading.
The Frontman Way
Tell Frontman to fix your Lighthouse issues. That is the entire workflow.
Frontman has a built-in Lighthouse tool. It runs the audit, reads the failing scores, fixes the underlying code, and re-runs the audit to verify the score went up. If issues remain, it keeps going — iterating through fixes and re-checks until the metrics pass. You do not compare filmstrips or correlate visual progress stalls with specific resources. You say “fix the Lighthouse issues on this page” and Frontman handles the rest.
Key Fixes for Speed Index
- Eliminate render-blocking resources — Inline critical CSS, defer non-critical CSS and JavaScript
- Optimize above-the-fold images — Compress, serve in modern formats (WebP/AVIF), and set explicit dimensions
- Use
font-display: swap— Show text immediately with a fallback font instead of hiding it - Server-side render or statically generate — Send pre-rendered HTML so the browser can start painting without waiting for JavaScript
- Reduce main thread blocking — Cut TBT to let the browser render frames between JavaScript tasks
- Preload key resources —
<link rel="preload">for fonts, hero images, and critical scripts
People Also Ask
Is Speed Index a Core Web Vital?
No. The three Core Web Vitals are LCP, CLS, and Interaction to Next Paint. Speed Index is a Lighthouse-specific lab metric.
Why is my Speed Index high even though FCP is fast?
FCP fires when the first content appears, which could be a small element like a navigation bar. If the rest of the viewport takes a long time to fill in — because of large images, lazy-loaded sections, or slow JavaScript rendering — Speed Index will still be high.
Does skeleton UI help Speed Index?
Yes. Skeleton screens paint placeholder shapes immediately, which increases the visual completeness score at each frame. The page appears to load progressively even while data is still fetching.
How does HTTP/2 affect Speed Index?
HTTP/2 multiplexes multiple requests over a single connection, allowing the browser to download CSS, JavaScript, and images simultaneously. This speeds up visual progress compared to HTTP/1.1, which downloads resources sequentially per connection.
You can use Frontman to automatically fix this and any other Lighthouse issue. Frontman runs the audit, reads the results, applies the fixes, and verifies the improvement — all inside the browser you are already working in. Get started with one install command.