Acompanhamento de conversões

Figura 2: visão geral do acompanhamento de conversões

Visão geral

O acompanhamento de conversões mantém o controle das conversões iniciadas pelo Google por meio de uma das nossas integrações da Central de ações. Ele ajuda a manter a integração em bom estado e funcionando, já que pode influenciar a classificação em determinadas páginas. Sempre que o Google gera um action_link, o URL específico é modificado para incluir um parâmetro de consulta exclusivo: rwg_token. Você pode armazenar o token e retornar os valores apropriados quando um usuário concluir uma reserva.

Para concluir a integração, siga estas etapas:

  1. Analise e armazene o rwg_token.
  2. Analise e armazene as informações do comerciante.
  3. Retorne os valores rwg_token e merchant_changed.
  4. Teste e verifique o acompanhamento de conversões.

Analisar e armazenar o rwg_token

Para concluir a integração, é necessário coletar e armazenar o rwg_token por até 30 dias da indicação inicial do Google. O valor rwg_token é uma string codificada que contém metadados sobre o link e as informações do comerciante que geraram esse action_link.

Analisar o token

Quando um usuário é direcionado à sua página de reserva, um novo rwg_token é anexado ao URL fornecido. Na página de reserva, é necessário analisar o valor do token.

O exemplo a seguir mostra como o rwg_token é analisado para acompanhamento no nível do dispositivo por um navegador.

const rwgToken = new URLSearchParams(location.search).get('rwg_token') || undefined;

Armazenar o token

Ao armazenar o rwg_token, é possível implementar o acompanhamento de conversões em dois níveis diferentes:

  • Nível do dispositivo
  • Nível do usuário

É possível armazenar o token em qualquer nível, mas é necessário armazená-lo por 30 dias após a indicação inicial.

O exemplo a seguir mostra o acompanhamento de conversões no nível do dispositivo. É possível armazenar os valores de token em um navegador com o cookie primário. Este exemplo pressupõe que você analisou o valor do token em uma variável. Atualize rootdomain.com com seu domínio.

if (rwgToken !== undefined) {
  document.cookie =
  "_rwgToken=" + rwgToken + "; max-age=2592000; domain=rootdomain.com; path=/";
}

Sempre que o Google gerar um action_link que você forneceu pelos feeds, o URL será modificado para incluir um parâmetro de consulta exclusivo: rwg_token. É necessário armazenar esse token e transmiti-lo como parte do evento de conversão.

Armazenar no nível do dispositivo

O nível do dispositivo inclui o uso de cookies do navegador, armazenamento local, armazenamento local do app ou qualquer outro método que possa manter o token por 30 dias de janela de atribuição. O token é armazenado localmente no dispositivo do usuário. Portanto, o evento de conversão não pode ser atribuído corretamente se o usuário:

  • Mudar o dispositivo usado.
  • Limpar o armazenamento local ou os cookies.
  • Usar um navegador privado ou anônimo.

Ao usar o acompanhamento de conversões no nível do dispositivo, é necessário reimplementar o evento de conversão em todos os dispositivos compatíveis, incluindo dispositivos móveis.

Armazenar no nível do usuário

O nível do usuário mantém o token no banco de dados do aplicativo, por meio de um sistema de análise do lado do servidor ou outros sistemas do lado do servidor. O token é armazenado no lado do servidor. Assim, o evento de conversão ainda é atribuído corretamente depois que o usuário faz login novamente.

Ao usar o acompanhamento de conversões no nível do usuário com base na arquitetura do sistema, é possível implementar o evento de conversão uma vez no lado do servidor e reutilizá-lo em todos os dispositivos compatíveis.

Atualizar o token

Quando o Google indica um usuário para o mesmo comerciante, o token já armazenado é substituído pelo novo token da indicação mais recente. Após a substituição do token, a janela de atribuição de 30 dias do armazenamento do token é redefinida, e todas as novas conversões desse comerciante são atribuídas ao token mais recente.

Consulte Requisitos para atribuição de conversão para mais detalhes.

Analisar e armazenar as informações do comerciante

Quando um usuário é direcionado à sua página de reserva, é necessário implementar a lógica que pode encontrar e capturar os detalhes do comerciante. Normalmente, os parceiros adicionam metadados do comerciante ou merchant_id aos links de ação e os usam para identificar e armazenar as informações do comerciante.

Recomendamos que você armazene o merchant_id ou o identificador selecionado com o rwg_token. Quando um usuário confirma uma reserva, é possível consultar o comerciante antes de enviar a solicitação de conversão completa. Assim como no armazenamento de tokens, é necessário salvar os detalhes do comerciante com o token por 30 dias após a indicação inicial.

O exemplo a seguir modifica o rwg_token armazenado anteriormente. Ele pressupõe que você analisou as informações do comerciante dos metadados no URL fornecido e as salvou como um merchant_id ou as correspondeu a um merchant_id existente.

