Back to glossary

Cumulative Layout Shift (CLS)

A Core Web Vital that measures the total amount of unexpected layout shifts that occur during a page's entire lifespan. Good CLS is 0.1 or less, where layout shifts are calculated from the impact and distance of moving elements.

CLS quantifies the visual instability users experience when page elements move unexpectedly. This includes images loading without reserved space pushing content down, ads injecting above existing content, or dynamically loaded fonts causing text reflow. Each unexpected shift is scored based on how much of the viewport was affected and how far elements moved.

For product teams, CLS directly impacts user trust and conversion. Users who click a button only to have the page shift and accidentally click something else have a terrible experience. Fix CLS by always specifying width and height attributes on images and videos, reserving space for ads and embeds with CSS aspect-ratio or min-height, preloading web fonts with font-display: optional or swap, and avoiding dynamic content insertion above existing content. For Next.js applications, the Image component handles dimension reservation automatically. Monitor CLS in the field through Chrome UX Report data, as lab-based testing often misses layout shifts caused by third-party scripts or slow-loading ads.

Related Terms