the blog

A Guide to Improve Cumulative Layout Shift (CLS)


In the fast-paced world of web design and user experience, ensuring visual stability during page loading has become paramount. Suppose you are browsing the web, looking for information on the latest tech gadgets or perhaps planning your next vacation. You click on a promising link, and just as the page begins to load, elements start shifting around like pieces in a puzzle. Buttons jump, images resize, and before you know it, you’ve accidentally clicked on an ad instead of the article you intended to read. Frustrating, isn’t it? This annoying phenomenon is known as Cumulative Layout Shift (CLS), and it’s more than just a minor inconvenience—it’s a critical metric that can make or break user experience on the web.

Imagine you’re booking a flight online, and just as you’re about to click ‘Confirm,’ the ‘Purchase’ button suddenly moves, causing you to click on ‘Cancel’ instead. That split-second movement can lead to abandoned carts, lost conversions, and ultimately, dissatisfied users. In this blog, we’ll delve into the depths of Cumulative Layout Shift, uncovering its causes, its impact on user experience, and how you can combat it to ensure smoother, frustration-free browsing for your audience.

So,

What is the Cumulative Layout Shift (CLS)?

Cumulative Layout Shift (CLS) is a metric used to quantify how much the visual stability of a web page is affected as it loads. It measures the sum of all individual layout shift scores for every unexpected layout shift that occurs during the entire lifespan of the page.

In simpler terms, CLS indicates how much the content on a web page moves around while it’s loading. This movement can be annoying for users, especially if they’re trying to interact with elements that suddenly shift position.

Unexpected layout shifts can happen for various reasons, such as:

1. Images or ads loading slower than other page content.

2. Dynamically injected content pushing existing content down.

3. Fonts load asynchronously, causing text to reflow.

4. Loading of embedded media or iframes.

Why Does CLS Matter?

Imagine trying to click a button on a webpage, only to have it move at the last second, causing you to accidentally click on something else entirely. That’s the frustration CLS can cause for users. These unexpected layout shifts can lead to a poor user experience, increased bounce rates, and ultimately, lost revenue for businesses.

READ MORE: Importance of User Experience Design in eCommerce

How CLS Is Measured?

CLS is measured on a scale from 0 to 1, where a score closer to 0 indicates a more stable visual experience, while a score closer to 1 indicates a more disruptive experience. A CLS score of less than 0.1 is considered good, while a score greater than 0.25 is considered poor. It’s an essential metric for web developers and designers to optimise to ensure a better user experience.

Or, in other words, Cumulative Layout Shift (CLS) is measured by calculating the sum of the individual layout shift scores for every unexpected layout shift that occurs during the lifespan of a web page’s load. Each layout shift is quantified based on the impact it has on the viewport. The score is determined by multiplying the shift distance (how far an element moves) by the impacted area (how much of the viewport is affected).

To break it down further:

1. Impact Fraction: This refers to the portion of the viewport affected by the layout shift. It’s calculated by dividing the intersection area of the unstable element and the viewport by the total viewport area. The Impact Fraction in Cumulative Layout Shift (CLS) is a metric used to quantify the proportion of the viewport that is affected by a particular layout shift event on a web page. It helps measure how much of the user’s visible area is impacted by the movement of content during the page’s loading process.

The Impact Fraction is calculated by determining the ratio of the area affected by the layout shift event to the total area of the viewport. This means that if a layout shift causes a significant portion of the viewport to move or change, the Impact Fraction will be higher.

For example, if a layout shift event causes a banner ad at the top of the page to suddenly appear, pushing down the main content, the Impact Fraction would be relatively high because a large portion of the viewport is affected by this shift.

In the context of calculating the Cumulative Layout Shift score for a web page, the Impact Fraction is one component used alongside the Distance Fraction to determine the severity of layout shifts. By considering both the Impact Fraction and the Distance Fraction for each layout shift event, the CLS score provides a comprehensive measure of the visual stability of a web page during its loading process.

2. Distance Fraction: This represents how far the element moves relative to the viewport. It’s calculated by dividing the distance the element moves by the larger of either the viewport height or width, depending on the direction of movement.

