O Baidu lê JavaScript?
Ele tem um rastreador de renderização, mas nada mostra que você possa contar com isso.
A resposta curta
Não de forma confiável. O Baidu anunciou um rastreador de renderização em 2017, mas não achamos nenhuma declaração de quanto JavaScript ele executa. Seus guias pedem texto no HTML, e dois testes de injeção, de 2018 e 2020, lidos como trechos de busca, mostram que o Baidu não captou o conteúdo injetado. Entregue títulos, texto e links no HTML.
- O Baidu anunciou o agente Baiduspider-render em 24 de março de 2017, em beta em sites de qualidade selecionados.
- O guia do Baidu, atualizado em março de 2019, diz que páginas com link apenas em JavaScript podem não ser indexadas.
- Um teste da Salt.agency de fevereiro de 2020, lido apenas como trecho de busca, registrou resultado negativo para o Baidu nos 4 métodos de injeção.
- O white paper do Baidu de 2017 recomenda manter o código-fonte da página em até 128k, o que também vale para páginas renderizadas no servidor.
- A página da ferramenta de diagnóstico de rastreamento do Baidu indica 70 usos por site por semana e a exibição dos primeiros 200KB.
Se o seu site em React, Vue ou Next.js vai bem no Google, é natural supor que o Baidu lê a mesma coisa. Esse resultado não vale automaticamente para o Baidu. O próprio Google, que descreve uma fase de renderização no seu processo, lembra que nem todos os bots executam JavaScript.35
A maioria dos guias resolve a questão em uma linha: “o Baidu não consegue” ou “o Baidu tem dificuldade”. Poucos mostram em que essa linha se apoia, e as provas são mais antigas e mais fracas do que parecem.
Esta página organiza tudo por data e depois mostra o que mudar no seu site. Ela faz parte do nosso guia de SEO no Baidu e o que muda em relação ao Google.
O Baidu executa JavaScript?
O Baidu tem um rastreador feito para isso, mas não achamos nenhuma declaração do que ele realmente faz. Também não achamos ninguém de fora do Baidu capaz de mostrar até onde ele vai.
Em 24 de março de 2017, o Baidu anunciou um novo agente, o Baiduspider-render, para acessar CSS, JavaScript e imagens dos sites.1 Ele começou em beta em uma seleção de sites de qualidade.1
O título do aviso fala em rastreamento com renderização, mas o texto só diz que o Baidu precisa acessar esses arquivos. Não diz quais scripts rodam, quanto tempo eles têm nem quais sites estão incluídos.
Não achamos nenhum aviso posterior do Baidu que amplie o beta, encerre o programa ou defina limites. Um diretório de bots diz que ele foi projetado para renderizar páginas pesadas em JavaScript, mas não cita nenhum teste.31
Verdict
O Baidu tem um agente de renderização. Se ele renderiza as suas páginas, ninguém sabe, então não baseie seu site nisso.
O que as provas dizem, por data
Os testes apontam para o mesmo lado, e o texto mais recente do Baidu que achamos sobre o tema é de 2019. Aqui está o que encontramos, com os itens mais frágeis sinalizados.
| Data | Fonte | Tipo | O que encontrou |
|---|---|---|---|
| Out. 2016 | freeCodeCamp 12 | Verificação com site:, um site renderizado no cliente | Um teste posterior contou 1 resultado no Baidu para preactjs.com, contra 17 no Google |
| Mar. 2017 | Baidu 1 | Aviso oficial | Agente de renderização em beta em sites selecionados |
| Ago. 2017 | Engenheiro do Baidu 4 | Palestra oficial | Não carregue títulos, datas ou texto principal com JS |
| Por volta de ago. 2017 | Bartosz Goralewicz 13 | Teste controlado | Sem resultado no Baidu: o site de teste não estava indexado lá quando ele publicou |
| Nov. 2017 | White paper do Baidu 5 | Guia oficial | Páginas móveis carregadas por JS têm mais tendência a conteúdo raso |
| Maio 2018 | Tópico de fórum V2EX 34 | Opiniões, sem logs | Os participantes discordam: um diz que o Baidu começou a executar JS, outros dizem que páginas em Vue e React não são indexadas |
| Verão de 2018 no hemisfério norte | Unless 9 | Teste controlado, trecho de busca | O Baidu não pareceu reconhecer nenhum conteúdo injetado |
| Mar. 2019 | Baidu 23 | Guia oficial | Conteúdo em JS não pode ser buscado, e conteúdo que o Baidu não consegue analisar é descartado |
| Ago. 2019 | Chinafy 10 | Correlação de ranqueamento | Nenhuma relação entre conteúdo dinâmico e posição no Baidu |
| Nov. 2019 | Botify 11 | Afirmação de fornecedor, sem fonte | O Baidu renderiza JavaScript, “albeit selectively”, ou seja, de forma seletiva |
| Fev. 2020 | Salt.agency 8 | Teste controlado, trecho de busca | Resultado negativo para o Baidu nos 4 métodos de injeção |
| 2026 | Marketing to China, SEO Sherpa 1416 | Afirmações de agências, sem teste | O Baidu “struggles”, ou seja, tem dificuldade com sites em JS |
Leia a tabela com cuidado, por três motivos:
- Nada recente. O teste mais novo que achamos é de fevereiro de 2020. O Baidu pode ter mudado desde então, e não achamos nenhum novo teste publicado.
- Páginas de teste. Os testes de injeção usam páginas criadas para isso, que o Baidu pode tratar de forma diferente do seu site.
- Leitura parcial. Só conseguimos ler os resultados da Salt.agency e da Unless como trechos de busca, então não temos como relatar toda a configuração deles.
O acesso é uma barreira prática. Goralewicz escreveu que não conseguiu indexar o site de teste no Baidu, e disse que para isso é preciso um número de telefone da China continental.13
Esse é o relato dele. Um número +55 não é da China continental, e não testamos se o Baidu o aceita. Nossa página sobre o problema do número de telefone na conta do Baidu trata disso.
Em português, o que aparece é ainda mais curto. Um glossário diz que Bing, Baidu e rastreadores de IA “ainda renderizam JS pior que o Google”, sem dar fonte para o Baidu.36
O que os documentos do próprio Baidu mandam fazer
A orientação escrita do Baidu é coerente: coloque no HTML o que importa e deixe o JavaScript para a interação. Esses textos são antigos, mas não achamos nada que os substitua.
| Parte da página | O que o Baidu diz | Data |
|---|---|---|
| Título, data, texto principal | Não carregue com JS, isso atrapalha a avaliação do Spider 4 | 2017 |
| Conteúdo e links importantes | Use texto, não JS 2 | 2019 |
| Páginas com link apenas em JS | O Baidu pode não conseguir indexá-las 2 | 2019 |
| Navegação e texto principal | Mantenha fora do Ajax, que serve para a interação do usuário 2 | 2019 |
| Preços | Preços gerados por JS são ruins para o spider e difíceis de usar na busca 6 | 2017 |
| Redirecionamentos | Um redirecionamento em JS que o Baidu não reconhece é listado como anomalia de rastreamento 318 | 2019 |
Há uma tensão aqui. O guia, atualizado pela última vez em 2019, diz que os buscadores não conseguem identificar conteúdo em JavaScript,2 dois anos depois do agente de renderização.1 Não achamos nenhum texto do Baidu que concilie as duas coisas.
A orientação vale de qualquer forma, porque o HTML funciona independentemente do que o agente de renderização faça.
O JavaScript prejudica o ranqueamento por si só?
Nada do que achamos mostra isso. O risco é o conteúdo que o Baidu não enxerga, e não a presença de scripts.
O estudo de 2019 da Chinafy não encontrou correlação entre o quanto uma página era dinâmica e sua posição no Baidu.10
Trate isso como um sinal aproximado. O estudo comparou a posição com o conteúdo da página antes e depois do Ajax, então não testou o que o Baidu lê. Ele também descartou 23 páginas feitas só de JavaScript, e o texto publicado ainda tem campos não preenchidos.10
O próprio Baidu ensina os desenvolvedores a usar bem o JavaScript. O guia de desempenho de 2019 recomenda defer em primeiro lugar, depois async, e separar o pouco código de que a primeira tela precisa.21
O perigo é uma página que parece vazia:
- A lista de 2023 do Baidu sobre páginas de baixa qualidade inclui páginas que abrem normalmente mas não têm conteúdo.28
- O white paper de 2017 alerta que páginas móveis carregadas por JS têm mais tendência a conteúdo raso.5
- O guia de 2019 diz que páginas muito lentas também podem ser tratadas como rasas.3
Esse último ponto pesa para sites hospedados fora da China, como um site em um servidor no Brasil. Veja como medir e melhorar a velocidade do site na China e confira se nenhum script depende de serviços do Google que falham na China.
Verificação gratuita
Seu site aparece no Baidu?
Informe seu site. Verificamos o Baidu, o acesso a partir da China e a configuração do site, e enviamos o relatório por e-mail.
Pedido recebido
Enviaremos seu relatório por e-mail.
Qual renderização usar para o Baidu
Escolha qualquer configuração que coloque seu texto e seus links na primeira resposta em HTML. O framework não importa, desde que o resultado faça isso.
| Configuração | Texto no primeiro HTML? | Para o Baidu |
|---|---|---|
| Geração estática | Sim | A opção mais simples para sites institucionais e blogs |
| Renderização no servidor (Next.js, Nuxt 14) | Sim | Segue a orientação do Baidu e serve para páginas que mudam com frequência |
| CMS clássico com alguns scripts | Em geral | Funciona, mas confira abas, botões “carregar mais” e filtros |
| Pré-renderização só para rastreadores | Para rastreadores | Uma solução paliativa, veja abaixo |
| Só no cliente | Não | O caso contra o qual os guias do Baidu alertam |
Pré-renderização para rastreadores. Significa detectar os bots e entregar a eles uma cópia renderizada à parte. O Google chama isso de alternativa provisória e recomenda renderização no servidor, renderização estática ou hidratação.20
Não achamos nenhuma regra do Baidu que proíba ou aprove essa prática. O white paper de 2017 trata de páginas otimizadas para rastreadores: fique dentro de 128k e coloque o conteúdo principal primeiro.5
Um artigo convidado que o Baidu publicou em 2015 prefere a mesma página para pessoas e rastreadores.17 Se mesmo assim você usar pré-renderização, mantenha o conteúdo idêntico.
O texto está no código-fonte?
Sim: verificar o peso da página.
Não, site institucional ou blog
Geração estática
Não, conteúdo que muda com frequência
Renderização no servidor
Reformulação impossível no curto prazo
Pré-renderização para rastreadores, com conteúdo idêntico
A armadilha da renderização no servidor: o tamanho da página
A renderização no servidor pode criar um problema próprio no Baidu. O white paper de 2017 diz que um código-fonte acima de 128k pode ser cortado durante o rastreamento e recomenda ficar dentro desse limite.5
O exemplo dele é revelador. Um site gerava o conteúdo principal com JS e, por isso, criou uma versão para o rastreador com imagens em base64 dentro do HTML, antes do texto. A página chegou a 164k.
O rastreador cortou a página, ela foi considerada rasa e não foi indexada.5
Páginas renderizadas muitas vezes carregam também dados e estilos inline, então confira o tamanho do código-fonte, não só o da transferência.
Links e URLs
Gere a navegação com links <a href> de verdade no HTML, porque páginas alcançáveis apenas por JavaScript podem não ser indexadas.2
A contagem de 2016 de preactjs.com combina com isso. Quem a fez suspeitou que outros buscadores além do Google indexaram a página, mas não seguiram seus links.12
Use caminhos reais, e não rotas com #. O artigo convidado de 2015 defendia URLs sem o hash.17 É um conselho antigo de um profissional, não uma regra do Baidu.
Use redirecionamentos no servidor, e não em script, por causa da forma como o Baidu lista os redirecionamentos em JS.318
Como testar o que o Baidu recebe do seu site
Comece pelas verificações que não exigem conta e depois passe para a ferramenta do próprio Baidu. Os dois primeiros passos levam minutos. Faça tudo na versão em chinês da página, se ela já existir.
-
Veja o código-fonte. Abra
view-source:em uma página-chave, e não o inspetor. Procure seu H1, uma frase do texto e seus links principais. -
Solicite a página sem navegador. Uma requisição simples não executa JavaScript, então mostra a primeira resposta. Esta usa o user agent publicado pelo Baidu:1
curl -s -A "Mozilla/5.0 (compatible; Baiduspider-render/2.0; +http://www.baidu.com/search/spider.html)" https://example.com/page/ | wc -cRemova
| wc -cpara ler o HTML. Mantenha o pipe para contar o tamanho em bytes e fazer a verificação dos 128k. -
Rode o diagnóstico de rastreamento. A ferramenta mostra o que o spider obteve, em PC e mobile.732 A página dela indica 70 usos por site por semana e a exibição dos primeiros 200KB.7 Em julho de 2020, o Baidu reduziu essa cota, que era de 200, e disse que a ferramenta testa o rastreamento e não afeta a indexação.29
-
Confira seus logs. Procure
Baiduspider-rendere depois confirme o IP por DNS reverso. Os hosts reais terminam em.baidu.comou.baidu.jp.19 Um registro mostra que a página foi acessada, não que o conteúdo foi indexado.
A ferramenta fica no menu de recursos do site, na plataforma do Baidu,24 e você precisa de um site verificado. Nosso guia para configurar o Baidu Webmaster Tools a partir do Brasil explica como.
Faça seu próprio teste de marcadores
Não dá mais para ver a cópia salva pelo Baidu, porque o recurso de snapshot desapareceu em agosto de 2022.23 E o site: é apenas uma estimativa.25
Um teste de marcadores é o que há de mais próximo de uma resposta direta. Ainda não fizemos este teste por conta própria.
- Crie uma página de teste. Use seu template normal, com conteúdo real suficiente para que valha a pena indexá-la.
- Adicione duas sequências de texto inventadas. Coloque uma no HTML e faça um script inserir a outra depois do carregamento. Nenhuma das duas deve existir em outro lugar na internet.
- Crie links para a página e envie-a. O Baidu diz que o envio não garante indexação26 e não dá prazo.27
- Espere a página aparecer. Nosso guia sobre como verificar a indexação no Baidu mostra como.
- Busque cada sequência. Se a do HTML aparecer e a do script não, o Baidu não indexou o texto injetado nessa página.
O resultado vale para uma página, em uma data. Se a renderização for seletiva, como a Botify afirmou em 2019,11 sua próxima página pode se comportar de outra forma.
Se uma página não aparece de jeito nenhum, a causa pode não ser o JavaScript. Comece por por que seu site não aparece no Baidu.
Para celulares, veja também SEO mobile no Baidu.
Em resumo
O Baidu tem um agente de renderização desde 2017, e não achamos nenhuma declaração de quanto ele faz. Os dois testes controlados que chegaram a um resultado mostram que o Baidu não captou conteúdo injetado, embora nenhum seja recente.
Então trate o JavaScript como um bônus, e não como forma de entregar conteúdo. Se seu texto e seus links estão na primeira resposta em HTML, a pergunta deixa de importar.
Como a Index in China pode ajudar
Traduzimos seu site para o chinês simplificado com revisão humana, cuidamos do envio aos buscadores chineses quando a conta permite e enviamos um relatório mensal sobre o tráfego chinês.
Se o seu site depende de JavaScript no cliente, avise logo no início, porque isso muda o trabalho.
Não prometemos ranqueamento nem tráfego. Veja o que fazemos.
Agendar uma chamada de 30 minutosPerguntas frequentes
O Baidu consegue indexar um site em React ou Vue?
Consegue, se o servidor enviar o conteúdo. O que importa não é o framework, e sim a primeira resposta em HTML. Um site em React ou Vue renderizado no servidor parece uma página qualquer para um rastreador. Montado só no navegador, ele pode chegar como uma casca quase vazia, que é o caso contra o qual os guias do Baidu alertam.
Migrar para renderização no servidor vai fazer minhas páginas serem indexadas?
Isso tira um obstáculo, e nada mais. O Baidu não garante a indexação de nenhuma página e também leva em conta a qualidade do conteúdo. Seu site ainda precisa ser acessível a partir da China e ter conteúdo em chinês que as pessoas procuram. Trate a migração como uma condição prévia para testar o Baidu, e não como um resultado em si.
Isso vale para Bing, 360 e Sogou na China?
Depende do buscador. A Dragon Metrics disse em 2021 que o Bing rastreia com um navegador Chromium atual, portanto pode renderizar JavaScript,22 embora um trecho de teste de 2020 o chame de inconsistente.8 Não achamos evidência utilizável sobre 360 ou Sogou. Um HTML que já traz o conteúdo evita a dúvida em todos os buscadores chineses.
Scripts de analytics ou de chat prejudicam a indexação no Baidu?
Não achamos nenhum texto do Baidu que diga isso. O próprio serviço de analytics do Baidu, o Tongji, é instalado por código nas suas páginas,30 e o guia de desempenho do Baidu manda carregar scripts com defer ou async.21 O risco prático é outro: um script de terceiros bloqueado na China pode travar a página para os seus visitantes, então confira cada um.
Preciso do snippet de auto-push em JavaScript do Baidu?
Não. O Baidu tirou do ar a entrada de auto-push em dezembro de 2020, dizendo que avisaria se ela voltasse.29 Não achamos esse aviso, então trate como desatualizados os guias que recomendam o snippet. De todo modo, ele só informava URLs. O manual de 2020 do Baidu lista API, sitemap e envio manual, todos para sites verificados.33
Fontes
- Baidu: aviso sobre o novo user agent de rastreamento com renderização (em chinês)
- Baidu: Guia de otimização para buscadores 2.0 (em chinês)
- Baidu: como funciona o buscador (em chinês)
- Baidu: palestra sobre as novas regras de busca móvel, por um engenheiro da plataforma (em chinês)
- Baidu: white paper de otimização de sites para busca móvel, capítulo de otimização do site (em chinês)
- Baidu: white paper de otimização de sites para busca móvel, capítulo de ferramentas (em chinês)
- Baidu: página da ferramenta de diagnóstico de rastreamento (em chinês)
- Salt.agency: Can all search engines index JavaScript content? (em inglês, só trecho de busca, a página retornou 404)
- Unless: JavaScript indexing test (em inglês, só trecho de busca, os resultados não carregaram)
- Chinafy: If Baidu can't crawl dynamic sites, do pages heavy with Ajax and JS perform worse in SEO? (em inglês)
- Botify: International search engines, SEO for Baidu, Yandex and Naver (em inglês)
- freeCodeCamp: SEO vs. React, is it necessary to render React pages in the backend? (em inglês)
- Bartosz Goralewicz: Going beyond Google, are search engines ready for JavaScript crawling and indexation? (em inglês, aparentemente uma republicação de um artigo da Moz)
- Marketing to China: Baidu SEO vs Google SEO (em inglês)
- Marketing to China: Why your website doesn't rank on Baidu (em inglês)
- SEO Sherpa: Baidu SEO guide (em inglês)
- Baidu Search Academy: artigo convidado sobre aplicações de página única, por um líder de SEO da Ctrip (em chinês)
- Baidu: aviso da ferramenta de anomalias de rastreamento (em chinês)
- Baidu: perguntas frequentes sobre o Baiduspider
- Google: renderização dinâmica como solução alternativa
- Baidu: guia de otimização de desempenho de páginas (em chinês)
- Dragon Metrics: JavaScript crawling now in beta (em inglês)
- Sina Tech: reportagem sobre o fim do recurso de snapshot do Baidu (em chinês)
- Baidu: guia do usuário da plataforma Search Resource (em chinês)
- Baidu: nota sobre o operador site: (em chinês)
- Baidu: ferramenta de envio para indexação normal (em chinês)
- Baidu: perguntas e respostas sobre indexação (em chinês)
- Baidu: nota sobre páginas irregulares e de baixa qualidade (em chinês)
- Baidu: registro de atualizações das ferramentas (em chinês)
- Baidu Tongji: primeiros passos (em chinês)
- Centinel Analytica: perfil do rastreador Baiduspider-render (em inglês)
- Baidu: ferramentas da plataforma explicadas, incluindo o diagnóstico de rastreamento (em chinês)
- Baidu: manual das ferramentas da plataforma, capítulo de indexação normal (em chinês)
- V2EX: tópico de fórum sobre se um site em Vue pode ser indexado (em chinês)
- Google: Princípios básicos de SEO em JavaScript, em português
- Inblog: verbete de glossário sobre renderização dinâmica, em português