É o Javascript ruim para SEO?


Faz um cocô de urso na floresta? Com javascript e SEO, a resposta é tão clara, se um pouco mais complicada.

Sites orientados por Javascript não são ruins para indexação. O Google pode rastrear um site que preenche o conteúdo do lado do cliente.

O conteúdo do lado do cliente orientado por Javascript é ruim para SEO. Sites orientados por Javascript fazem com que o Google trabalhe mais. No mínimo, o Google os processa mais lentamente. Nas SERPs, isso é uma desvantagem competitiva.

Para demonstrar (Ian esfrega as mãos) eu uso diagramas de quadrante.

Se você já sabe como o JavaScript funciona, o que é a renderização do lado do cliente e como o Google lida com a renderização do lado do cliente, imprima isso, coloque-o na testa e siga em frente:

quadrante

O quadrante de javascript / SEO

Para nós, meros mortais, aqui está uma explicação mais completa:

Dois tipos de Javascript

Existem duas maneiras pelas quais o javascript do lado do cliente – javascript executado por um navegador da Web – pode interagir com o conteúdo da web:

Aprimoramento da interface do usuário altera a maneira como o navegador interage com o conteúdo processado no servidor. Exemplos incluem guias, navegação suspensa e carrosséis (suspiros).

Renderização no lado do cliente entrega páginas e conteúdo separadamente. Seu navegador usa javascript para mesclar os dois.

Esta postagem fala sobre a renderização de javascript do lado do cliente e por que ela é ruim para SEO.

Cliente vs. Lado do Servidor

Cada página da web é uma interação entre um cliente (um navegador, como o Chrome ou um bot, como o Google) e um servidor.

Gerar uma página da web envolve três etapas:

  1. Buscar o modelo de página (o layout)
  2. Buscar o conteúdo
  3. Mesclar o conteúdo com o modelo

A renderização do lado do servidor e do cliente executa essas três etapas de maneira diferente.

A renderização do lado do servidor faz todas as três etapas no servidor e, em seguida, envia o resultado para o cliente. O cliente tem tudo o que precisa, processa a página inteira e segue seu caminho alegre.

A renderização do lado do cliente usa o javascript para dividir o trabalho: ele envia o modelo ao navegador ou ao bot e, em seguida, envia o conteúdo separadamente. O navegador usa o javascript para mesclar o conteúdo e o modelo. A renderização do lado do cliente tem vantagens: é rápida (se você fizer isso corretamente). É uma ótima maneira de criar aplicativos interativos. Mas isso requer mais trabalho do cliente.

Aqui está nosso diagrama de quadrantes até agora:

Renderização de servidor e cliente
quadrante-servidor-cliente

Renderização de servidor e cliente

Conteúdo estático vs. interface dinâmica

Algumas páginas são apenas coisas: palavras e imagens e links e botões. Clicar nesses links e botões me envia para outra página ou exibe um formulário. Eles não modificam profundamente a própria página. Esse é o conteúdo estático e é o que você navega 90% do tempo: artigos, páginas de produtos, postagens em blogs, notícias etc.

Outras páginas mudam muito dependendo das minhas ações: um editor de texto, uma pesquisa multifacetada ou uma página em que o conteúdo é continuamente atualizado. Uma página como essa é uma interface dinâmica. O Portent Title Generator, construído por alguma agência incrível (tosse) é um exemplo:

O gerador de título usa Javascript para uma interface dinâmica
javascript-title-generator

Uma interface dinâmica usando o javascript

Com sorte, sua estratégia de SEO não depende de conteúdo dinâmico. Se você for bem-sucedido em SEO, precisará ter seu conteúdo estático indexado e otimizado.

Estático versus dinâmico é a próxima parte do diagrama do quadrante:

Estático, dinâmico, cliente e lado do servidor
quadrante-todos os quatro

Estático, dinâmico, cliente e lado do servidor

Quando você combina estático / dinâmico e do lado do servidor / cliente, você tem uma idéia de onde e como o javascript pode tornar o SEO mais difícil.

Quando Javascript fere SEO

Javascript é terrível para SEO quando você usa renderização do lado do cliente para conteúdo estático:

Quando Javascript é ruim para SEO
quadrante

O quadrante de javascript / SEO

Aqui está o porquê:

Conteúdo estático é o que você precisa indexar. Se você não conseguir inserir um produto importante no ranking, se sua postagem do blog for invisível, você será escolhido. Felizmente, o Google rastreia e indexa conteúdo estático controlado por javascript. Tudo bom.

Você também precisa de conteúdo estático otimizado: você precisa de classificações mais altas e esse conteúdo é como você chegará lá. O problema começa aqui. O Google usa a renderização em dois estágios em sites com tecnologia javascript: ele rastreia o site agora e renderiza o conteúdo mais tarde. Veja como os engenheiros do Google dizem:

“A renderização de sites com JavaScript na Pesquisa do Google é diferido até que o Googlebot tenha recursos disponíveis para processar esse conteúdo. ”

Isso está nas palavras do próprio Google no io2018. Verifique o vídeo às 14:11.

Dois aprendizados:

  • O Google precisa de recursos extras para rastrear, renderizar e indexar totalmente páginas processadas no lado do cliente e alimentadas por javascript
  • O Google sentiu que era necessário apontar esse fato

A renderização do lado do cliente não faz mal indexação. Isso dói SEO. Existe uma diferença Como eu disse, o Google pode rastrear o conteúdo javascript, e isso acontece. Mas a renderização em duas etapas coloca o conteúdo do lado do cliente em desvantagem competitiva. Todos esses diagramas de quadrantes estão me deixando tonta:

