HTML sem JavaScript: por que importa

Como verificar em dois minutos se o conteúdo do seu site existe sem JavaScript, o que muda para buscadores e o que muda para motores de IA.

Publicado em · 3 min de leitura

Como verificar se meu site funciona sem JavaScript

Abra a página, use "exibir código-fonte da página" — não o inspetor, que mostra o DOM já processado — e procure uma frase do texto principal. Se ela estiver lá, o conteúdo existe no HTML inicial. Se o resultado for uma casca com poucas linhas e um monte de scripts, ele depende de JavaScript.

O segundo teste, mais duro, é desativar o JavaScript no navegador e recarregar. O que continuar visível é o que todo consumidor de HTML enxerga.

O Google não renderiza JavaScript hoje em dia

Renderiza, mas em duas etapas. A primeira passagem lê o HTML entregue; a renderização com execução de scripts acontece depois, quando há recurso disponível, e pode levar de horas a dias. Conteúdo e links que só existem depois disso entram na fila do segundo turno.

Na prática isso significa indexação mais lenta e descoberta de links mais lenta. Não é impedimento absoluto para busca — é para os motores generativos, que não fazem a segunda passagem.

Qual a diferença entre renderização estática e SPA

Renderização estática gera o HTML de cada página na publicação; o visitante recebe a página pronta na primeira resposta. Uma single-page application entrega um HTML praticamente vazio e monta tudo no navegador, o que exige baixar, compilar e executar o código antes de qualquer texto aparecer.

Single-page application Single-page application é a arquitetura em que o navegador recebe um HTML praticamente vazio e monta o conteúdo com JavaScript. Rastreadores de motores generativos não executam JavaScript, então o conteúdo não existe para eles.

Para aplicação autenticada, a SPA faz sentido. Para conteúdo que precisa ser encontrado, ela troca encontrabilidade por conveniência de desenvolvimento.

Preciso abandonar React para ter HTML completo

Não. O que importa é quando o HTML é gerado, não qual biblioteca o gera. Frameworks React modernos produzem o HTML no servidor ou no momento da publicação, e o navegador recebe a página pronta — a interatividade é acrescentada depois, sem que o conteúdo dependa dela.

Renderização estática Renderização estática é a geração do HTML de cada página no momento da publicação, e não a cada acesso. O visitante — e todo rastreador — recebe a página completa na primeira resposta, sem depender de JavaScript.

A decisão que de fato importa é manter o conteúdo fora do JavaScript, mesmo quando o site é construído com ele. Reduzir o peso do que sobra é o assunto do artigo sobre velocidade.

Perguntas frequentes

Meu site é WordPress. Isso é problema?

Não. WordPress entrega HTML pronto por padrão, o que atende ao requisito. O problema aparece quando temas e construtores visuais carregam scripts pesados que atrasam a exibição do conteúdo já presente.

E se só uma parte do site depender de JavaScript?

Aceitável, desde que a parte dependente não seja o conteúdo principal nem os links de navegação. Filtro, carrossel e formulário podem depender; texto e links internos, não.

Renderizar no servidor a cada acesso resolve?

Resolve o problema do HTML vazio, sim. Custa mais em servidor e em tempo de resposta que gerar na publicação, então vale quando o conteúdo muda a cada requisição — o que raramente é o caso de um site institucional.

Fontes

  1. Google Search Central — noções básicas de JavaScript SEO Documentação

Quem escreveu

Retrato de Carlos Eduardo, responsável técnico e editorial da Gouty

Carlos EduardoResponsável técnico e editorial

Responsável técnico pelos sites entregues pela Gouty, incluindo arquitetura, implementação e painel de medição · Mantém os orçamentos de performance e a auditoria de acessibilidade WCAG 2.2 AA que reprovam a publicação quando violados

Continue por aqui