← Notas

Investigando buscas dentro de um e-commerce

A busca interna é a única parte do site onde a pessoa escreve, com as próprias palavras, exatamente o que ela quer. É um dado subaproveitado na maioria das operações.

5 min de leitura
AnalyticsE-commerceComportamentoBigQuery

Quase tudo que a gente mede em e-commerce é comportamento inferido. A pessoa clicou aqui, então talvez esteja interessada naquilo. Ficou trinta segundos na página, então talvez tenha lido.

A busca interna é diferente. Ali a pessoa digita, em texto livre, o que ela veio buscar. É a coisa mais próxima de uma declaração de intenção que um site consegue capturar, e na maioria das operações esse dado morre num relatório de "termos mais buscados" que ninguém abre.

O que torna a busca interessante não é o ranking dos termos. É o que acontece depois de cada busca.

#O que precisa estar instrumentado

Para conseguir investigar, o mínimo é registrar a busca junto com o resultado dela. Só o termo não basta.

dataLayer.push({
  event: 'view_search_results',
  search_term: 'tenis corrida masculino',
  search_results: 42,
  search_filters_applied: 0
});

O campo de contagem é o que destrava a análise inteira, porque ele separa busca sem resultado de busca com resultado ruim. São dois problemas diferentes, com donos diferentes: um é catálogo, o outro é relevância.

Antes de enviar search_term ao Analytics, filtre dados pessoais. Campo de busca também recebe email, telefone, CPF, número de pedido e texto que não deveria virar dimensão. Bloqueie padrões sensíveis antes do dataLayer, limite quem acessa o dado bruto e defina uma retenção compatível com a finalidade. A remoção precisa acontecer antes da coleta; tentar limpar depois não desfaz o envio.

Depois disso, o percurso normal já cobre o resto, desde que dê para ligar a sessão da busca ao que veio depois:

view_search_results → view_item → add_to_cart → purchase

Vale um cuidado de normalização antes de qualquer coisa. Deixe tudo minúsculo, tire espaço sobrando, e decida o que fazer com acento. Sem isso, Tênis, tenis e TENIS viram três termos distintos e o relatório se fragmenta em pó. No GA4 isso tem um agravante: cardinalidade alta joga o excedente em (other) e você perde justamente a cauda longa, que é onde mora o achado.

#As quatro leituras que valem investigar

Quando eu abro esse dado, faço quatro leituras. Elas não são caixas mutuamente exclusivas, mas cada uma leva a uma ação diferente.

Busca sem resultado

O caso mais óbvio e o mais rápido de acionar. A pessoa pediu, o site respondeu que não tem.

Mas o diagnóstico se divide em dois. Ou você realmente não vende aquilo, e isso é uma lista de demanda que o time comercial deveria ver. Ou você vende e o site não achou, o que é problema de sinônimo, de erro de digitação não tratado, ou de como o produto foi cadastrado.

A segunda categoria é a mais frequente e a mais frustrante, porque é venda perdida com o produto em estoque. Termo regional, apelido de categoria, nome comercial que o cliente usa e o cadastro não tem.

Busca com muito resultado e nenhuma conversão

A pessoa buscou, veio uma lista cheia, e ela não clicou em nada. Relevância ruim: o mecanismo devolveu qualquer coisa que casava com uma palavra, sem entender a intenção.

Termo com volume alto, muitos resultados e taxa de clique baixa é o padrão mais rentável de atacar, porque tem tráfego suficiente para justificar o esforço e o produto já existe.

Busca que converte muito acima da média

Esse é o grupo que quase ninguém olha, e é o mais interessante.

Quem busca já sabe o que quer, então a conversão de quem usa a busca costuma ser bem maior que a do restante do site. Dentro desse grupo, alguns termos convertem ainda mais. Isso diz duas coisas: são produtos com demanda quente, e são termos que valem virar entrada de categoria, sugestão automática ou destaque na home. Se as pessoas precisam buscar para achar, a navegação está escondendo algo que vende.

Busca sem resultado por coisa que você não vende

Demanda pura, de graça, dita pelo cliente. Vale exportar periodicamente e mandar para quem decide sortimento. É o tipo de informação que normalmente se compra em pesquisa de mercado.

#A pergunta que muda a conversa

Depois de separar os grupos, tem uma pergunta que reposiciona a busca dentro da operação:

Quanto da receita passa por uma busca?

Não é a conversão de quem busca. É a fatia do faturamento em que houve pelo menos uma busca no caminho. Esse número costuma surpreender, e costuma ser alto o suficiente para que a busca deixe de ser tratada como um campo de texto no cabeçalho e passe a ser tratada como um produto.

Uma vez que essa fatia está na mesa, "melhorar sinônimo" deixa de ser tarefa de backlog e vira prioridade com valor estimado.

#Onde fazer a análise

Os relatórios prontos do GA4 servem para o ranking e pouco mais. A parte boa exige cruzar o termo com o que aconteceu depois na mesma sessão, e isso pede o dado bruto.

No BigQuery, com o export do GA4, dá para montar por sessão: qual termo foi buscado, quantos resultados vieram, se houve visualização de produto depois, se houve carrinho, se houve compra. Com isso na mão, os quatro grupos acima saem de uma consulta só, e a cauda longa continua inteira em vez de virar (other).

O trabalho pesado não é o SQL. É a normalização dos termos e decidir o que conta como "busca que levou à compra" quando a pessoa buscou quatro coisas diferentes na mesma sessão.

#O padrão que se repete

Toda vez que eu abro busca interna, o roteiro acaba parecido: um punhado de termos de alto volume sem resultado por causa de sinônimo, uma categoria inteira que as pessoas procuram por um nome que o catálogo não usa, e dois ou três produtos que convertem muito bem e estão enterrados na navegação.

Nenhum desses achados exige redesenho, teste A/B ou projeto. Exige alguém olhando o que as pessoas escreveram.