Core Web Vitals and Page Speed
Cls Fixing Layout Shift Without a Developer
Find and fix the most common causes of layout shift using CSS-only techniques a non-developer can apply.
Reading time · unlocks the next lesson
0:00 / 5:00 · pausedWhat triggers a layout shift
CLS is calculated by multiplying the impact fraction (how much of the viewport moved) by the distance fraction (how far it moved), summed across unexpected shifts during the page's lifecycle. Shifts caused by user interaction within 500ms are excluded, which is why a menu opening on click does not count but an ad loading in unannounced does.
Reserving space for images and embeds
The single most common cause is images without width and height attributes, which collapse to zero height until they load and then push content down. Adding explicit width and height attributes (or an aspect-ratio CSS property) lets the browser reserve the correct space before the image arrives, even when the layout is otherwise responsive.
- Add width and height attributes to every <img> tag
- Use aspect-ratio in CSS for responsive containers
- Reserve a fixed-height slot for ads before they load
- Set min-height on embed containers (maps, videos, social posts)
Fonts and dynamically injected content
Web fonts that load after a fallback font is displayed cause a visible reflow known as Flash of Unstyled Text; using font-display: optional or matching fallback font metrics reduces the jump. Cookie banners, promotional bars, and 'sign up' prompts that inject above existing content are also frequent offenders; anchoring them to a fixed position or reserving space at build time avoids pushing the page down.
A no-code audit workflow
Open Chrome DevTools' Performance panel, record a page load, and look for red 'Layout Shift' entries in the Experience row; clicking one highlights the exact element that moved. This lets a non-developer identify the culprit precisely enough to write a specific, actionable ticket instead of a vague 'fix layout shift' request.
Tracking CLS fixes in RankAudit
RankAudit's CLS element viewer lists every shifting element found during a crawl with a screenshot of before and after states, so you can confirm a CSS fix actually resolved the shift before asking a developer to deploy it more broadly.
Key takeaways
- ✓Add explicit width/height or aspect-ratio to every image
- ✓Reserve fixed space for ads and embeds before they load
- ✓Fix font-loading reflow with font-display and matched fallbacks
- ✓Use DevTools' Performance panel to pinpoint the exact shifting element
Why this lesson matters
This lesson belongs to Core Web Vitals and Page Speed, the part of Technical SEO Excellence where the goal is: diagnose and resolve the specific rendering and interaction bottlenecks that drag down core web vitals.
Read it once, then do it straight away on a real site inside RankAudit. Nothing here is theory for its own sake — every step produces something you can show a client.
Do it now
- 1Open RankAudit with sample data already loaded, so you are not stuck on setup.
- 2Crawl a site and triage the issue list.
- 3Use RankAudit's field and lab data views to trace each Core Web Vital back to the exact element or script causing it.
