Performance Abril 2026 13 min de leitura

Otimizar Imagens para Site: Formatos, Compressão, Lazy Loading e CDN

Imagens representam em média 50% do peso de uma página web. Otimizá-las corretamente pode reduzir o tempo de carregamento pela metade, melhorar Core Web Vitals e aumentar conversões. Aqui está tudo que você precisa saber.

Por que otimizar imagens é tão importante?

Uma página média brasileira pesa cerca de 2,5MB, e imagens respondem por 1,2-1,5MB desse total. Sites de e-commerce são piores: páginas de produto com múltiplas fotos podem chegar a 5-8MB facilmente.

O impacto vai além da velocidade:

Formatos de imagem: qual usar quando

JPEG (JPG)

O formato clássico para fotografias. Boa compressão com perdas (lossy), amplamente suportado. Ideal para fotos de produtos, banners e imagens com muitas cores e gradientes.

Quando usar: quando você precisa de compatibilidade máxima com navegadores antigos ou como fallback.

Quando evitar: para imagens com transparência (não suporta), logos com fundo transparente, ícones simples.

PNG

Formato sem perdas (lossless) que suporta transparência. Excelente para logos, ícones, screenshots e imagens com texto. O problema: arquivos são significativamente maiores que JPEG para fotos.

Quando usar: logos, ícones, capturas de tela, imagens com texto legível, qualquer coisa que precise de transparência e você não pode usar WebP.

Quando evitar: fotos e imagens com muitas cores — um PNG de 2MB poderia ser um JPEG de 200KB.

WebP

O formato moderno do Google que combina o melhor dos dois mundos: compressão lossy melhor que JPEG (25-35% menor com mesma qualidade) E suporte a transparência como PNG. O suporte é universal em navegadores modernos (97%+ global).

Quando usar: como formato padrão para praticamente tudo. Fotos, banners, thumbnails, ícones.

Comparação prática:

AVIF

O formato mais moderno, baseado no codec AV1. Oferece compressão até 50% melhor que JPEG e 20% melhor que WebP. O suporte ainda está crescendo: Chrome, Firefox e Opera suportam; Safari adicionou suporte recentemente.

Quando usar: como primeira opção com fallback para WebP. Ideal para sites com muito tráfego onde cada KB economizado importa.

Limitação: a codificação é mais lenta que WebP, então não é ideal para imagens geradas em tempo real. Pré-processe offline.

SVG

Formato vetorial (não é bitmap). Escala para qualquer tamanho sem perda de qualidade e geralmente é menor que PNG para gráficos simples.

Quando usar: logos, ícones, ilustrações simples, gráficos com poucos elementos. Ideal para elementos que precisam ser nítidos em qualquer resolução (incluindo telas Retina).

Quando evitar: fotos e imagens complexas. Um SVG de uma foto seria enorme e não faz sentido.

Implementando fallbacks com <picture>

Use o elemento <picture> para servir o formato ideal com fallback automático:

<picture>
  <source srcset="produto.avif" type="image/avif">
  <source srcset="produto.webp" type="image/webp">
  <img src="produto.jpg" alt="Descrição do produto"
       width="800" height="600" loading="lazy">
</picture>

O navegador escolhe o primeiro formato que suporta. Se suporta AVIF, usa AVIF. Se não, tenta WebP. Se nenhum, usa o JPEG do <img>.

Compressão: ferramentas e técnicas

Ferramentas online (gratuitas)

Ferramentas CLI (para automação)

# ImageMagick - converter para WebP
convert input.jpg -quality 82 output.webp

# cwebp (Google) - ferramenta dedicada WebP
cwebp -q 80 input.jpg -o output.webp

# avifenc - converter para AVIF
avifenc --min 20 --max 35 input.jpg output.avif

# Sharp (Node.js) - popular em pipelines de build
sharp input.jpg --webp --quality 80 -o output.webp

Nível de compressão ideal

Não existe um número mágico, mas na prática:

Dica prática: use o Squoosh para ajustar a qualidade visualmente. Diminua até notar artefatos, depois suba 5-10 pontos. Esse é o seu nível ideal.

Lazy Loading: carregue apenas o necessário

Lazy loading adia o carregamento de imagens que não estão visíveis na tela. Quando o usuário rola para baixo, as imagens são carregadas sob demanda.

Implementação nativa (recomendada)

<img src="produto.webp" alt="Produto X"
     width="400" height="300"
     loading="lazy"
     decoding="async">

O atributo loading="lazy" é suportado por 95%+ dos navegadores e não requer JavaScript. Adicione decoding="async" para melhorar o INP ao permitir que o navegador decodifique a imagem fora da thread principal.

Quando NÃO usar lazy loading

Para imagens LCP, faça o oposto do lazy loading — priorize o carregamento:

<!-- Preload da imagem LCP -->
<link rel="preload" as="image" href="/hero.webp"
      fetchpriority="high">

<!-- Na tag img, use fetchpriority -->
<img src="/hero.webp" alt="Banner principal"
     width="1200" height="600"
     fetchpriority="high">

Placeholder techniques

Lazy loading sem placeholder causa layout shift (CLS ruim). Soluções:

Responsive Images: tamanho certo para cada tela

Servir uma imagem de 2000px de largura para um celular com tela de 375px é desperdício puro. Responsive images resolvem isso servindo tamanhos diferentes baseados na tela do dispositivo.

srcset e sizes

<img src="produto-800.webp"
     srcset="produto-400.webp 400w,
             produto-800.webp 800w,
             produto-1200.webp 1200w,
             produto-1600.webp 1600w"
     sizes="(max-width: 768px) 100vw,
            (max-width: 1200px) 50vw,
            33vw"
     alt="Produto X"
     width="800" height="600"
     loading="lazy">

Como funciona:

Quantas versões gerar: para a maioria dos sites, 3-4 tamanhos são suficientes (400, 800, 1200, 1600). Sites com imagens full-width podem precisar de 2000px também.

Automação com ferramentas de build

Gerar múltiplas versões manualmente não escala. Use automação:

CDN para imagens

Uma CDN de imagens vai além de uma CDN tradicional. Além de distribuir geograficamente, pode:

Serviços populares:

Otimização de imagens em WordPress

WordPress é o CMS mais usado no Brasil. Plugins específicos facilitam a otimização:

Recomendação prática: ShortPixel ou Imagify + Cloudflare. O plugin otimiza no upload, o Cloudflare distribui via CDN.

Auditando imagens do seu site

Como saber se suas imagens estão otimizadas? Faça esta auditoria:

  1. PageSpeed Insights — abra sua página e procure por "Serve images in next-gen formats", "Properly size images" e "Efficiently encode images"
  2. Chrome DevTools > Network — filtre por "Img" e ordene por tamanho. Qualquer imagem acima de 200KB merece atenção
  3. Lighthouse — gere um relatório e veja a seção "Opportunities" para estimativas de economia
  4. Screaming Frog — audite todo o site para encontrar imagens sem alt text, dimensões ausentes e tamanhos excessivos

Impacto real: antes e depois

Um e-commerce brasileiro de moda fez as seguintes otimizações em suas imagens de produto:

Resultados:

Essas melhorias também se refletem nos dados comportamentais. No Microsoft Clarity, o site viu redução de 40% em rage clicks e aumento de 25% na profundidade de scroll — sinais claros de que os usuários estavam tendo uma experiência melhor.

Quer relatórios automáticos do Clarity?

ClarityInsights analisa seus dados e envia um relatório AI com recomendações UX.

Obtenha seu relatório grátis