Otimização de Performance, SEO e Open Graph (22/09/2026) — 91 mobile / 98 desktop
EmAtualização (22/09/20262026, rodamosfim odo dia): depois de mais uma rodada de correções, a home saiu de 63/100 para 91/100 no mobile e 98/100 no desktop de Desempenho no Google PageSpeed Insights contra a home da loja (loja.saaraonline.com.br) pela primeira vez de forma sistemática. O resultado expôs uma nota de Desempenho 63/100 (Largest Contentful Paint de 6,9s — bem lento) e algumas lacunas de SEO/Open Graph e conformidade que valiam a pena fechar de uma vez.Insights. Esta página documenta o histórico completo — o que foi encontrado, o que já foi corrigido a cada rodada e o que ainda está empor aberto.vir.
Resultado final desta rodada
Por que isso importa pro marketplace
- Conversão: cada segundo a mais de carregamento aumenta abandono, principalmente em 4G/celular (que é a maioria dos nossos compradores). Uma home mais rápida vende mais.
- Ranking no Google: desempenho (Core Web Vitals) é fator direto de ranqueamento de busca desde 2021. Nota baixa de performance = menos tráfego orgânico gratuito.
- Link bonito ao compartilhar: Open Graph correto é o que faz um link da Saara Online virar um card com imagem/título/descrição quando colado no WhatsApp, Instagram ou Facebook, em vez de um link pelado.
LGPD:banner de consentimento de cookies é exigência legal, não só boa prática.
O que já foi corrigido e— subido1ª pra produçãorodada (22/09/2026)2026, tarde)
Imagens de produto pedindo tamanho errado
O componente do card de produto sempre pedia a imagem "pensando" num grid de 4 colunas no desktop e 1 no celular. Só que o grid real da home e das listagens é de 2/3/4/5/6 colunas dependendo da largura da tela. Resultado prático: no celular a imagem chegava com quase o dobro do tamanho necessário (750px de imagem pra caber num espaço de 341px). Corrigimos o cálculo em todos os pontos onde o card de produto aparece (home, categoria, busca, carrossel de recomendados). Economia estimada pelo próprio relatório: ~700 KB por carregamento de página.
Toda imagem da página marcada como "prioridade máxima"
Antes, os 48 cards de produto de uma página inteira competiam entre si por banda com a tag de "alta prioridade" — inclusive os que estavam fora da tela, ainda por vir no scroll. Agora só os primeiros 4 cards (os que realmente aparecem na primeira tela) recebem essa prioridade; o resto carrega sob demanda (lazy loading) normalmente.
Vídeo do Story flutuante pesando quase 2 MB toda vez
O círculo de Stories que fica sempre visível na tela estava tocando o vídeo completo em loop (até ~1,9 MB) só pra mostrar uma prévia pequena e repetitiva. Agora existe um clipe dedicado — 4 segundos, tamanho de selo (160px), sem áudio — gerado automaticamente a partir do vídeo original só pra esse loop; o vídeo completo (em qualidade cheia) só carrega quando o comprador realmente abre o Story em tela cheia.
Banner do rodapé (skyline) em PNG pesado
Convertido de PNG pra WebP: 299 KB → 64 KB (-78%), com o mesmo visual.
Carrossel de lojistas com dezenas de bolinhas de paginação
Com o número atual de lojistas em destaque, o carrossel "Ver mais" chegou a gerar mais de 40 bolinhas de navegação — cada uma marcada por acessibilidade como "área de toque pequena demais", além de inflar o HTML da página à toa. O carrossel já navega sozinho (autoplay) e por arraste, então as bolinhas foram removidas.
Cache de imagens/arquivos estáticos curto demais
Ajustamos o Next.js pra mandar o navegador guardar imagens otimizadas e arquivos estáticos (logos, ícones, banners) em cache por 1 ano em vez do padrão de 60 segundossegundos. Achado importante nessa investigação: o Nginx Proxy Manager (o proxy reverso na frente do site) tinha a opção "Cache Assets" ligada, que ignorava e substituía esse cache por um teto de só 30 minutos pra tudo — evitaanulando re-baixaro ajuste feito no código. Desligamos essa opção pros domínios da loja, e o cache passou a mesmafuncionar imagemde verdade (economia de cache ineficiente caiu de 356 KiB pra 14 KiB).
Vídeo do Story flutuante pesando quase 2 MB toda vez
O círculo de Stories que fica sempre visível na tela toca o vídeo completo em loop (até ~1,9 MB) só pra mostrar uma prévia pequena e repetitiva. Já preparamos um clipe dedicado — 4 segundos, tamanho de selo (160px), sem áudio — gerado automaticamente a cadapartir visita.do vídeo original só pra esse loop, com o vídeo completo (qualidade cheia) reservado pra quando o comprador abre o Story em tela cheia. Esse é o maior item que ainda falta entrar no ar — ver seção "O que ainda está por vir" abaixo.
SEO, Open Graph, LGPDGraph e Analytics
- Imagem e metadados de Open Graph configurados pra home (link com card bonito ao compartilhar).
sitemap.xmlgerado automaticamente pro Google indexar as páginas.- Google Analytics integrado (tela própria no admin pra configurar o ID, sem precisar mexer no banco).
O que foi corrigido — 2ª rodada (22/09/2026, noite)
Carrossel de banners da home competindo consigo mesmo pela imagem principal
Todo slide do carrossel de banners (não só o primeiro, visível) estava marcado como "alta prioridade" — nos dois tamanhos (mobile e desktop) de cada slide. Isso fazia a imagem que realmente aparece pro visitante (a maior parte do tempo de carregamento da página, tecnicamente chamada de LCP) esperar na fila atrás de imagens que nem estavam na tela ainda. Corrigido: só o primeiro slide carrega com prioridade agora — esse ajuste sozinho cortou o tempo de carregamento da imagem principal de 4,7s pra 2,4s.
Logo do lojista pedindo imagem 10x maior que o necessário
O selo com a logo da loja (no verso do card de produto e na busca de lojistas) estava pedindo a imagem enviada pelo lojista no tamanho original (até 1080×1080px) pra mostrar num espaço de 80×80px. Corrigido pra pedir só o tamanho realmente exibido.
TalkJS (sistema de mensagens) carregando escondido em toda página, pra todo mundo
Este foi o achado mais surpreendente da investigação: o sistema de mensagens (TalkJS) estava programado pra carregar um script de ~85-100 KiB assim que a página abria — mesmo pra quem nunca faz login, e mesmo sem nenhuma configuração ativa ainda pra esse recurso. Era um comportamento automático da própria biblioteca, disparado só por ela estar referenciada no código, independente de realmente ser usada. Corrigido pra só carregar quando de fato for usado.
Banner de cookies removido
Avaliação feita: a LGPD não exige um banner de consentimento denos cookiesmoldes da lei europeia (LGPD).GDPR)
Pendências encontradas (ainda não resolvidas)
Proxy reverso anulando o cacheO que acabamosainda deestá configurar
por Aovir
investigar
loja.saaraonline.com.brslb.saaraonline.com.brItens(Stories dojá relatório aindapublicados não atacados
recebem PróximoNovas passo natural: reaplicar o teste do PageSpeed Insights depois do deployatualizações de hojeperformance praestão medirpor ovir ganho— real,essa epágina seguirserá atacandoatualizada osconforme itenscada darodada listafor de pendências.concluída.