por Membro da equipe TrueSocialMetrics ~ 5 min
Hoje em dia, marketing e análise estão enfrentando um novo desafio após a era do PC. É o rastreamento de vários dispositivos. Os clientes estão usando smartphones, laptops, computadores domésticos, etc., e nosso software de análise os conta como diferentes sessões de usuário. Mas eles não são. E os dados errados não ajudam a responder à pergunta principal: em quais canais você deve investir seu tempo e dinheiro para ter sucesso?
Primeiro, você deve se inscrever em uma conta do GA Universal.
O código geral se parece com:
<script>
(função(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||função(){
(i[r].q=i[r].q||[]).push(argumentos)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('criar', 'UA-XXXX-Y');
ga('enviar', 'visualizar página');
</script>
Mas o GA Universal está fornecendo um parâmetro userId especial na configuração para configurar seu ID personalizado para cookies do GA em vez do userId aleatório. Essa mudança significativa nos ajuda a rastrear usuários em vários dispositivos, porque podemos usar ID de visitante personalizado com base no e-mail ou ID do cliente em seu banco de dados para mesclar sessões de smartphone/laptop/pc em uma sessão entre dispositivos.
Portanto, vamos adicionar opções de userId para usuários de autenticação e salvar o ID de cookie gerado automaticamente pelo GA apenas para visitantes não autenticados.
<?if ($isAuthenticatedUser):?>
ga('create', 'UA-XXXX-Y', {'userId': '<?=$userId?>' });
<?else:?>
ga('criar', 'UA-XXXX-Y');
<?endif;?>
$isAuthenticatedUser
- verdadeiro, se o visitante atual for autenticado
$userId
- id único do usuário autenticado do banco de dados
Essa pequena mudança faz uma diferença significativa: a partir de agora, todos os usuários que fizerem login no seu site serão rastreados corretamente por todos esses dispositivos. Mas, além de usar uma nova conta do GA Universal, recomendo que você também mantenha o código Classic GA em seu site até que o GA Universal colete dados suficientes.
Antes de entrar, os visitantes têm um cookie _ga:
Como você pode ver, o cookie _ga foi alterado após a autorização dos usuários, mas funciona corretamente e todo o histórico da sessão do visitante será mesclado na sessão do cliente. Portanto, apesar do fato de alterar o ID, a transição de sessão no GA funciona perfeitamente bem, porque no momento em que o usuário vê a primeira página após a autorização (ou registro) - o GA obtém acesso ao valor legado do id_ga do visitante e nova configuração por parâmetro userId. Todos eles permitem que o GA mescle 2 sessões de usuário: antes e depois de entrar (inscrever-se) em 1 sessão global. O resultado: você observará o início suave da sessão desde a primeira visita e o fluxo em todos os dispositivos do usuário.
Testamos nos últimos 4 meses e funciona perfeitamente!
Se você está preocupado em usar o mesmo userId em sites diferentes, não se preocupe. Não há problema porque o GA usa o valor do cookie + o domínio como um identificador interno exclusivo. Isso significa que, se 2 sites configurarem o mesmo valor de userId com base no e-mail do cliente, os dados não serão corrompidos, porque eles estão usando domínios diferentes (e diferentes IDs de perfil do GA).
Artigo atualizado para seguir as últimas mudanças no Google Analytics: clientId foi renomeado para userId.
A próxima grande mudança é um protocolo de medição. Com a ajuda desta nova versão, você pode rastrear ações internamente de seu aplicativo sem ter que adicionar alguns parâmetros feios a urls para informar ao GA sobre um pagamento ou registro bem-sucedido.
O código simples fica assim:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://example.com/path/for/soap/url/");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, array(
‘v’ => 1,
‘tid’ => ‘UA-XXXX-Y’,
‘cid’ => $_COOKIE[‘_ga’],
‘t’ => ‘visualização de página’,
‘dp’ => ‘/pagamento/sucesso’,
));
curl_exec($ch);
lá:
v
- versão do protocolo, agora "1"
tid
- ID de rastreamento do GA
cid
- ID do cliente (pode ser md5(email) ou md5(id) para usuário de autenticação)
t
- tipo de hit (pageview/evento)
dp
- página para exibição de página
Este código enviará visualizações de página ao GA para a página “/payment/success”. Você pode usá-lo em seu aplicativo para rastrear quaisquer ações. Também existe o mesmo código simples para rastreamento de eventos (se você quiser usá-lo em testes a/b ou disparar algum evento de aplicativo).
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://example.com/path/for/soap/url/");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, array(
‘v’ => 1,
‘tid’ => ‘UA-XXXX-Y’,
‘cid’ => $_COOKIE[‘_ga’],
‘t’ => ‘evento’,
‘ec’ => ‘pagamento’, // categoria
‘ea’ => ‘pequeno’, // pacote
‘el’ => ‘pequeno pacote de assinatura de 1 ano’, // rótulo
‘ev’ => ‘324’, // valor desta ação $324 no meu caso
));
curl_exec($ch);
Então, finalmente, você terá eventos gerados programaticamente no GA.
Fontes (você pode encontrar mais exemplos nos links abaixo): - The Magic of Universal Analytics: Strategy, Tactics, Implementation Tips