You go to tap a button. Just as your thumb comes down, an image loads above it, everything jumps, and you tap an ad instead. Annoying, right? That little jump is a layout shift, and when it keeps happening as a page loads, Google measures it as CLS.
CLS stands for Cumulative Layout Shift. It is one of Google’s Core Web Vitals — the small set of numbers Google uses to score how your page feels to a real visitor. A high score means your content moves around a lot while it loads. A low score means it stays put, which is what everyone wants.
Here is the good news. This is one of the more fixable problems on a website, and you almost never need to rebuild anything. At ZenWeb, we clean up CLS on Malaysian business sites most weeks, and the page feels calmer straight after. This guide covers what CLS is, how to measure it, what causes it, what it costs you, and how to stop it. The short video below from Google walks through the same fixes.
Source video: Google Search Central on YouTube
Quick Answer: Cumulative Layout Shift is a Core Web Vital that measures how much the visible content on your page moves around unexpectedly as it loads. Every time something jumps and pushes other things out of the way, Google adds it up. The higher the total, the more jarring your page feels to visit.
Think of the browser laying out your page piece by piece. If an image arrives late with no space saved for it, everything below gets shoved down to make room. That shove is a layout shift. Google scores it by how much of the screen moved and how far it travelled, and Google’s own guidance on web.dev explains how those two parts combine into one number.
A shift is only counted when the visitor did not cause it. Tapping a “read more” button that opens a panel is fine — you asked for it. An image loading and knocking the text down while you read is not. The table below shows the three scoring bands and what each one feels like on a real visit.
| CLS score | Google rating | What it feels like |
|---|---|---|
| 0.1 or less | Good | Page stays put; nothing jumps as it loads |
| 0.1 to 0.25 | Needs improvement | Noticeable jumps; the odd misclick |
| Above 0.25 | Poor | Content jumps a lot; tapping feels risky |
Source: Google Core Web Vitals thresholds, web.dev, 2024–2026.
Quick Answer: Run your page through Google PageSpeed Insights and read the CLS number in the Core Web Vitals section. It gives you both a lab score and, where there is enough traffic, a real-visitor score. Lighthouse, Search Console, and Chrome DevTools show the same thing with more detail on what is moving.
You cannot fix a shift you have not seen, so start by measuring. Each free tool below reports your CLS, and most of them point to the exact elements doing the jumping.
Test a few pages, not just the home page, and always test on a phone — shifting is usually worse on mobile, where a narrow screen and a slower connection give late elements more room to push things around. If your page also loads slowly on mobile, the two problems tend to travel together. If the report looks confusing, our web design and maintenance team can read it and tell you what actually matters.
Not sure what your CLS score is telling you?
We run the report, find what is jumping, and show you the quickest safe fix. See our web design and maintenance service →
Quick Answer: Layout shift happens when an element loads without space saved for it and pushes the content around it out of place. The main culprits are images and videos with no width and height set, ads and embeds that arrive late, web fonts that swap in after the text, and banners injected above what is already on screen.
When we look at a shifting Malaysian site, the causes fall into a familiar pattern. The chart below shows how often each one is the main reason behind a poor CLS score.
| Root cause | Share of cases |
|---|---|
| Images and video with no width or height set | 34% |
| Ads, embeds, and iframes with no reserved space | 24% |
| Web fonts swapping in late | 18% |
| Banners or notices injected above the content | 14% |
| Dynamic content and late-loading CSS | 10% |
Source: ZenWeb client tracking across Malaysian SME sites, 2024–2026. Shares rounded.
Images lead the list by a wide margin, and it is nearly always the same reason: the image tag has no width and height, so the browser leaves it zero space, then reflows the page once the file arrives. The same thing happens with heavy images that are slow to load — the bigger the file, the longer the gap before the jump. Most of these causes share one fix, which is to tell the browser how much room to save before anything loads.
Quick Answer: Layout shift costs you the visitor who taps the wrong thing, gets frustrated, and leaves. A page that jumps feels broken even when it is not, so trust drops before anyone reads your offer. It also drags on your Core Web Vitals, which weakens both your ranking and the quality score behind your ads.
The damage is quiet because people rarely blame the shift — they just feel the page is clumsy and go elsewhere. The table below models a site with around 3,000 visitors a month, where the jumpy layout pushes roughly one in fourteen extra visitors away.
| Left unfixed for | Visitors hitting the jumpy page | Extra visitors lost | Leads missed (value) |
|---|---|---|---|
| 1 month | ~3,000 | ~210 | ~4 (~RM 2,000) |
| 3 months | ~9,000 | ~630 | ~13 (~RM 6,500) |
| 6 months | ~18,000 | ~1,260 | ~25 (~RM 12,500) |
| 12 months | ~36,000 | ~2,520 | ~50 (~RM 25,000) |
Source: Illustrative scenario modeled on ZenWeb client averages (~3,000 visitors/month, ~7% shift-driven drop-off, RM 500 average lead value), Malaysia, 2024–2026. Your figures will vary.
The sting is sharper when you are paying for the clicks. A jumpy landing page weakens the page experience Google scores your ads on, so every ringgit works a little less hard, and the same neglect can even get your Google Ads disapproved when the destination fails Google’s checks. Fix the shifting and you stop paying twice for the same visitor.
Is a jumpy page costing you leads and ad spend?
We stabilise your layout and prove the gain with before-and-after Core Web Vitals reports. Get a steadier site from our team →
Quick Answer: Stop layout shift by reserving space for everything before it loads. Set width and height on every image and video, give ads and embeds a fixed box, preload your key fonts, and stop injecting banners above the content. Then test on a phone and clear the cache to confirm the score dropped.
Work through these in order and re-test after each one. They run from the fix that clears the most shift for the least effort down to the finer tuning.
One caution: fixing CLS can pull against speed work. Deferring and lazy-loading files to clear render-blocking scripts that slow you down can reintroduce shift if those files change the layout when they finally run. Change one thing at a time, re-test, and you will know exactly which change moved the number.
Quick Answer: Not every fix is worth the same effort. Setting image and video dimensions gives the biggest drop in CLS for the least work, so start there. Reserving space for ads and preloading fonts take a little more, while reworking a theme that shifts badly is a bigger job saved for when the lighter fixes are not enough.
Short on time? Start at the top. The table ranks the common fixes by effort against the typical improvement we see on Malaysian sites.
| Fix | Effort | Typical impact | Best for |
|---|---|---|---|
| Set image and video dimensions | Low | Large | Almost every site |
| Reserve space for ads and embeds | Low to medium | Large | Sites with ads, maps, videos |
| Preload fonts, set font-display | Medium | Medium | Font-heavy designs |
| Fix injected banners and notices | Low to medium | Medium | Sites with cookie bars, promos |
| Rework a theme that shifts badly | High | Large | Old or bloated builds |
Source: ZenWeb client work across Malaysian SME sites, 2024–2026. Improvement ranges are typical, not guaranteed.
The pattern rewards starting light. Image dimensions and reserved ad space sit at the top because they clear most of the shift in an afternoon; the heavier jobs only earn their place once the easy wins are done. Rebuilding a theme to chase a shift that an image-size fix would have solved is the most common way people overspend here. When you would rather have the whole build done right, a professionally built and maintained website keeps CLS low from the start.
Quick Answer: Adding image dimensions and a caching plugin is safe to do yourself. Call for help when the shift comes from the theme or a page builder, when reserving space keeps breaking the layout, or when the site drives real revenue and you cannot risk a live edit going wrong.
Plenty of this is do-it-yourself, and many sites clear their CLS with image sizes and a plugin. But some situations are worth handing over rather than risking a live, lead-earning site.
While you are in there, check the rest of the site too. A jumpy page is a poor start, but a website that is down and not loading loses every visitor outright, and a layout that is broken on mobile does much the same on phones. Our web design and maintenance service keeps the whole site stable, fast, and steady as it loads.
Layout shifting is easy to overlook because it hides in the first second of a page load, but that little jump is enough to make a visitor tap the wrong thing and decide your site feels clumsy. The cause is almost always space that was never reserved, not your content, and the cure follows the same order every time: set your image and video sizes, give ads and embeds a fixed box, sort out the fonts, then re-test on a phone. Most sites move from poor to good after the first two.
Get the page to hold still and everything downstream improves — visitors trust it, your Core Web Vitals lift, and your ads stop paying for clumsy clicks. If your layout keeps jumping and you would rather have it sorted properly, ZenWeb can help. We stabilise CLS and keep your site steady with an ongoing web design and maintenance plan.
Is your page jumping around as it loads?
Book a free 30-minute session — we’ll run your page through PageSpeed, find what is shifting, and give you a clear plan to stop it and keep your layout steady.
A good CLS score is 0.1 or less. Between 0.1 and 0.25 needs improvement, and anything above 0.25 is rated poor. The score has no unit — it is the total of how much your content moved and how far, added up across the whole page load. Aim to keep it under 0.1 on both mobile and desktop.
It jumps because something loads without space saved for it and pushes everything else out of the way. The usual causes are images and videos with no width and height set, ads or embeds arriving late, and web fonts swapping in after the text. Reserve space for each of these and the jumping stops.
Yes, indirectly. CLS is one of Google’s Core Web Vitals, which feed into the page experience signals Google uses to rank pages. A poor score will not sink a great page on its own, but between two similar pages it can be the tie-breaker, and it always makes the visit worse for your reader.
No, but it is usually worse on mobile. A narrow screen and a slower connection give late-loading elements more room and more time to push content around, so the same page often scores fine on desktop and poorly on a phone. Always test your CLS on mobile, since that is where most Malaysian visitors land.
You can fix a lot of it yourself. Setting image dimensions and turning on a caching or optimization plugin clears most of the shifting on a typical WordPress site. Call a developer when the shift comes from the theme, when reserving space keeps breaking your responsive layout, or when the site earns real revenue and you cannot risk a live edit.
Complete the form and our team will contact you to discuss your goals. Let’s grow your business.

Online