15 de Março de 2025
Core Web Vitals: o que são e o que realmente afeta o score
Uma leitura prática de LCP, INP e CLS para quem precisa melhorar experiência real, não só agradar ferramenta.
Andrews Ribeiro
Founder & Engineer
4 min Intermediario Sistemas
O problema
Tem muita discussão de performance que vira culto a score.
A página tira nota ruim no Lighthouse e pronto: o time entra em pânico.
O problema é que isso costuma misturar três coisas diferentes:
- a métrica
- a causa
- a prioridade de negócio
Sem separar essas camadas, o time começa a otimizar número em vez de experiência.
Modelo mental
Core Web Vitals tentam medir três perguntas simples:
- o usuário viu o conteúdo principal cedo?
- a página respondeu rápido quando ele interagiu?
- a interface ficou estável ou saiu pulando?
Hoje, isso costuma aparecer como:
- LCP
- INP
- CLS
Se quiser resumir:
Core Web Vitals são uma tentativa imperfeita, mas útil, de medir carregamento, resposta e estabilidade do que o usuário realmente percebe.
O ponto importante é que a sigla não explica a causa.
A sigla só aponta onde olhar.
Quebrando o problema
LCP: o conteúdo principal apareceu tarde?
LCP olha para quando o elemento de conteúdo mais relevante ficou visível.
Na prática, isso costuma sofrer por causa de:
- HTML demorando para chegar
- recurso crítico pesado, como imagem hero
- CSS ou JS atrasando renderização
- CPU travada hidratando ou executando script demais
Então LCP ruim não é “problema de imagem” por definição.
Pode ser imagem.
Pode ser rede.
Pode ser render.
Pode ser JavaScript demais no caminho.
INP: a interface respondeu tarde?
INP olha para responsividade em interação.
É a métrica que tenta capturar aquela sensação de clicar e o app demorar para reagir.
Normalmente piora com:
- tarefa longa no main thread
- handler pesado
- renderização cara depois do evento
- excesso de JavaScript disputando CPU
CLS: a tela ficou sambando?
CLS mede instabilidade visual.
O usuário vai clicar em uma coisa, a tela mexe, e ele clica em outra.
As causas mais comuns são:
- imagem sem dimensão reservada
- bloco inserido acima do conteúdo
- fonte trocando layout tarde
- anúncio ou embed mudando tamanho depois
Score não substitui leitura do fluxo
Uma página pode ter score bom e ainda frustrar em um fluxo importante.
Outra pode ter score mediano, mas resolver rápido o que o usuário precisa.
Por isso performance madura não pergunta só “quanto deu?”.
Pergunta também:
- em qual dispositivo?
- em qual página?
- em qual etapa do fluxo?
- com qual impacto no usuário?
Exemplo simples
Imagine uma landing page com hero grande, fonte externa e script de analytics carregando cedo demais.
O score mostra:
- LCP ruim
- CLS leve
- INP aceitável
Uma leitura rasa diria:
“Vamos otimizar tudo.”
Uma leitura melhor diria:
- o gargalo principal está em LCP
- o hero image provavelmente pesa
- talvez o carregamento e a prioridade desse recurso estejam errados
- talvez também exista bloqueio de render por CSS ou JS no caminho
Ou seja: a métrica não te manda sair mexendo em tudo.
Ela te ajuda a cortar o espaço de investigação.
Erros comuns
- Tratar score como objetivo final em vez de tratar experiência como objetivo.
- Falar de Core Web Vitals sem saber o que cada métrica realmente tenta captar.
- Assumir causa única para cada métrica.
- Querer melhorar todas as métricas ao mesmo tempo sem ordem de prioridade.
- Declarar vitória com melhoria de laboratório sem olhar o fluxo real.
Como um senior pensa
Quem pensa melhor sobre performance costuma fazer este caminho:
- qual métrica está pior?
- o que essa métrica está tentando sinalizar?
- que classes de causa fazem sentido aqui?
- qual hipótese tem melhor custo-benefício de investigação?
Isso evita virar escravo de checklist de framework.
Senioridade aqui é saber que métrica é bússola, não mapa completo.
E também saber que performance só vale quando melhora uma experiência que o usuário realmente tem.
O que o entrevistador quer ver
Ele quer ver se você:
- entende o que LCP, INP e CLS querem medir
- sabe associar cada métrica a tipos prováveis de causa
- não confunde score com diagnóstico
- consegue priorizar investigação e melhoria
Se você disser “LCP ruim me faz olhar para caminho crítico de carregamento e render do conteúdo principal; INP ruim me faz olhar para main thread e custo pós-interação”, já está mostrando leitura madura.
Score bom não compensa experiência ruim. Score ruim também não explica sozinho o que consertar.
Core Web Vitals ajudam mais quando você usa a métrica para investigar, não para performar para a ferramenta.
Resumo rápido
O que vale manter na cabeça
- Core Web Vitals são uma forma de aproximar sensação do usuário com sinais mensuráveis.
- Cada métrica aponta para um tipo diferente de problema: carregar tarde, responder tarde ou pular layout.
- Melhorar score sem entender causa costuma virar micro-otimização no escuro.
- Em entrevista, resposta madura conecta métrica ruim com hipótese concreta de rede, renderização ou CPU.
Checklist de pratica
Use isto ao responder
- Consigo explicar LCP, INP e CLS em linguagem humana, sem depender da sigla?
- Sei ligar cada métrica aos tipos de causa mais comuns?
- Consigo dizer por que um score ruim não significa automaticamente que tudo está lento?
- Sei priorizar qual métrica mexer primeiro com base no fluxo do produto?
Você concluiu este artigo
Próximo passo
Medir antes de otimizar Próximo passo →Compartilhar esta página
Copie o link manualmente no campo abaixo.