Marketing

Core Web Vitals em 2026: O Que é, Como Medir e o Passo a Passo Real pra Site Voar

Core Web Vitals — performance de site em 2026 — Uma Nova Imagem

Site lento não perde só conversão — perde ranking. Desde 2021 o Google usa um conjunto de métricas chamado Core Web Vitals como fator oficial de posicionamento. Em 2026, com a chegada do INP no lugar do FID, o jogo ficou ainda mais técnico. Sites que ignoram essas métricas vão sumindo dos primeiros resultados, mesmo com bom conteúdo e backlinks.

Este artigo abre o que são as métricas, como medir, e o passo a passo real que aplicamos no próprio site da Uma Nova Imagem pra sair de score 67 no Lighthouse pra 99. Sem teoria de manual — só o que de fato funcionou.

O que são Core Web Vitals (em português simples)

Cinco métricas medem a experiência real do usuário:

LCP — Largest Contentful Paint

Tempo até o maior elemento visível aparecer. Geralmente é o título principal, uma imagem grande ou um banner. Alvo: menos de 2,5s.

FCP — First Contentful Paint

Tempo até qualquer pixel de conteúdo aparecer. Alvo: menos de 1,8s. Indica que o navegador começou a renderizar.

CLS — Cumulative Layout Shift

Quanto o layout se desloca enquanto carrega (texto que pula, imagem que empurra). Alvo: menos de 0,1. Acima disso, usuário clica errado, paga frustração, abandona.

TBT — Total Blocking Time

Tempo total em que a main thread fica bloqueada por scripts pesados. Alvo: menos de 200ms. Mede a responsividade.

INP — Interaction to Next Paint

Em 2024 substituiu o FID. Mede o pior tempo de resposta a uma interação (clique, toque). Alvo: menos de 200ms.

Bonus: Speed Index — quão rápido visualmente o conteúdo aparece. Não é Core Vital mas o Lighthouse cobra.

Como medir (e por que você precisa de 2 ferramentas)

1. Lighthouse (lab data)

Roda no Chrome DevTools ou em PageSpeed Insights. Simula um Moto G Power em rede 4G lenta — pessimista de propósito. Bom pra desenvolvimento.

2. CrUX (field data)

Dados REAIS de usuários do Chrome anonimizados. Aparece no Google Search Console (aba "Core Web Vitals") e em PageSpeed Insights. É o que o Google USA pra ranqueamento — não o Lighthouse.

Erro comum: ficar caçando 100 no Lighthouse e ignorar CrUX. O CrUX precisa de tráfego real (uns 1.000 visitantes/mês no mínimo) pra ter dados. Sites pequenos veem só Lighthouse.

Os 7 problemas que atrasam 95% dos sites brasileiros

1. Imagens gigantes

PNG de 2 MB sendo exibido em thumbnail 200x200. Solução: usar formatos modernos (WebP, AVIF), redimensionar pra tamanho exibido, sempre com width e height declarados pra reservar espaço.

Exemplo real do nosso site: santa-rita.png tinha 254 KB. Convertido pra JPG 1280x607 com qualidade 82 ficou em 65 KB — economia de 74%, LCP caiu junto.

2. Google Fonts bloqueando renderização

Carregar Inter em 7 pesos via Google Fonts adiciona ~1,2s de bloqueio: 2 requisições CSS + 7 arquivos woff2 baixados sequencialmente, todos em domínio externo (fonts.googleapis.com + fonts.gstatic.com).

Solução: self-hostar os woff2 dentro do próprio domínio. Reduz pesos pra 2 ou 3 (em vez de 7). Adiciona font-display: optional no @font-face — se a fonte não chegar em 100ms, navegador usa fallback e não troca depois (sem CLS).

Bonus: criar uma fonte fallback com size-adjust que faz Arial ter as mesmas métricas do Inter. Mesmo no swap, nada desloca.

3. CSS bloqueante

<link rel="stylesheet"> bloqueia renderização até baixar e parsear. Pra CSS crítico (above-the-fold), inline dentro de <style> no <head> é dramaticamente mais rápido.

O nosso critical CSS tinha ~7 KB. Inline no HTML elimina 1 roundtrip. Após o paint inicial, CSS não-crítico pode carregar via media="print" onload="this.media='all'" — non-blocking.

4. JavaScript pesado bloqueando main thread

Scripts grandes (jQuery + plugins + frameworks) podem bloquear renderização por 500-2000ms. Resultado: TBT alto, página "trava".

Mitigações: defer em todos os scripts não-críticos, async em scripts de tracking, code splitting (não carregar tudo de uma vez), substituir bibliotecas pesadas por nativo (jQuery → vanilla JS é trivial em 2026).

5. Layout shift de elementos animados/dinâmicos

Banner que aparece tarde e empurra conteúdo. Imagem sem dimensões. Anúncio carregando depois. Texto que muda de fonte e altera altura.

Solução: sempre reservar espaço com aspect-ratio, min-height ou contain-intrinsic-size. Elementos com position: absolute ancorar em vh (estável) em vez de % do pai (cresce com texto).

6. Reflow forçado em JavaScript

JS que lê offsetWidth, scrollTop, getBoundingClientRect() DEPOIS de modificar DOM força o navegador a recalcular layout imediatamente. Numa página com muitos elementos, isso pode custar 200-800ms.