// Store the rwgToken and merchantId in your cookie and set the cookie
// expiration date to 30 days.
if (typeof rwgToken !== 'undefined') {
  document.cookie =
  "_rwgToken=" + rwgToken + "; _merchantId=" + merchantId + "; max-age=2592000;domain=rootdomain.com; path=/";
}

Retornar os valores rwg_token e merchant_changed

Quando um usuário conclui uma reserva que começa com uma indicação de action_link, é necessário enviar uma solicitação HTTP POST para o endpoint de conversão. Há dois endpoints:

  • Ambiente de produção: https://www.google.com/maps/conversion/collect
  • Ambiente de sandbox: https://www.google.com/maps/conversion/debug/collect

Ao enviar um evento de conversão, é necessário incluir o rwg_token armazenado e um valor merchant_changed de 1 ou 2. Para mais detalhes sobre merchant_changed, consulte Retornar o valor de mudança do comerciante.

O corpo POST precisa ser um objeto codificado em JSON no formato:

{
  "conversion_partner_id": "<partnerId>",
  "rwg_token": "<rwg_token_val>",
  "merchant_changed": "1|2"
}
{
  "conversion_partner_id": "XXXXXXX",
  "rwg_token": "AFd1xnHrJWKcjtriCyB5j3QL0bzbmLdcg1N1f5cJuSNVhteYjuOJz18Au6GIAT0tjHkw6fkUJKcarafV45b3c_gl7uT_o8HMcg==",
  "merchant_changed": "2"
}

O exemplo a seguir inclui o acompanhamento de conversões no nível do dispositivo com um cookie no dispositivo do usuário, escrito em JavaScript:

const partnerId = XXXXXXXXXX;
const endpoint = `https://www.google.com/maps/conversion/collect`;

// Retrieve the value of the rwgToken stored in the browser's cookie
const match = document.cookie.match(new RegExp('(?:^| )_rwgToken=([^;]+)'));
const storedRwgToken = match ? match[1] : undefined;

// Send Conversion event with decoded token, verify any special characters
// are sent properly.
if (storedRwgToken !== undefined) {
  fetch(endpoint, {
    method: "POST",
    body: JSON.stringify({
      conversion_partner_id: partnerId,
      rwg_token: decodeURIComponent(storedRwgToken),
      merchant_changed: merchantChanged
    })
  });
}

Retornar o valor de mudança do comerciante

O valor merchant_changed é usado para determinar se o comerciante foi alterado em relação ao comerciante de redirecionamento inicial. A mudança de comerciantes é comum se a página de destino estiver em uma plataforma que inclui outros comerciantes. Nesse caso, se um usuário for indicado à sua plataforma pelo Google e decidir navegar até um comerciante diferente para concluir uma reserva, será necessário saber que uma conversão ocorreu com um comerciante separado. É possível usar um booleano para identificar a mudança do comerciante, mas não os detalhes do comerciante.

Ao decidir qual valor atribuir ao merchant_changed, é necessário usar o comerciante original salvo em Analisar e armazenar as informações do comerciante. Verifique se o comerciante mudou e atribua o valor de acordo com sua necessidade.

  • Requisito: quando um usuário sai do site do comerciante original e conclui uma compra pela sua plataforma com um comerciante diferente.
    • Valor de mudança do comerciante: 1
  • Requisito: quando o usuário conclui uma transação pelo comerciante original.
    • Valor de mudança do comerciante: 2

Testar e verificar o acompanhamento de conversões

Os casos de teste a seguir usam tokens de teste fornecidos na seção Tokens de teste e têm como objetivo orientar você em todos os cenários que podem resultar em um evento de conversão. Isso garante que o token seja armazenado corretamente, o valor merchant_changed seja definido corretamente e o evento de conversão seja enviado quando apropriado.

Use os URLs de link de ação ou página de reserva fornecidos nos seus feeds e execute cada caso de teste anexando os tokens de teste ao final do URL. Use uma janela de navegador privada ou anônima. Isso vai limpar todos os tokens associados ao usuário atual e oferecer uma tela limpa para trabalhar.

Caso de teste Descrição do teste User flow Resultado esperado
1 Um usuário conclui uma reserva que não foi originada no Google. Um usuário navega diretamente para a página de reserva sem ser indicado pelo Google ou sem uma indicação existente. Isso não deve resultar em nenhum evento de conversão. Nenhum evento de conversão porque o usuário não visitou a página de reserva anteriormente ou não foi indicado pelo Google.
2 Um usuário conclui uma reserva que foi originada no Google. Um usuário encontra seu comerciante pelo Google, é indicado à sua página de reserva e conclui uma reserva. Um evento de conversão será enviado com o Token A e o valor merchant changed de 2 porque o usuário foi indicado à página de reserva pelo Google.
3 Um usuário (originário do Google) inicia o fluxo de reserva, mas abandona a sessão antes que uma reserva seja concluída.

Observação: mantenha essa sessão aberta para os testes 4 e 5.
Um usuário é indicado à sua página de reserva, mas a sessão termina e ele não conclui uma reserva. Nenhuma conversão porque o usuário não concluiu uma reserva, mas o Token B precisa ser armazenado por 30 dias.
4 Um usuário retorna à página de reserva, sem ter sido originado do Google, e conclui uma reserva.

