Discussion Technical SEO AI Crawlers

Como rastreadores de IA lidam com rolagem infinita? Nosso conteúdo não está sendo indexado

FR
FrontendDev_Marcus · Desenvolvedor Frontend
· · 78 upvotes · 10 comments
FM
FrontendDev_Marcus
Desenvolvedor Frontend · 19 de dezembro de 2025

Criamos um site moderno em React com rolagem infinita para nosso blog. Ótima experiência para o usuário, mas nosso conteúdo não aparece em respostas de IA.

O Google indexa normalmente (depois de algum trabalho com SSR). Mas as plataformas de IA parecem ignorar a maior parte do nosso conteúdo.

Nossa estrutura:

  • SPA em React com rolagem infinita
  • SSR para carregamento inicial da página
  • Conteúdo adicional carregado via JavaScript na rolagem
  • 500+ posts no blog, apenas ~50 parecem acessíveis para IA

Perguntas:

  • Rastreadores de IA executam JavaScript?
  • Rolagem infinita é fundamentalmente incompatível com visibilidade em IA?
  • Qual a melhor abordagem técnica para acessibilidade de rastreadores de IA?
  • Devemos refazer toda a paginação?

Algum dev frontend já lidou com isso?

10 comments

10 Comentários

CE
CrawlerTech_Expert Expert Consultor de SEO Técnico · 19 de dezembro de 2025

Deixe-me explicar como diferentes rastreadores de IA lidam com JavaScript:

Suporte a JavaScript por rastreadores de IA:

RastreadoresRenderização JSSimulação de RolagemTempo de Espera
GPTBotLimitado/NenhumNãoMínimo
Google-ExtendedBom (como o Googlebot)NãoPadrão
ClaudeBotLimitadoNãoMínimo
PerplexityBotVariaNãoLimitado
Common CrawlNenhumNãoNenhum

O problema principal:

Rolagem infinita exige:

  1. Execução de JavaScript
  2. Disparo do evento de rolagem
  3. Requisições HTTP adicionais
  4. Renderização do novo conteúdo

A maioria dos rastreadores de IA falha no passo 1 ou 2.

Por que SSR não é suficiente:

Seu SSR entrega a página inicial. Mas o conteúdo da rolagem infinita não é “inicial” – ele carrega via interação. O SSR não resolve a dependência da interação.

A questão fundamental:

Rolagem infinita é fundamentalmente incompatível com as capacidades atuais dos rastreadores de IA. Você precisa de uma abordagem alternativa.

FM
FrontendDev_Marcus OP · 19 de dezembro de 2025
Replying to CrawlerTech_Expert
Então basicamente precisamos refazer? Qual a abordagem recomendada?
CE
CrawlerTech_Expert Expert · 19 de dezembro de 2025
Replying to FrontendDev_Marcus

Abordagens recomendadas (em ordem de amigabilidade para IA):

Opção 1: Paginação tradicional (mais amigável para IA)

/blog/page/1
/blog/page/2
/blog/page/3
  • Cada página tem sua própria URL
  • Conteúdo no HTML inicial
  • Sitemap inclui todas as páginas
  • Rastreadores de IA acessam tudo

Opção 2: Abordagem híbrida

  • Rolagem infinita para usuários
  • MAS também oferece URLs paginadas
  • Sitemap aponta para versões paginadas
  • Use canonical para evitar duplicidade
<!-- Página de rolagem infinita -->
<link rel="canonical" href="/blog/page/1" />

<!-- Paginação sempre disponível -->
<nav>
  <a href="/blog/page/1">1</a>
  <a href="/blog/page/2">2</a>
</nav>

Opção 3: Prerender para rastreadores de IA

  • Detecta user agents de IA
  • Entrega HTML prerenderizado
  • Todo o conteúdo na resposta inicial

Cada opção tem trade-offs. A opção 1 é a mais simples e confiável para IA. A opção 2 preserva a UX enquanto adiciona acessibilidade para IA.

RS
ReactDev_Sarah Desenvolvedora React · 19 de dezembro de 2025

Passamos exatamente por esse problema. Aqui está nossa solução:

Implementação da abordagem híbrida:

