Pular para o conteúdo

Redirecionamento que conta o clique e repassa o ref

Resposta curta

Você publica na Systeme.io um endereço que conta cada carregamento como clique e entrega o visitante na página de destino com o identificador da URL intacto. São cinco etapas no painel, dois scripts curtos e três testes que você mesmo roda no navegador, sem instalar nada.

Assunto: Ferramentas grátis

Por Alan Victor · · · 7 min de leitura

  1. 1crie o passo que recebe o clique
  2. 2cole o script que lê e repassa o identificador
  3. 3rode os três testes
  4. 4leia o número de cliques e saiba o que ele não conta
  5. 5faça o identificador sobreviver ao segundo salto

No fim deste guia você tem um endereço publicado na Systeme.io que conta cada carregamento como um clique e entrega o visitante na página de destino com o identificador que veio na URL. É tudo dentro do painel: cinco etapas, dois scripts curtos e três testes que você roda no próprio navegador.

Sai um guia por dia, e o canal do Telegram avisa quando sai. A ferramenta que eu uso para a página, a captura e o e-mail automático no mesmo lugar é a Systeme.io, que tem plano gratuito.

O que você vai ter no fim

Etapa 1: crie o passo que recebe o clique

Resposta direta: você cria um passo de página em branco num funil da Systeme.io, publica e passa a usar a URL desse passo como o link que conta e redireciona.

No painel, abra Funis, crie um funil novo e adicione um passo do tipo Página. Escolha o modelo em branco: aqui não entra texto nem formulário, é uma página que carrega e sai do caminho.

Publique o funil e publique o passo. Copie a URL do passo, a que aparece no topo do editor. É esse endereço que você vai divulgar.

Resultado: abrir a URL mostra uma página vazia. Se aparecer erro de página não encontrada, o passo ou o funil ainda está como rascunho — publique os dois e recarregue.

Eu monto isso na Systeme.io porque funil, página e estatística ficam no mesmo painel: você não junta três ferramentas para contar um clique. E o plano grátis já publica esse passo hoje, sem cartão.

Etapa 2: cole o script que lê e repassa o identificador

Resposta direta: um script curto lê o parâmetro ref, limpa o valor e troca a página pelo destino já com o identificador na URL.

No editor do passo, abra as configurações da página e procure o bloco de código personalizado. Cole o código abaixo no campo do corpo (body), não no head. Salve e publique de novo.

<script>
(function () {
  var params = new URLSearchParams(window.location.search);
  var ref = params.get('ref') || params.get('utm_source') || 'sem-id';
  ref = ref.replace(/[^A-Za-z0-9._-]/g, '').slice(0, 32);
  if (!ref) ref = 'sem-id';
  var destino = 'https://SEU-DESTINO.com/pagina';
  var alvo = new URL(destino);
  alvo.searchParams.set('ref', ref);
  console.log('ref:', ref);
  console.log('destino:', alvo.toString());
  window.location.replace(alvo.toString());
})();
</script>

O que cada parte faz: URLSearchParams lê a query string; sem ref, o valor vira sem-id; a expressão regular derruba tudo que não for letra, número, ponto, hífen ou sublinhado; slice(0, 32) corta em 32 caracteres, tamanho que cabe em qualquer campo de texto sem truncar; location.replace troca a página sem deixar a de redirecionamento no histórico do botão voltar.

Troque https://SEU-DESTINO.com/pagina pelo endereço real. Se esse endereço for a própria página de redirecionamento, o navegador entra em laço.

A vantagem de fazer isso na Systeme.io é o campo de código existir na própria página, sem instalar extensão nem plugin. A mesma conta que guarda o passo guarda a página de destino e a lista — você não fica pulando de painel.

Etapa 3: rode os três testes

Resposta direta: abra a URL do passo três vezes, com identificadores diferentes, e confira na barra de endereço e no console o valor que chegou no destino.

Abra o console do navegador antes de testar. Com o código no lugar, cada teste imprime duas linhas:

ref: abc123
destino: https://SEU-DESTINO.com/pagina?ref=abc123

Se as linhas não aparecerem e a página ficar parada, o console mostra o erro de sintaxe em vermelho, quase sempre porque o editor trocou as aspas retas por aspas curvas.

URL que você abreref que chegaO que confirma
.../passo?ref=abc123abc123o repasse funciona
.../passosem-ido valor padrão entra quando não há parâmetro
.../passo?ref=ABC 123!ABC123a limpeza corta espaço e exclamação

O laço tem assinatura própria: a tela mostra ERR_TOO_MANY_REDIRECTS e a página não carrega. Isso acontece quando o destino aponta de volta para a URL do passo.

Para fazer isso sem montar servidor

O que este guia faz por API, a Systeme.io faz por formulário: página, lista, etiqueta e e-mail automático na mesma conta. É a conta em que eu testo o que aparece aqui, e o plano gratuito já dá para publicar e capturar.

Ver o plano gratuito

Etapa 4: leia o número de cliques e saiba o que ele não conta

Resposta direta: cada carregamento do passo entra como uma visita na estatística do funil, então o contador de cliques é a coluna de visitas daquele passo.