Padrão correto: ler antes, escrever depois. Ou usar requestAnimationFrame pra agrupar leituras e escritas. Bibliotecas modernas (React, Vue) já fazem isso automaticamente, mas código vanilla manual costuma errar.

7. Carregamento de conteúdo abaixo da dobra no first paint

Páginas longas processam TODO o HTML no first paint, mesmo o que está 5 telas abaixo. CPU gasta tempo com seções que o usuário talvez nem veja.

Solução: content-visibility: auto + contain-intrinsic-size: 0 1000px em seções abaixo da viewport. Navegador pula totalmente layout/paint dessas seções até elas chegarem perto. Resultado típico: TBT cai 50-70%.

O caso da Uma Nova Imagem: de 67 a 99

Nosso site rodou Lighthouse pela primeira vez e bateu 67 (mobile). Mau resultado. Em 13 commits sequenciais, chegamos a 94 (mobile) e 99 (desktop). As mudanças:

  1. Hero image otimizada (254 KB → 65 KB JPG com width/height)
  2. Landmark <main> adicionado (acessibilidade + GEO)
  3. Footer com cor de texto contraste AAA
  4. Orbs decorativos ancorados em vh em vez de % (CLS de 0,758 → 0,02)
  5. Google Fonts pesos reduzidos de 7 pra 3
  6. Self-host de Inter, JetBrains Mono, DM Sans, Instrument Serif (14 arquivos woff2 no próprio domínio)
  7. Removido @import bloqueante de dentro do CSS
  8. Inline do critical CSS + fonts.css no <head> (corta 1,3s de bloqueio)
  9. Font fallback matching (Arial com size-adjust e métricas iguais ao Inter — sem CLS no swap)
  10. Animação de reveal removida dos 3 spans do hero acima-da-dobra (LCP imediato)
  11. font-display: optional (sem espera por fonte)
  12. Orbs adicionais ancorados em viewport
  13. content-visibility: auto nas 5 seções abaixo do hero (TBT 570 → 70 ms)

Tempo total: cerca de 4 horas de trabalho técnico. Resultado:

Métrica Antes Depois
Lighthouse Mobile6794
Lighthouse Desktop— (não medido)99
LCP Mobile2,7s3,0s*
LCP Desktop0,5s
CLS0,7580,02
TBT0ms (depois 570ms desktop)70ms

*LCP mobile ficou em 3s porque o Lighthouse simula 4G lento. Em conexão real, fica em ~1,2s. CrUX (field data) confirma.

Erros comuns que você provavelmente está cometendo

  • Carregar bibliotecas inteiras pra usar 1 função — moment.js pesa 60 KB. new Date() é nativo.
  • Não usar lazy loading em imagens abaixo da dobraloading="lazy" resolve em 1 atributo
  • Não declarar width/height em <img> — navegador não sabe o tamanho até baixar, layout pula quando termina
  • Múltiplos scripts de tracking síncronos — GA, Meta Pixel, Hotjar, e mais 5 carregando em sequence é receita pra TBT alto
  • CDN sem cache configurado — Cloudflare/BunnyCDN sem cache rule serve cada request do origin
  • Servidor compartilhado lento — TTFB acima de 600ms estraga qualquer otimização frontend

Quando contratar ajuda

Otimização de performance é técnica especializada. Sites com score abaixo de 70 no Lighthouse perdem ranqueamento, conversão e percepção de qualidade. Quando faz sentido contratar:

  • Score Lighthouse abaixo de 80 (mobile)
  • LCP acima de 4s
  • CLS acima de 0,25
  • Páginas com mais de 3 MB de transferência
  • TBT acima de 600ms
  • Bounce rate alto em mobile mesmo com bom conteúdo

O ROI costuma ser claro: cada 100ms a menos de LCP aumenta conversão em ~1% (estudos consistentes do Google, Akamai e WPO Stats). Pra um site que faz R$ 50.000/mês, melhorar 1s de LCP pode significar +R$ 5.000-10.000/mês recorrentes.

Como a Uma Nova Imagem entrega

Oferecemos auditoria de performance e otimização completa como serviço dedicado. O processo:

  1. Auditoria — Lighthouse + CrUX + análise manual do código. Relatório detalhado.
  2. Roadmap priorizado — quais mudanças têm maior impacto vs esforço.
  3. Implementação — código aplicado direto no site (não em ambiente de teste que você precisa replicar).
  4. Validação — Lighthouse antes/depois, CrUX em 30 dias.

A partir de R$ 1.200 (one-shot pra sites pequenos/médios) ou R$ 600/mês (programa contínuo pra sites em produção ativa).

Site lento? Fale com a Uma Nova Imagem →

Pronto para crescer no digital?

A Uma Nova Imagem tem mais de 12 anos de experiência ajudando empresas em Salvador e no Brasil inteiro a conquistar resultados reais. Vamos conversar sobre o seu negócio?

Falar pelo WhatsApp Agora

Artigos Relacionados

Marketing

CTA copy: as palavras nos botões que realmente fecham venda

A palavra escrita no botão do seu site pode multiplicar (ou dividir) sua conversão por 2. "Enviar" perde pra "Solicitar orçamento". "Comprar agora" perde pra "Quero garantir o meu". Guia direto sobre CTAs que funcionam, com exemplos por setor.