// Estrutura de URL
/blog              // Rolagem infinita (padrão para usuário)
/blog/archive/1    // Paginado (acessível para rastreador)
/blog/archive/2

Principais detalhes da implementação:

  1. O sitemap inclui apenas URLs paginadas

    • Rastreadores de IA encontram as páginas /blog/archive/*
    • Estas renderizam todo o conteúdo no server-side
  2. Página de rolagem infinita carrega o mesmo conteúdo

    • Usa API de paginação por trás
    • Melhor UX para humanos
  3. Links internos apontam para artigos individuais

    • Não para a posição na rolagem infinita
    • Cada artigo tem sua própria URL
  4. Orientação no robots.txt:

# Deixe os rastreadores focarem nos artigos individuais
# Não no container de rolagem infinita
Sitemap: /sitemap.xml

Resultados:

  • Experiência do usuário mantida (rolagem infinita)
  • Rastreadores de IA acessam todo o conteúdo via páginas de arquivo
  • Todos os artigos individuais indexados
  • Taxa de citação aumentou 4x após implementação
NK
NextJSDev_Kevin · 18 de dezembro de 2025

Abordagem específica para Next.js:

Usando getStaticPaths + getStaticProps:

// pages/blog/page/[page].js
export async function getStaticPaths() {
  const totalPages = await getTotalPages();
  const paths = Array.from({ length: totalPages }, (_, i) => ({
    params: { page: String(i + 1) }
  }));
  return { paths, fallback: false };
}

export async function getStaticProps({ params }) {
  const posts = await getPostsForPage(params.page);
  return { props: { posts, page: params.page } };
}

Benefícios:

  • Páginas estáticas para cada paginação
  • Conteúdo completo no HTML em tempo de build
  • Rastreadores de IA recebem todo o conteúdo
  • Carregamento rápido (estático)

Depois adicione rolagem infinita como melhoria:

  • Rolagem infinita client-side usa a mesma API
  • Abordagem de melhoria progressiva
  • Funciona sem JS também

Assim você tem o melhor dos dois mundos.

PS
Prerender_Specialist Expert · 18 de dezembro de 2025

Adicionando o prerendering como opção:

Serviços de prerender para rastreadores de IA:

Você pode detectar user agents de rastreadores de IA e servir conteúdo prerenderizado:

// middleware
if (isAICrawler(req.headers['user-agent'])) {
  return servePrerenderedVersion(req.url);
}

Detecção de rastreadores de IA:

const aiCrawlers = [
  'GPTBot',
  'ChatGPT-User',
  'Google-Extended',
  'ClaudeBot',
  'PerplexityBot',
  'anthropic-ai'
];

function isAICrawler(userAgent) {
  return aiCrawlers.some(crawler =>
    userAgent.includes(crawler)
  );
}

Opções de prerender:

  • Prerender.io
  • Rendertron
  • Solução customizada com Puppeteer
  • Prerender em tempo de build

Atenção:

Nem todos os rastreadores de IA se identificam claramente. Alguns podem passar despercebidos. Essa é uma abordagem suplementar, não substitui a paginação adequada.

SL
SEODevOps_Lisa · 18 de dezembro de 2025

Metodologia de teste para acessibilidade de rastreadores de IA:

Testes manuais:

  1. Teste sem JavaScript:

    • Abra seu blog no navegador
    • Desative o JavaScript
    • Que conteúdo está visível?
    • Isso aproxima a visão de rastreadores sem JS
  2. Teste de ver código-fonte:

    • Veja o código-fonte da página (não inspecionar elemento)
    • Seu conteúdo está no HTML?
    • Ou apenas placeholders de JavaScript?
  3. Teste com curl:

    curl -A "GPTBot/1.0" https://yoursite.com/blog/
    
    • A resposta contém o conteúdo real?

Testes automatizados:

  1. Google Search Console:

    • Ferramenta de inspeção de URL
    • “Ver página renderizada” mostra o que o Googlebot vê
    • (Não rastreadores de IA, mas renderização JS similar)
  2. Auditoria Lighthouse:

    • Verifique a categoria “SEO”
    • Problemas de rastreabilidade são sinalizados

O que você quer ver:

  • Conteúdo na resposta HTML inicial
  • Links para todas as páginas descobertos
  • Nenhum JS necessário para visibilidade do conteúdo
E
EcommerceDevSEO · 17 de dezembro de 2025

Perspectiva e-commerce:

Temos mais de 10.000 produtos com funcionalidade “carregar mais”. Aqui está nossa solução:

Estrutura da página de categoria:

/category/shoes                    # Primeiros 24 produtos + carregar mais
/category/shoes?page=2            # Produtos 25-48
/category/shoes?page=3            # Produtos 49-72

Implementação:

  1. Página inicial sempre tem links de paginação

    • Mesmo com rolagem infinita habilitada
    • O rodapé contém links para página 1, 2, 3…
  2. Parâmetros ?page= são canônicos

    • Cada página é seu próprio conteúdo
    • Não duplicata da página principal
  3. Sitemap inclui todas as URLs paginadas

    • Não só a base da rolagem infinita
  4. Produtos têm URLs individuais

    • Paginação de categoria é para descoberta
    • Produtos são o conteúdo real

Resultado:

Plataformas de IA citam nossas páginas de produto individuais, que descobrem pela estrutura de categoria paginada.

FM
FrontendDev_Marcus OP Desenvolvedor Frontend · 17 de dezembro de 2025

Isso foi incrivelmente útil. Eis meu plano de implementação:

Abordagem: Paginação híbrida

Fase 1: Adicionar rotas paginadas (Semana 1-2)

  • Criar rotas /blog/archive/[page]
  • SSR para conteúdo completo no HTML
  • Incluir navegação de paginação
  • Atualizar sitemap para incluir essas rotas

Fase 2: Atualizar rolagem infinita existente (Semana 3)

  • Manter rolagem infinita em /blog
  • Usar páginas de arquivo como fonte de dados
  • Canonical de /blog para /blog/archive/1

Fase 3: Testes e validação (Semana 4)

  • Testar com JS desativado
  • Testes com curl para user agents de IA
  • Monitorar taxas de citação por IA

Implementação técnica:

/blog                 → Rolagem infinita (humanos, canonical para archive/1)
/blog/archive/1       → Paginado (rastreadores, canonical para si mesmo)
/blog/archive/2       → Paginado (rastreadores)
/blog/[slug]          → Artigos individuais (conteúdo principal)

Princípios chave:

  • Conteúdo acessível sem JavaScript
  • Cada pedaço de conteúdo tem URL direta
  • Sitemap inclui todas as páginas de conteúdo
  • Rolagem infinita é um aprimoramento, não um requisito

Obrigado a todos pelas orientações técnicas detalhadas.

Have a Question About This Topic?

Get personalized help from our team. We'll respond within 24 hours.

Frequently Asked Questions

Rastreadores de IA conseguem lidar com conteúdo de rolagem infinita?
A maioria dos rastreadores de IA tem capacidades limitadas de renderização de JavaScript. Conteúdo que exige interação do usuário (rolagem) para carregar geralmente fica invisível para sistemas de IA. Renderização server-side ou abordagens híbridas são recomendadas.
Qual a melhor abordagem de paginação para rastreadores de IA?
Paginação tradicional com URLs distintas para cada página é a mais amigável para IA. Cada página deve ser acessível via URL direta, incluída no sitemap e não exigir JavaScript para exibir o conteúdo.
Rastreadores de IA renderizam JavaScript?
A renderização de JavaScript por rastreadores de IA varia bastante. O GPTBot tem capacidades JS limitadas. Alguns rastreadores veem apenas o HTML inicial. Para visibilidade em IA, o conteúdo crítico deve estar na resposta inicial do servidor, não carregado via JavaScript.
Como posso testar se rastreadores de IA conseguem acessar meu conteúdo?
Desative o JavaScript e veja sua página – isso aproxima o que muitos rastreadores de IA enxergam. Verifique também o robots.txt para garantir que rastreadores de IA não estão bloqueados e confira se o conteúdo aparece no código-fonte HTML inicial.

Monitore a Visibilidade do Seu Conteúdo para IA

Acompanhe quais de suas páginas estão sendo descobertas e citadas por plataformas de IA. Identifique problemas de rastreamento que afetam sua visibilidade.

Saiba mais