Abra o funil e vá em estatísticas. Recarregue a URL duas vezes e o número sobe dois — esse é o teste de que o contador está ligado.

O que ele não conta: pessoas únicas e cliques de robô. Quando você cola o endereço no WhatsApp, o aplicativo busca a página para gerar a prévia, e essa busca pode entrar na conta. Trate o número como ordem de grandeza, não como auditoria.

Uma conferência que vale a pena: abra as ferramentas de desenvolvedor, aba Rede, e recarregue. A página do passo responde 200. Ela não responde 301 nem 302, porque o desvio acontece no navegador, depois de a página carregar. Um 301 é resolvido no servidor e o navegador nem chega a carregar uma página — e sem página carregada não há visita para contar.

Etapa 5: faça o identificador sobreviver ao segundo salto

Resposta direta: na página de destino, um segundo script copia o ref para os links internos, para o valor chegar ao checkout ou ao formulário.

Sem isso o identificador morre na primeira página: ele fica na barra de endereço e ninguém lê. Cole este bloco no corpo da página de destino, também no código personalizado.

<script>
(function () {
  var ref = new URLSearchParams(window.location.search).get('ref') || '';
  if (!ref) return;
  var links = document.querySelectorAll('a[href]');
  for (var i = 0; i < links.length; i++) {
    var url = new URL(links[i].href, window.location.href);
    url.searchParams.set('ref', ref);
    links[i].href = url.toString();
  }
})();
</script>

Resultado: todo link interno da página passa a carregar o mesmo ref. Confira passando o mouse sobre o botão e olhando o endereço na barra de status do navegador. Se o botão não for um link de verdade, o script não o alcança — é o caso de trocar o botão por um elemento de link no editor.

É aqui que a Systeme.io economiza tempo: a página de destino, o formulário e a automação de e-mail vivem no mesmo painel, então o segundo salto não vira uma integração a mais para manter.

Dá para fazer isso sem uma página no meio?

Não com contagem própria. A visita é o que a Systeme.io registra; sem página carregada não existe visita. Juntar outra ferramenta só para encurtar o link até conta o clique, mas você perde o controle do que ela faz com o identificador e passa a olhar dois painéis em vez de um.

Existe também o caminho de automatizar pela API da Systeme.io, criando o contato direto com o ref sem passar por formulário — a documentação oficial da API lista os campos aceitos. Para hoje, o painel resolve e não expõe chave nenhuma no navegador.

Se você ainda não tem conta, esse é o momento mais barato de começar: criar a conta grátis na Systeme.io pelo botão desta página e fazer a Etapa 1 agora, enquanto o guia está aberto. Cada dia sem um endereço que conta clique é um dia de visita que vai embora sem você saber de onde veio.

O que eu não vou afirmar

Travou em alguma etapa?

Abra uma discussão em github.com/alanvito1/funil-simples dizendo em que passo parou. Dúvida que aparece mais de uma vez tem boa chance de virar guia, e o código deste site está no mesmo lugar, aberto.

Se ainda não tem onde publicar o que montou, a conta gratuita da Systeme.io resolve a página e a lista.

Perguntas frequentes

Como contar cliques em um link sem servidor próprio?

Dá para contar com uma página de redirecionamento na Systeme.io: cada carregamento do passo entra como visita na estatística do funil, e um script curto desvia o visitante para o destino levando o identificador na URL. Não precisa de servidor nem de instalação.

O parâmetro ref se perde no redirecionamento?

Não, desde que o desvio seja feito por script, porque ele lê a query string da página de entrada e remonta o endereço de destino com o mesmo valor. Um redirecionamento de servidor também preserva o parâmetro, mas não deixa página carregada para contar a visita.

Redirecionamento em JavaScript é pior que 301?

É diferente. O 301 é resolvido no servidor e o navegador nem carrega a página intermediária, então não há visita para contar. O desvio por JavaScript carrega a página com status 200 e troca o endereço depois, e é esse carregamento que vira o número de cliques.

Funciona com domínio próprio?

Funciona igual na Systeme.io. O script lê a query string, que não muda com o domínio; o que muda é só o endereço que você divulga.

Quantos identificadores diferentes posso usar no mesmo link?

Quantos você quiser, desde que cada um caiba em 32 caracteres e use apenas letra, número, ponto, hífen ou sublinhado. O script corta o resto antes de montar o destino, então valores longos ou com espaço chegam alterados e o relatório não bate.

Leve isto com você

A planilha dos limites do seu plano

É planilha com catorze linhas do que realmente morde num plano gratuito — e por que cada uma morde — com três colunas para o seu número, o limite do plano e a hora de subir, cabeçalho preso no topo e filtro pronto.

Baixar (XLSX, 3.5 kB)

Abra no Excel, no Google Planilhas ou no LibreOffice, preencha o seu número de hoje e o limite que aparece na página de planos da sua conta. Onde a folga acabar, é ali que o plano pago passa a valer. Sem cadastro, sem e-mail: o arquivo baixa direto.

Receba o resto por e-mail

Eu testo ferramenta de funil e e-mail e mando o que descubro.