CLS: por que o seu site "pula" enquanto carrega e como parar com isso
Você vai clicar num botão e a página pula — e você clica no anúncio. Isso é CLS, e o Google mede. Veja as causas mais comuns e como eliminá-las.
Por Equipe We Codex3 min de leitura
Poucas coisas irritam mais do que um texto que desce de repente enquanto você lê, ou um botão que muda de lugar no instante do toque. O Google chama isso de CLS (Cumulative Layout Shift) e usa como fator de experiência. Abaixo de 0,1 é bom; acima de 0,25, ruim.
Causa 1: imagens sem dimensões
Sem width e height, o navegador não sabe quanto espaço reservar e empurra tudo quando a imagem chega.
<img src="/foto.webp" width="800" height="600" alt="..." />Com CSS height: auto, ela continua responsiva e o espaço fica reservado.
Causa 2: fontes que trocam
A página aparece com uma fonte do sistema e, ao carregar a fonte da marca, o texto muda de largura e tudo se move. Os ajustes estão em Fontes web sem travar a página: font-display, subset e auto-hospedagem.
Causa 3: conteúdo injetado no topo
Banners de cookies, avisos e barras promocionais que surgem empurrando a página. Reserve o espaço desde o início ou use sobreposição fixa.
Causa 4: embeds e anúncios
Vídeos, mapas e widgets de terceiros chegam depois e com tamanho desconhecido. Envolva cada um num contêiner com proporção definida — o passo a passo está em Embeds, mapas e vídeos: como incorporar sem destruir a performance.
Causa 5: carregamento sem esqueleto
Listas que aparecem do nada, empurrando o rodapé. Skeletons com o tamanho final resolvem e ainda melhoram a percepção de velocidade (Feedback assíncrono: por que trocar spinners genéricos por skeleton screens).
Como encontrar o culpado
No Chrome, o painel Performance destaca as mudanças de layout. O PageSpeed Insights também aponta os elementos que mais se moveram. Comece pelos maiores.
Fecha a tríade
O CLS é uma das três métricas do Core Web Vitals; as outras são LCP e INP — o panorama completo está em Como otimizar a performance de aplicações React e React Native para passar no Core Web Vitals.
Layout estável é padrão nos sites da We Codex. Veja também Performance WPO ou fale com a gente.
- CLS
- Core Web Vitals
- Layout
- Performance
Resolver de vez, com quem faz isso todo dia
Seu site precisa carregar em menos de um segundo e converter mais?
Este artigo mostra o caminho. A implementação sob medida — o detalhe que muda o resultado no seu caso — é o trabalho da We Codex, empresa de engenharia do grupo Wocom.
Continue lendo
Tudo sobre Web & Performance- Ler artigo
Web & Performance3 min
Fontes web sem travar a página: font-display, subset e auto-hospedagem
Texto invisível por segundos ou página que muda de fonte e pula. Veja como carregar fontes da marca sem prejudicar LCP e CLS.
- Ler artigo
Web & Performance3 min
Embeds, mapas e vídeos: como incorporar sem destruir a performance
Vídeo do YouTube, mapa, widget de avaliações. Cada embed traz peso e deslocamento de layout. Como incorporar conteúdo externo sem prejudicar o site.
- Ler artigo
Web & Performance3 min
Como otimizar a performance de aplicações React e React Native para passar no Core Web Vitals
LCP, INP e CLS no vermelho mesmo com React moderno? Veja onde a performance realmente se perde e o que ajustar primeiro, na web e no app.