In Cumulative Layout Shift (CLS), the distance fraction is one of the components used to calculate the score for each layout shift event. It represents the distance that the shifted elements move relative to the viewport.

When a layout shift occurs, it causes elements on the webpage to move from their initial position to a new position. The distance fraction quantifies how far these elements have moved compared to the size of the viewport. It is calculated as the distance the shifted elements move divided by the smaller of the viewport’s dimensions (either the width or the height).

For example, let’s say a layout shift causes an element to move horizontally by 50 pixels, and the viewport’s width is 1000 pixels. The distance fraction for this shift would be 50 pixels (distance shifted) divided by 1000 pixels (viewport width), resulting in a distance fraction of 0.05.

The distance fraction, along with the impact fraction (which represents the proportion of the viewport affected by the shift), is used to calculate the score for each layout shift event. These scores are then summed to obtain the cumulative layout shift score for the page, which helps assess the visual stability of the webpage during its loading process.

3. Layout Shift Score: The layout shift score for a single shift event is obtained by multiplying the impact fraction by the distance fraction.

What is a Good CLS Score?

The cumulative layout shift score is the sum of all individual layout shift scores that occur during the page load.

As for what constitutes a good CLS score, Google’s Web Vitals initiative provides guidance. As of my last update, a CLS score of less than 0.1 is considered good. This means that, on average, most of the visible elements on the page shift less than 10% of the viewport size. However, aiming for a lower score, ideally as close to 0 as possible, is advisable to ensure a smoother and more stable user experience.

Steps to Improve CLS

Improving Cumulative Layout Shift (CLS) is crucial for enhancing user experience on websites by ensuring visual stability during page loading. CLS occurs when elements on a webpage shift unexpectedly, often leading to user frustration or confusion. To mitigate CLS and provide a seamless browsing experience, several strategies can be employed.

  • Firstly, setting explicit sizes for elements such as images, videos, and advertisements is essential. By specifying dimensions using attributes like width and height in HTML or CSS, browsers can reserve space for these elements during page rendering. This prevents sudden layout shifts caused by the asynchronous loading of content and ensures that the page layout remains stable.
  • Avoiding dynamic content insertion or implementing it judiciously is crucial for preventing layout shifts. When adding content dynamically, ensure that space is reserved for it beforehand or use placeholder elements with identical dimensions to minimise disruptions to the layout. Additionally, optimising the loading of fonts and web fonts can help mitigate CLS. Using system fonts or locally hosted fonts reduces reliance on external resources, while implementing font-display: swap; ensures that text remains visible even if web fonts are still loading, preventing shifts in text layout.
  • Implementing lazy loading for offscreen images and other non-critical resources is another effective strategy. Lazy loading delays the loading of content until it is about to come into view, reducing initial page load times and minimising layout shifts. Additionally, minimising the use of ads and third-party content on web pages can significantly reduce CLS. If third-party content is necessary, loading it asynchronously or isolating its layout impact using iframe sandboxing can help mitigate layout shifts.
  • Regular monitoring and testing of CLS using tools like Google Page-Speed Insights, Lighthouse, or Chrome DevTools are essential for identifying and addressing instances of unexpected layout shifts. Conducting usability tests allows developers to observe user interactions and identify areas where layout shifts may occur, enabling them to implement appropriate solutions.

Let Us Conclude!

Mastering Cumulative Layout Shift (CLS) is pivotal for delivering an exceptional user experience on your website. By implementing a combination of strategies such as setting explicit sizes for elements, preloading critical resources, judiciously inserting dynamic content, optimising font loading, lazy loading non-critical resources, and minimising third-party content, you can significantly reduce layout shifts and ensure visual stability during page loading.

Remember, a smooth browsing experience not only keeps users engaged but also boosts conversion rates and enhances your website’s credibility. So, take the necessary steps to improve CLS today and provide your visitors with a seamless journey through your digital marketing world.

Ready to enhance your website’s performance and user experience? Start implementing these CLS improvement strategies now and watch your website thrive!

Join 18th digitech in creating a more visually stable web experience! Implement these strategies today and see the difference in user engagement tomorrow. Contact 18th Digitech now!