What Is CLS in SEO?

CLS stands for Cumulative Layout Shift. It scores how much your content jumps around while a page is loading. Under 0.1 is the passing mark. Google counts it as one of the three Core Web Vitals, so it does feed into ranking.

The repair list gets covered properly elsewhere on this site. So does the question of how much Core Web Vitals actually move a position. Neither one gets repeated here.

What almost nobody explains is what the score is a report about.

Your CLS Score Describes a Visit, Not a File

Your page is a file. The same markup goes out to everybody. Your stylesheet does not change between visitors. Neither does the server.

CLS scores none of that. It scores what happened on one screen during one visit.

Picture two people opening the identical URL. One sits in an office on fibre with a warm cache. The other is on a phone on the train, watching an ad slot fill in three seconds late. Same file. Two different numbers.

So the score is not a property of your website. Rather it is a summary of an experience your website produced once, for one person.

Cumulative Stopped Meaning Total

The first word misleads almost everybody, though. Cumulative sounds like addition. Every jump on the page, added up into one running total.

It did work that way once. Google changed the definition in 2021.

Now the browser sorts shifts into windows. A window opens at the first shift. More shifts keep it open, to a maximum of five seconds. One quiet second closes it.

Your CLS is the worst window. Never the sum of all of them.

That matters enormously for long pages. Infinite scroll used to punish a site for existing. Twenty small shifts spread across a four-minute read no longer stack into one ugly total. Only the worst burst counts now.

Your Own Scrolling Is Half of CLS

Here is where the number stops describing your code.

Shifts get measured for as long as somebody stays on the page. Scroll down and a lazy-loaded image arrives. The paragraph beneath it drops forty pixels. That is a shift. CLS measures it.

So a reader who works down to the bottom creates more chances to shift. Someone who bounces after two seconds creates fewer. Same page. More exposure.

Meanwhile your testing tool loads the page and sits still. It does not scroll. Nothing below the fold ever gets requested.

Which is why lab numbers on CLS tend to read cleaner than field numbers. That lab visit was short and obedient.

Movement You Asked For Does Not Count

One more rule. A fair one, too.

The browser excludes anything that moves within half a second of a click or a tap. Open an accordion and the content underneath drops. No penalty. Tap a menu and the page reorganises itself. Still no penalty.

Google’s reasoning here is straightforward enough. You asked for that movement, so nothing about it surprised you.

CLS only cares about movement nobody requested. The cookie banner that arrives after you started reading. That button sliding out from under your thumb.

A Tool Handed Me a Number, So It Measured Something

Fair objection. PageSpeed Insights returns a CLS figure. Lighthouse returns one too. Neither number is fiction.

Look at what produced it, though. The tool opened your page on a simulated device. It waited a few seconds. Then it recorded whatever moved during that time.

That is a visit. Just an unusual one. Nobody scrolled, nobody dismissed a consent banner, no ad network was having a slow afternoon.

So the objection proves the point instead of denying it. No tool can hand you a CLS number without simulating a visitor first. It simply simulated a very cooperative visitor.

Which CLS Number Google Actually Counts

Field data. Real Chrome users, gathered across a rolling window. That is the set the ranking systems read.

Your lab score is a diagnostic. It is useful for finding what moves. Useless, though, as evidence that nothing does.

Plenty of Calgary businesses have shown me a green Lighthouse report while Search Console flagged the very same URLs. Both were correct. They were describing different visitors.

The green report came from one scripted load in a data centre. Search Console had a month of phones on Alberta mobile networks. Only one of those two sets is a customer.

What That Changes About Fixing It

None of this is really a speed problem, incidentally. A page can load quickly and still shift.

The repairs themselves are old news. Width and height attributes on images. Reserved space for ads and embeds. Font loading that does not swap one size for another mid-render. A site audit will name the specific elements moving on your pages.

What changes is how you verify.

Fixing CLS and proving it fixed are two separate jobs. The first happens in your code, this afternoon. Real visitors decide the second one. Weeks, usually.

That gap catches people out constantly. They ship the fix, they retest in Lighthouse, they see identical field data. Nothing is broken. The report is still counting last month.

Where the CLS Argument Stops

None of this turns CLS into a big ranking lever. It is not one.

Take a page scoring a perfect zero with nothing worth reading. It still loses to a page that shifts a little and answers the question. Core Web Vitals break ties between close competitors. That is the real size of it. Fix your CLS and your keyword targeting stays exactly as wrong as it was before.

Worth fixing anyway. Layout shift tends to cost you taps well before it costs you positions.

Go and Watch Your Own Page Load

Open your own site on your phone. Not on the desktop where the cache is already full. Load it cold, then scroll to the bottom at the pace a customer would.

Watch what moves. You are measuring your own CLS there, roughly, before any tool hands you a number.

Do it again with the ad blocker switched off, too. Ad slots and consent banners are usually where the shifting starts on a small business site.

Most site owners have never once done this.

Core Web Vitals Work at To-The-TOP! in Calgary

SEO Company To-The-TOP! has worked on Calgary websites since 2007. Layout shift almost always turns up during an audit rather than because a client asked. Nobody phones about CLS.

One person handles the work here. No junior handoffs. The same person who found the shift explains it to your developer.

Both search engine optimization and Google Ads management run out of the same office. So a page repaired for organic visitors becomes a steadier landing page for paid traffic too. Ongoing SEO support covers the retesting nobody remembers to do.

Call (403) 308-5949 if something on your site is jumping.

Common Questions About CLS and SEO

What is a good CLS score?

Under 0.1 passes. Anything above 0.25 is scored as poor. The measurement has no unit attached, so it is not seconds or pixels.

Why does Lighthouse show a clean CLS when Search Console does not?

Different visitors. Lighthouse ran one short scripted load with no scrolling. Search Console reports what real people met, including everything that arrives further down the page.

What causes layout shift most often?

Images without dimensions set. Ads and embeds with no space reserved for them. Web fonts that swap and resize the text underneath.

How long until a CLS fix shows in Search Console?

Weeks. The report runs on a rolling collection window, so old visits keep counting until they age out of it.

Does CLS matter more on mobile?

Usually. Narrow screens amplify small movements. A thumb is also hovering already, right over the spot where a button was.

Contact SEO Company To-The-TOP! in Calgary

Questions about anything in this article, or about your own rankings? Talk to a Calgary SEO specialist directly.

Phone: (403) 308-5949
Address: 1509 14 Ave SW, Calgary, AB T3C 0W4

Hours:
Monday to Friday: 10:00 am – 7:00 pm
Saturday: 12:00 pm – 4:00 pm
Sunday: closed

Greg Ichshenko

Calgary SEO expert and digital marketing specialist,
developing advertising strategies for businesses of all sizes

(403) 308-5949

greg@to-the-top.ca
1509 14 Ave SW, Calgary,
AB T3C 0W4

    Submit your request or question, and I will get back
    to you shortly

    Please prove you are human by selecting the star.