UTM ou gclid sumiu no redirecionamento: como testar e corrigir
Publicado em pela equipe do UTM Builder, na Limner.
Quando a URL do anúncio passa por um redirecionamento que não repassa a query string, a página final abre sem UTM e sem gclid, e o GA4 registra a visita como (direct) / (none). O teste é abrir o link real e olhar cada salto. A correção costuma estar numa regra do servidor, do plugin ou do encurtador.
Onde a UTM se perde
A ajuda do GA4 sobre tráfego direto cita os redirecionamentos de um site para outro ou de https para http, e os encurtadores como o bit.ly, entre o que pode remover os parâmetros. Os pontos que mais aparecem:
- Regra do servidor. http para https, sem www para com www, URL antiga para nova, barra no final. Cada regra é um salto, e basta um deles descartar a query string.
- Plugin de redirecionamento no WordPress. A regra criada para a URL limpa pode não tratar a URL com parâmetros do jeito que você espera.
- Encurtador. O link curto aponta para a URL que você colou ao criar. Se ela foi colada sem UTM, não há UTM para chegar.
- Página de link na bio. A UTM do link da bio fica na página intermediária. A visita ao seu site sai do botão, e o que vale é a URL desse botão.
- Navegador interno de app. Muitos apps abrem o link dentro deles. O clique real passa por ali, então o teste no Chrome do computador não basta.
O alerta do gclid no Google Ads
O Google Ads tem um alerta próprio: "Os redirecionamentos de site estão perdendo dados de cliques". A ajuda explica que ele aparece quando os redirecionamentos não transmitem o GCLID e que, sem ele, o clique não é associado a nenhuma conversão futura. A página sobre codificação automática diz o mesmo: se o site usa redirecionamentos, o GCLID precisa chegar à página de destino final.
A mesma página trata do site que dá erro ao receber parâmetros: a orientação é desativar a codificação automática, pedir ao desenvolvedor que habilite parâmetros arbitrários de URL e só então reativá-la.
Como testar
- Copie o link exatamente como está no anúncio, na bio ou no e-mail. Para o Google Ads, acrescente
gclid=teste123à URL final, com?ou&conforme o caso. - No Chrome, abra as ferramentas para desenvolvedores, vá ao painel Rede e marque Preservar registro, que guarda as solicitações entre um carregamento e outro.
- Abra o link. Clique em cada resposta 301, 302, 307 ou 308 e procure, em Cabeçalhos de resposta, o cabeçalho
Location. Os parâmetros precisam estar em todos os saltos. - Na página final, confira a barra de endereço e veja se a visita chega no relatório Tempo real do GA4.
- Repita no celular e dentro do app onde o link vai circular.
http://loja.com.br/promo?utm_source=teste&utm_medium=teste&utm_campaign=teste-redirect&gclid=teste123
Comece pelo http:// e sem www de propósito: assim o teste passa pelos saltos que o servidor faz sozinho.
Como corrigir
- Link direto. O que resolve mais rápido é usar no anúncio a URL final, já com https e com o domínio certo. Sem salto, não há o que perder.
- Apache. A diretiva
Redirectleva os parâmetros GET para o destino, segundo a documentação. NoRewriteRule, se o destino não tem query string, a original é copiada; se o destino tem a sua própria, a original é descartada, a menos que a regra use[QSA]. A flag[QSD]descarta a query string de propósito. Procure regras comQSDou com?no destino. - Nginx. A variável
$request_urié a URI original completa, com os argumentos. Norewrite, um?no fim do destino impede que os argumentos antigos sejam anexados: é esse ponto de interrogação que apaga a UTM. - WordPress com o plugin Redirection. A documentação lista três opções para parâmetros. A padrão é correspondência exata. Para a UTM chegar ao destino, a opção é ignorar e repassar os parâmetros:
/promo?utm_source=xvai para/oferta?utm_source=x. - Encurtador. Crie o link curto já apontando para a URL longa com UTM. Se você quer acrescentar parâmetros no link curto e vê-los chegar ao destino, confira na documentação do encurtador se ele repassa e em qual plano.
nginx: return 301 https://www.loja.com.br$request_uri;
apache: RewriteRule "^promo$" "/oferta?ref=site" [R=301,L,QSA]
Fontes oficiais
- Google Analytics: Entender o tráfego "(direct)" / "(none)"
- Google Ads: Os redirecionamentos de site estão perdendo dados de cliques
- Google Ads: Sobre a codificação automática
- Chrome DevTools: Referência de recursos de rede
- Apache HTTP Server: mod_alias (Redirect)
- Apache HTTP Server: RewriteRule Flags (QSA e QSD)
- nginx: ngx_http_rewrite_module
- nginx: ngx_http_core_module ($request_uri)
- Redirection (WordPress): Matching a URL