Observação: o URL do fluxo de reserva não pode incluir um rwg_token.
Um usuário retorna à página de reserva após o teste 4. O Token B precisa ser armazenado por 30 dias, e qualquer conversão durante esses 30 dias precisa retornar um evento de conversão. Um evento de conversão será enviado com o Token B e o valor merchant changed de 2 porque o usuário está retornando à página de reserva após a indicação anterior do Google.
5 Um usuário conclui uma nova reserva originada do Google após o teste 4. Se um usuário retornar à sua página de reserva usando uma indicação do Google após uma indicação anterior do Google, a janela de armazenamento de 30 dias será redefinida, e um novo token Token C substituirá o antigo Token B. Todas as conversões futuras serão atribuídas ao Token C. Um evento de conversão será enviado com o Token C e o valor merchant changed de 2 porque o usuário concluiu a reserva e o novo token substituiu o token armazenado anteriormente.

Se você tiver uma plataforma com a capacidade de os usuários fazerem o checkout com um comerciante diferente, teste o seguinte.

Caso de teste Descrição do teste User flow Resultado esperado
6 Um usuário é indicado à sua página de reserva pelo Google e conclui uma reserva com um comerciante diferente. Um usuário é indicado à sua página de reserva pelo Google, o Token A é usado, mas antes de concluir uma reserva, ele navega até uma página diferente e conclui a reserva com um comerciante diferente da indicação original. Um evento de conversão será enviado porque o usuário concluiu uma reserva que foi originada com uma indicação do Google com o Token A e o valor merchant changed de 1 porque o usuário concluiu a reserva em um comerciante diferente da indicação.

Durante o teste, envie a solicitação HTTP POST para o endpoint de conversão. Há dois endpoints:

  • Ambiente de produção: https://www.google.com/maps/conversion/collect
  • Ambiente de sandbox: https://www.google.com/maps/conversion/debug/collect

Tokens de teste

Para testar o acompanhamento de conversões, adicione um dos seguintes tokens de teste ao final dos links de ação ou dos URLs da página de reserva fornecidos nos seus feeds.

Token A :

rwg_token=AFd1xnHrJWKcjtriCyB5j3QL0bzbmLdcg1N1f5cJuSNVhteYjuOJz18Au6GIAT0tjHkw6fkUJKcarafV45b3c_gl7uT_o8HMcg%3D%3D

Token B :

rwg_token=AE37R_gte8WCEaytMalsIr9agWQRLuN8199RsVhU2WoRKRvcZ0eBTD8cFvnfUZh-GY0IvY-zjS3W9KWAmy3WDiWXbVvQRZyzMQ%3D%3D

Token C :

rwg_token=AE37R_jmAP-UgWNApkxwdlX5M2z1UBGuUzHZ63YWmRWeTjRJKxfSD1mzJ4joLnB11MHrBULuisjP-9I64LnBJDXyCc_CIJSCPg%3D%3D

Ao enviar os eventos de conversão bem-sucedidos, eles podem ser agregados na Central de ações no painel de acompanhamento de conversões.

conversion-tracking-dashboard

Requisitos para atribuição de conversão

O padrão exigido do Google para atribuição de conversão é uma janela de atribuição de 30 dias para qualquer interação com um link de ação de lugar, em qualquer loja.

Essa janela de atribuição significa que o Google pode esperar que um evento de conversão seja enviado em qualquer um dos seguintes cenários:

  • Um usuário segue um link de posicionamento de ação e faz um pedido para o mesmo comerciante na mesma sessão. Valor de mudança do comerciante = 2.
  • Um usuário segue um link de posicionamento de ação e retorna de um canal diferente na janela de atribuição de 30 dias para fazer um pedido para o mesmo comerciante. Valor de mudança do comerciante = 2.
  • Um usuário segue um link de ação de lugar e faz um pedido em uma loja diferente, na mesma sessão ou em uma sessão diferente dentro de uma janela de atribuição de 30 dias. Valor de mudança do comerciante = 1.

Além disso, o Google espera enviar eventos de conversão de qualquer dispositivo que um usuário possa acessar por um link de posicionamento de ação. Esses dispositivos incluem:

  • Aplicativos da Web para computador ou dispositivos móveis.
  • Apps para dispositivos móveis, por meio de um link direto do app ou de uma intent de app registrada para seu domínio.

Se o token for armazenado no nível do usuário, será esperado que você forneça a atribuição multidispositivo. Para mais informações, consulte Armazenar no nível do usuário. Nesse caso, um usuário que segue um link de ação do computador e conclui a transação no dispositivo móvel com a mesma conta de usuário precisa acionar um evento de conversão.

Se o token for armazenado exclusivamente no nível do dispositivo, como em cookies do navegador, não será esperado que você forneça a atribuição multidispositivo. Nesse caso, cada dispositivo pode ter um token separado persistido, se o usuário seguir um link de ação nesse dispositivo, e cada dispositivo poderá seguir as regras de atribuição separadamente.