As imagens estão frequentemente entre os recursos mais visíveis de uma página Web e entre os mais caros de transferir. Uma fotografia de vários megabytes pode acabar numa pequena card. Uma hero image pode tornar-se o elemento principal do carregamento percebido. Uma galeria pode multiplicar pedidos e descodificação.
Otimizar não significa simplesmente comprimir o máximo possível. Significa entregar a imagem certa, na variante certa, no momento certo e com a qualidade necessária.
Não existe um botão mágico “otimizar”
Uma imagem pode ser pesada por várias razões:
- dimensões excessivas;
- formato inadequado;
- compressão insuficiente;
- ausência de variantes responsivas;
- prioridade de carregamento errada;
- espaço não reservado no layout.
Uma estratégia séria trata a cadeia completa.
Pipeline global
fonte master
→ função da imagem
→ dimensões úteis
→ formato adequado
→ compressão
→ variantes responsivas
→ integração HTML
→ prioridade / lazy loading
→ medição real
Cada etapa influencia as seguintes. Comprimir uma imagem de 6.000 px antes de perguntar se deveria ter apenas 1.200 px é otimizar o problema errado.
1. Compreender a função da imagem
Uma fotografia editorial, hero, miniatura, avatar, logótipo, screenshot ou ícone não tem as mesmas necessidades.
Uma hero visível no primeiro ecrã pode influenciar o LCP e deve chegar cedo. Uma fotografia muito abaixo do conteúdo pode ser carregada mais tarde. Um ícone geométrico pode ser melhor servido em SVG.
2. Conservar uma fonte master
Guarde uma versão de alta qualidade e gere as variantes diretamente a partir dela:
→ 480 px
→ 800 px
fonte original → 1200 px
→ 1600 px
→ 2000 px
Não crie uma variante grande a partir de uma miniatura já reduzida: os detalhes perdidos não reaparecem.
3. Determinar dimensões realmente necessárias
Redimensionar é frequentemente a otimização mais rentável. Se o original tem 6000 × 4000 mas a apresentação máxima é 900 CSS px, servir sempre o original raramente faz sentido.
Considere a densidade do ecrã, mas não use DPR como justificação para enviar sempre o maior ficheiro. Prepare patamares razoáveis e deixe o navegador escolher quando necessário.
4. Escolher o formato pelo conteúdo
Para fotografias, WebP, AVIF e JPEG podem ser adequados. Para capturas e gráficos com contornos, WebP sem perdas ou PNG podem funcionar melhor. Para logótipos e formas geométricas, SVG é muitas vezes natural.
Um formato deve ser escolhido pelo compromisso entre qualidade, peso, compatibilidade e custo do pipeline, e não apenas por ser mais recente.
5. Comprimir depois de redimensionar
Quando as dimensões estão certas, ajuste a compressão. Em formatos com perdas, compare zonas difíceis como cabelo, folhagem, texto e gradientes.
Valores de qualidade não são diretamente comparáveis entre codecs. “80” num encoder não equivale necessariamente a “80” noutro.
6. Criar imagens responsivas
srcset e sizes permitem escolher entre larguras. O CSS controla como a imagem aparece; os recursos responsivos controlam qual ficheiro é transferido.
Uma configuração correta evita enviar 2.000 px para um telemóvel e evita também mostrar uma pequena miniatura desfocada num ecrã de alta densidade.
