Técnico

Por que os motores de busca podem ver a tua página como vazia

Uma página pode parecer perfeitamente normal no teu navegador e, ainda assim, entregar aos motores de busca quase nada para ler.

O que é

Esta verificação analisa quanto conteúdo de texto realmente visível uma página entrega no seu HTML subjacente — o material em bruto que os motores de busca e outras ferramentas automáticas leem, antes de qualquer JavaScript da página ter tido oportunidade de correr e preencher o resto. Uma página é considerada "praticamente vazia" aqui quando esse conteúdo em bruto é mínimo ou está totalmente ausente, mesmo que a página pareça completamente normal e cheia de conteúdo depois de terminar de carregar num navegador.

Esta diferença entre o que um navegador acaba por mostrar e o que está presente no início é comum em sites construídos com certas estruturas (frameworks) modernas, em que o conteúdo é gerado por JavaScript depois do carregamento inicial da página, em vez de já vir incluído desde o início.

Por que importa

A maioria dos motores de busca consegue executar JavaScript e muitas vezes acaba por ver a versão totalmente carregada de uma página — mas nem sempre, nem de imediato, e nem com paciência ilimitada. Uma página que depende inteiramente de JavaScript para mostrar qualquer conteúdo está a correr um risco desnecessário quanto à fiabilidade com que é lida, rastreada e indexada, em comparação com uma que inclui conteúdo real e legível logo na primeira resposta.

É também um sinal de aviso precoce útil para um erro, e não apenas uma escolha de design — uma página que devia mostrar conteúdo mas devolve praticamente nada no seu HTML em bruto por vezes indica que algo está a falhar silenciosamente do lado do servidor, e não apenas que o design demora a carregar.

Como corrigir

  1. Vê o código-fonte HTML em bruto da tua página (botão direito → "Ver código-fonte da página", que mostra o que é entregue antes do JavaScript correr) e verifica se o teu conteúdo principal aparece lá de facto em formato de texto.
  2. Se estiver em falta no código-fonte em bruto mas visível na visualização normal do navegador, o teu conteúdo está provavelmente a ser gerado inteiramente por JavaScript depois de a página carregar.
  3. Se usas uma framework de JavaScript moderna, considera opções de "renderização no lado do servidor" (server-side rendering) ou "geração de site estático" (static site generation), que produzem uma versão da página já com conteúdo real incluído, em vez de depender apenas do navegador para o construir.
  4. Se isto for inesperado (não construíste o site para funcionar assim), verifica se há um erro de servidor ou um passo de build falhado que possa estar a fazer a página renderizar sem o conteúdo pretendido.
  5. Volta a executar o teu Launch Readiness check depois das alterações para confirmar que já é detetado conteúdo real no HTML em bruto da página.

Veja se o seu próprio site tem este problema

O Launch Readiness analisa o seu site em busca deste e de mais ~50 problemas antes do lançamento, em segundos — grátis, sem registo.

Fazer uma análise grátis