Skip to content
atlookup

Cumulative Layout Shift is Poor (> 0.25)

CLS measures unexpected layout shifts during page load.

warning Impact: high PERF_CLS_POOR 2 min read Updated

Why it matters

CLS measures unexpected layout shifts during page load. Google considers > 0.25 POOR — pages "jump" while loading, frustrating users who try to click. Direct CWV ranking signal.

Schedule a fix in your next sprint. Warnings won't block your site but they consistently leave performance on the table. Estimated SEO impact: high — direct effect on rankings or impressions.

How to fix

  • Set explicit width + height attributes on all <img> tags
  • Reserve space for ads, embeds, dynamic content via min-height
  • Avoid inserting content above existing content (only append below the fold)
  • Use font-display: optional or swap with size-adjust to prevent font-flash shifts

Common causes

If the rule is firing across many pages, the root cause is almost always one of these:

  • Render-blocking third-party scripts (analytics, chat, ads) loaded synchronously in <head>.
  • Hero images served at full original size with no responsive variants.
  • CSS bundle ships every component for every route instead of route-splitting.
  • A single uncached API call dominates time-to-interactive.

Anti-patterns to avoid

Even with the best intentions, these "fixes" make the issue worse — recognise them so you don't ship them:

  • Synchronous third-party scripts in <head>.
  • Serving 4K hero images on mobile because the desktop version "looked fine".
  • Disabling caching headers because "we want fresh content".

How atlookup detects this

Our crawler renders each page with a real headless browser, then collects Core Web Vitals (LCP, CLS, INP), payload sizes, and third-party request counts via Lighthouse. Pages where the rule fires for cumulative layout shift is poor (> 0.25) are flagged on the report.

If you'd like to see this rule fire on your own site, run a free 60-second audit — every page is reported with the exact lines that triggered it.

Tools to verify the fix

Once you've applied the fix, double-check with these external validators:

Frequently asked questions

Why does Cumulative Layout Shift is Poor (> 0.25) matter for SEO?

CLS measures unexpected layout shifts during page load. Google considers > 0.25 POOR — pages "jump" while loading, frustrating users who try to click. Direct CWV ranking signal.

How do I fix cumulative layout shift is poor (> 0.25)?

Set explicit width + height attributes on all <img> tags Reserve space for ads, embeds, dynamic content via min-height Avoid inserting content above existing content (only append below the fold) Use font-display: optional or swap with size-adjust to prevent font-flash shifts

Is this a critical SEO issue?

Schedule a fix in your next sprint. Warnings won't block your site but they consistently leave performance on the table. Estimated SEO impact: high — direct effect on rankings or impressions.

How does atlookup detect cumulative layout shift is poor (> 0.25)?

Our crawler renders each page with a real headless browser, then collects Core Web Vitals (LCP, CLS, INP), payload sizes, and third-party request counts via Lighthouse. Pages where the rule fires for cumulative layout shift is poor (> 0.25) are flagged on the report.

How long does it take to fix?

15–30 minutes per page. Most teams batch similar issues across templates so the per-page time goes down at scale.