Indexação versus SEO e javascript
quadrante2

Indexação vs. SEO

Se você está fazendo SEO, não pode se dar ao luxo de acabar na caixa inferior direita.

Se vocês devo usar renderização do lado do cliente em conteúdo estático, aqui estão duas maneiras de reduzir o dano:

Mitigação

Se você precisar usar o javascript, diminua-o usando renderização pré-renderizada ou híbrida.

Pré-renderização e detecção de agente de usuário

O pré-processamento funciona assim:

  1. Renderizar uma versão do lado do servidor de cada página em seu site
  2. Armazenar isso
  3. Quando um cliente visita, verifique o agente do usuário
  4. Se o cliente for um bot de pesquisa, entregue o conteúdo pré-renderizado em vez do conteúdo renderizado por javascript

A lógica é lamber-se-de-olho-de-dentro-torturado: se você pode entregar conteúdo pré-renderizado, por que não fazer isso desde o começo? Mas, se você precisar, tente o Puppeteer fazer pré-processamento ou um serviço como o prerender.io, que faz todo o trabalho para você.

Renderização híbrida

A renderização híbrida gera a primeira página / conteúdo do lado do servidor e, em seguida, entrega o conteúdo restante do lado do cliente. Tipo de. A maioria das bibliotecas javascript, como o Angular, suportam isso. Eu acho que.

Se você pesquisar "renderização híbrida", encontrará sete milhões de páginas, cada uma com uma definição ligeiramente diferente de "renderização híbrida". Para nossos objetivos, suponha que significa "Entregue o conteúdo mais importante, depois o outro".

Por exemplo, você poderia usá-lo para filtrar. O Coursera permite filtrar os cursos sem o javascript:

Mas a interface fica mais rápida e os resultados mais ricos, se o seu navegador suportar javascript:

Esse não é o melhor exemplo. Confie em mim que a renderização híbrida mistura conteúdo estático e orientado por javascript, entregando conteúdo estático primeiro.

Quando usar qual

Para conteúdo estático, use a renderização do lado do servidor ou, se for necessário, o pré-processamento. Se você deseja otimizar o conteúdo que está em uma interface dinâmica (como a lista de cursos do Coursera), use a renderização híbrida.

UM ÚLTIMO DIAGRAMA QUADRANTE:

Por que a mitigação é uma merda?

Minha regra: Se o Google oferece maneiras de atenuar uma coisa, não faça nada disso.

Você sabe que seu médico pode definir um osso. Isso não significa que você se esforce para quebrar a perna para dar risadinhas.

O Google pode lidar com sites controlados por javascript. Isso não significa que você se dedique a renderizar conteúdo usando o javascript.

Se nada mais, lembre-se que o Google muda de idéia.

Mas Eu não sou um inimigo de javascript. Em alguns casos, as páginas controladas por javascript fazem muito sentido.

Quando você deve usar JavaScript Rendering

Crie um site orientado a javascript do lado do cliente quando a interatividade é mais importante do que os rankings. Aplicativos, sites, agregadores e filtros semelhantes a aplicativos exigem processamento de javascript no lado do cliente. Em seguida, use a renderização híbrida para fornecer conteúdo crítico ao Google.

Quando você não deve usar o JavaScript Rendering

Não use javascript para conteúdo estático. Se o conteúdo não for interativo, uma página de produto básica, uma postagem de blog, artigos de notícias e qualquer outro conteúdo que não precise responder instantaneamente a comentários do usuário, não precisará de um javascript do lado do cliente.

Isso não inclui carrosséis e outras coisas. Isso é aprimoramento da interface do usuário, não entrega de conteúdo. Feito corretamente, está tudo bem.

Testando

Isso reunirá as roupas de muitos SEOs, desenvolvedores, cientistas de busca e engenheiros: não teste.

Testes fazem você se sentir melhor. Eles mostram que o Google pode realmente renderizar o conteúdo. Ótimo! Hooray para você!

Não. Boo para você! Porque o teste verifica a indexação e a renderização. Não verifica se você é competitivo.

Se você usa o javascript do lado do cliente para fornecer conteúdo estático, não passou no teste. Pare. Mude.

Pergunte-se por que

Existem duas lições aqui:

  1. Javascript pode ser ruim para SEO
  2. Há uma diferença entre SEO e indexação

Se você quiser competir no ranking, não use a renderização do lado do cliente para fornecer conteúdo estático ou qualquer conteúdo para o qual você deseja classificar. Use o javascript para gerar experiências semelhantes a aplicativos. Quando você está pensando em usar o JavaScript para fornecer conteúdo, faça uma avaliação muito honesta das vantagens e desvantagens.

Então lembre-se deste diagrama de quadrante útil. Eu dediquei muito tempo a isso:

Quando Javascript é ruim para SEO
quadrante

O quadrante de javascript / SEO

O post é Javascript ruim para SEO? apareceu primeiro em Portent.

Blogs que devem ser visitados também:

A Minha Maior De Milhões De Dólares Erros

Soda é tão 2017. Aqui está como economizar em nossa nova bebida favorita, AKA Water

Onde e como vender fotos em um banco de fotos

Gerencie efetivamente suas campanhas de divulgação para vários clientes e colegas de equipe

 Marketing de afiliados 101 – Como os afiliados são pagos?

Bugfix: Conrad do script de status de estoque – código-bude.net

O grande engano dos fornecedores tecnológicos 360º: como a Hotmart está se beneficiando do seu conteúdo e clientes sem que você perceba

20 idéias bem sucedidas de negócios em casa na Índia