
SEO para sites Angular: SSR, pré-renderização e indexação
Por padrão, uma aplicação Angular é montada no navegador: o HTML que o servidor entrega tem pouco
mais que a tag <app-root>, e o conteúdo só aparece depois que o JavaScript roda.
Para o SEO, isso significa indexação mais lenta no Google e páginas praticamente vazias para os
robôs que não executam JavaScript. A solução é entregar o HTML pronto, com renderização no
servidor (SSR) ou pré-renderização.
Trabalho com Angular em produção: no Grupo OC, migrei sites legados para Angular e Svelte, e o carregamento das páginas caiu de 8 para 1 segundo. Este guia complementa a minha consultoria de SEO técnico.
Falar sobre o meu site Angular pelo WhatsApp: (11) 98838-5247
Por que um site Angular não aparece no Google
- HTML vazio: sem SSR, o código-fonte da página não tem o texto, só os scripts.
- Title e description iguais em todas as rotas: o index.html define um título único, e as rotas não o alteram.
- URLs com #: rotas no formato
/#/servicosnão são tratadas como páginas separadas. - Navegação sem link real: menus feitos com eventos de clique, em vez de
<a href>com routerLink, não são seguidos pelos robôs. - Bundle pesado: muito JavaScript na carga inicial prejudica os Core Web Vitals.
SSR, pré-renderização ou renderização no navegador: qual usar
Na comparação Angular SSR vs SPA, a SPA tradicional (renderização no navegador, ou CSR) entrega o HTML vazio; com SSR, o servidor entrega a página pronta e o Angular assume a interatividade depois, pela hidratação. As versões recentes do Angular permitem combinar os modos por rota. A escolha depende do tipo de página:
| Tipo de página | Modo | Por quê |
|---|---|---|
| Institucional, serviços, landing pages | Pré-renderização (SSG) | HTML gerado no build, servido como arquivo estático e mais rápido |
| Catálogo, busca, conteúdo que muda sempre | Renderização no servidor (SSR) | HTML atualizado a cada acesso, sem depender do build |
| Área logada, painéis | Renderização no navegador (CSR) | Não precisa ser indexada |
Checklist de SEO para Angular
- Renderização no servidor ou pré-renderização com
@angular/ssr, o antigo Angular Universal, incorporado ao Angular a partir da versão 17. - Meta tags por rota: title e meta description, com os serviços
TitleeMetaou a propriedadetitledas rotas. - Canonical por rota, gerado no servidor.
- Dados estruturados (JSON-LD) incluídos no HTML renderizado no servidor.
- Links com
<a>e routerLink, e URLs sem#. - Sitemap.xml gerado a partir das rotas públicas.
- Hidratação ativa, para a página não "piscar" ao carregar, e lazy loading das rotas para reduzir o JavaScript inicial.
Falar sobre o meu site Angular pelo WhatsApp: (11) 98838-5247
Como verificar se o seu site Angular está indexável
Abra o código-fonte da página no navegador (não o inspecionar). Se o texto principal estiver lá, o HTML chega pronto. No Search Console, a Inspeção de URL mostra a página como o Google a renderizou; compare com a página real. Se o diagnóstico mostrar outros bloqueios, o roteiro completo está em por que um site não aparece no Google.
Perguntas frequentes sobre SEO em Angular
Angular é ruim para SEO?
Não. Uma aplicação Angular que só renderiza no navegador tem problemas de indexação, mas o próprio Angular oferece renderização no servidor e pré-renderização. Com uma delas configurada, as páginas chegam completas no HTML e o SEO fica no mesmo nível de qualquer site estático.
Preciso reescrever o site para ter renderização no servidor?
Normalmente não. Nas versões atuais, o comando ng add @angular/ssr adiciona a renderização no servidor a um projeto existente. O trabalho costuma estar em ajustar o código que usa APIs exclusivas do navegador, como window e localStorage, para que ele também rode no servidor; o erro mais comum nessa etapa é o "window is not defined".
Angular com SSR ou Next.js: qual é melhor para SEO?
Para o SEO, os dois chegam ao mesmo resultado quando a página é entregue pronta no HTML. A escolha deve seguir o time e o projeto: se a aplicação já é Angular, ativar a renderização no servidor costuma custar bem menos que reescrever tudo em Next.js, que é baseado em React.
O Google não executa JavaScript?
Executa, com uma versão atualizada do Chrome, mas a renderização entra numa fila e pode atrasar a indexação. Outros robôs, como os de muitas ferramentas de IA, geralmente não executam JavaScript e veem apenas o HTML inicial, que numa aplicação sem SSR está praticamente vazio.
Seu site Angular não indexa?
Envie o endereço pelo WhatsApp e eu verifico como os robôs estão vendo as suas páginas.
Falar sobre o meu site Angular pelo WhatsApp: (11) 98838-5247
Outros canais:
- E-mail: calebe.araujo101@gmail.com
- LinkedIn: linkedin.com/in/calebe-dev
- Localização: Sorocaba – SP, Brasil
Página atualizada em .