Core Web Vitals: Meça e Melhore o Desempenho Web
Você construiu um site rápido, mas os usuários ainda reclamam de lentidão. Ou talvez o Google Search Console mostre que suas páginas têm Core Web Vitals "ruins". Você não está sozinho—muitos desenvolvedores lutam para traduzir métricas de desempenho em melhorias reais. As Core Web Vitals são as métricas centradas no usuário do Google que quantificam carregamento, interatividade e estabilidade visual. Ignorá-las pode prejudicar seu ranking de busca e a satisfação do usuário. Este guia mostra como medir e melhorar cada vital com passos acionáveis.
O que são Core Web Vitals?
Core Web Vitals são um conjunto de três métricas que o Google usa para avaliar a experiência do usuário:
- Largest Contentful Paint (LCP): mede o desempenho de carregamento. Marca o tempo quando o maior elemento de conteúdo (imagem, bloco de texto ou vídeo) se torna visível. Meta: LCP abaixo de 2,5 segundos.
- First Input Delay (FID): mede a interatividade. Registra o tempo desde a primeira interação do usuário (ex.: clicar em um link) até a resposta do navegador. Meta: FID abaixo de 100 milissegundos.
- Cumulative Layout Shift (CLS): mede a estabilidade visual. Quantifica mudanças inesperadas de layout durante o carregamento da página. Meta: CLS abaixo de 0,1.
Essas métricas fazem parte dos sinais de experiência na página do Google e influenciam diretamente o SEO. Mas, mais importante, elas refletem a frustração real do usuário—carregamentos lentos, interações lentas e conteúdo saltando.
Como medir as Core Web Vitals
Você não pode melhorar o que não mede. Existem duas abordagens principais: dados de laboratório (teste sintético) e dados de campo (monitoramento de usuários reais).
Ferramentas de laboratório
- Lighthouse: integrado ao Chrome DevTools, audita o desempenho e fornece pontuações para LCP, FID (como TBT) e CLS. Execute no modo anônimo para evitar que extensões distorçam os resultados.
- WebPageTest: oferece filmstrips detalhados e gráficos waterfall, útil para diagnosticar gargalos de LCP.
- PageSpeed Insights: combina dados de laboratório e de campo, mostrando pontuações do Lighthouse e métricas de usuários reais do Chrome User Experience Report (CrUX).
Ferramentas de campo
- Chrome UX Report (CrUX): conjunto de dados público de métricas de usuários reais para milhões de sites. Acesse via PageSpeed Insights ou BigQuery.
- Google Search Console: no relatório "Core Web Vitals", agrupa URLs por status (ruim, precisa melhorar, bom).
- Biblioteca JavaScript Web Vitals: adicione este snippet ao seu site para coletar métricas via Google Analytics ou seu próprio endpoint.
import {onLCP, onFID, onCLS} from 'web-vitals';
function sendToAnalytics(metric) {
// Substitua pelo seu endpoint de analytics
console.log(metric.name, metric.value);
}
onLCP(sendToAnalytics);
onFID(sendToAnalytics);
onCLS(sendToAnalytics);
Comece com dados de campo para identificar páginas problemáticas, depois use ferramentas de laboratório para investigar as causas.
Melhorando o Largest Contentful Paint (LCP)
O LCP costuma ser a vital mais desafiadora de corrigir. O maior elemento geralmente é uma imagem hero ou um bloco de texto grande. Veja como otimizá-lo:
- Otimize imagens: comprima imagens usando formatos modernos como WebP ou AVIF. Use imagens responsivas com
srcsetesizespara servir imagens com tamanho adequado. Faça lazy-load de imagens abaixo da dobra, mas nunca faça lazy-load da imagem LCP. - Pré-carregue recursos críticos: adicione
<link rel="preload">para a imagem ou fonte LCP. Por exemplo:<link rel="preload" as="image" href="#">. - Elimine recursos que bloqueiam a renderização: adie CSS e JavaScript não críticos. Faça inline do CSS crítico e carregue o restante de forma assíncrona.
- Use uma CDN: sirva ativos de uma content delivery network para reduzir a latência.
- Reduza o tempo de resposta do servidor: otimize consultas de backend, use cache e considere renderização na edge.
Para um aprofundamento, confira o guia de LCP do web.dev.
Melhorando o First Input Delay (FID)
O FID mede a responsividade. Um FID alto significa que a thread principal do navegador está ocupada e não consegue responder à entrada do usuário rapidamente. Para melhorar o FID:
- Divida tarefas longas: divida o JavaScript em partes menores usando
setTimeoutourequestIdleCallback. - Minimize o trabalho na thread principal: reduza o tempo de execução de JavaScript com code-splitting, tree-shaking e remoção de polyfills não utilizados.
- Use web workers para cálculos pesados.
- Evite grandes bundles de JavaScript: audite com
webpack-bundle-analyzere considere lazy-loading de scripts não críticos.
Nota: o FID está sendo substituído pelo Interaction to Next Paint (INP) em março de 2024. As estratégias para melhorar o INP são semelhantes—foque em reduzir o bloqueio da thread principal.
Melhorando o Cumulative Layout Shift (CLS)
O CLS mede mudanças inesperadas de layout. Causas comuns incluem imagens sem dimensões, anúncios, embeds e fontes web. Para corrigir o CLS:
- Sempre inclua atributos width e height em imagens e vídeos. Isso permite que o navegador reserve espaço.
- Reserve espaço para anúncios e embeds: use CSS
aspect-ratioou elementos placeholder. - Evite inserir conteúdo acima do conteúdo existente, a menos que seja em resposta à interação do usuário.
- Use
font-display: swappara fontes web para evitar texto invisível (FOIT), mas esteja ciente de que o swap pode causar mudanças de layout se a fonte de fallback tiver métricas diferentes. Considere usarsize-adjustoufont-display: optional.
Teste com a Layout Instability API no Chrome DevTools para identificar mudanças.
Ferramentas e fluxo de trabalho para monitoramento contínuo
Desempenho não é uma correção única. Configure um fluxo de trabalho:
- Linha de base: execute o Lighthouse em páginas-chave e registre as pontuações.
- Monitore dados de campo: use a biblioteca web-vitals para enviar métricas à sua plataforma de analytics. Configure alertas para regressões.
- Integre ao CI: use o Lighthouse CI para falhar builds se os orçamentos de desempenho forem excedidos.
- Auditorias regulares: agende revisões mensais das Core Web Vitals no Search Console.
Lembre-se de que as melhorias devem ser centradas no usuário, não apenas orientadas por métricas. Um site rápido encanta os usuários e impulsiona o SEO.
FAQ
Quais são os limites atuais para as Core Web Vitals?
LCP: bom ≤ 2,5s, precisa melhorar ≤ 4s, ruim > 4s. FID: bom ≤ 100ms, precisa melhorar ≤ 300ms, ruim > 300ms. CLS: bom ≤ 0,1, precisa melhorar ≤ 0,25, ruim > 0,25.
Com que frequência devo verificar as Core Web Vitals?
Os dados de campo são atualizados diariamente no Search Console, mas tendências significativas levam semanas. Monitore continuamente via analytics e revise mensalmente. Faça testes de laboratório após grandes mudanças de código.
Melhorar as Core Web Vitals realmente afeta o SEO?
Sim, o Google usa a experiência na página como sinal de ranking. Embora o conteúdo continue sendo primário, boas Core Web Vitals podem lhe dar uma vantagem, especialmente em nichos competitivos.
Pronto para otimizar suas imagens para um melhor LCP? Experimente nosso Compressor de Imagens gratuito para reduzir o tamanho dos arquivos sem perda de qualidade.