google analytics – vários rastreadores em uma página (conflito de cookies)

Estou escrevendo um aplicativo da web que deveria estar embutido nos sites de outras pessoas (como um widget). Estou usando o Google Analytics para acompanhar todas as pessoas que visitam todas as instâncias do meu script nos sites de incorporação. O problema é que não sei como usá-lo para que ele não interfira nas contas do próprio Google Analytics desses sites. Estou armazenando a variável tracker em um namespace, então achei que deveria fazê-lo, mas não percebi que o GA armazena suas configurações em cookies (__utma, __utmz etc.), e esses cookies são usados ​​por ambos os rastreadores, se há dois deles na mesma página … Por exemplo, se eu usar _setVar para armazenar algum tipo de variável definida pelo usuário no Google Analytics, e o site de incorporação fizer o mesmo, sobrescrevemos os valores um do outro …

É claro que seria mais fácil se o Google fornecesse uma maneira de alterar o nome dos cookies para um personalizado, mas não consigo encontrar uma maneira de fazê-lo. Pensei em usar o domínio ou o caminho do cookie para forçar um cookie separado, mas isso não funciona, porque se eu definir domínio ou caminho para algo diferente do domínio / caminho real, o cookie não será legível para a página após o recarregamento. ..

Alguém sabe uma maneira de ter dois rastreadores em uma página e fazer com que eles usem cookies separados para não sobrescreverem as configurações uns dos outros?

Ou, se isso for completamente impossível – existe algum outro serviço de análise com funcionalidade semelhante à do GA, no qual isso é possível? (teria que ter resources avançados como rastreamento de events e campanhas …)

Agora facilitado com o novo código de acompanhamento asynchronous. 🙂

https://developers.google.com/analytics/devguides/collection/gajs/#MultipleCommands

Você pode instalar várias instâncias do código de acompanhamento do Google Analytics em suas páginas da Web para enviar dados a várias propriedades em sua conta. https://support.google.com/analytics/answer/1032400?hl=pt

Ou você pode ser criativo e seguir as instruções do Google. https://developers.google.com/analytics/devguides/collection/analyticsjs/advanced#multipletrackers

 

Não é necessário usar nomes diferentes de cookies, pois o Google Analytics trabalha de maneira feliz com vários rastreadores na mesma página. Veja as respostas para a pergunta do Google Analytics – vários rastreadores para várias contas? .

Atualizar

Acontece que usar vários rastreadores é um método de trabalho, mas tem algumas armadilhas . Um deles, ou seja, você não pode aplicar segmentação de usuário diferente para cada um deles. John Henson demonstra uma solução alternativa que coage o GA a usar cookies diferentes , pode ser que você deva verificar isso.

Caso alguém ainda tenha esse problema e queira uma pasta fácil, meu problema era usar meu próprio google tracking para meu código que estava sendo adicionado às páginas de outras pessoas que também podem estar usando o acompanhamento do Google. Eu testei isso e confirmo que funciona como esperado:

 var _gaq = _gaq || []; _gaq.push(['some_unique_name._setAccount', 'UA-xxxxxxxx-1']); _gaq.push(['some_unique_name._trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); 

Eu estou usando também usando events

 _gaq.push(['some_unique_name._trackEvent', 'Event Category', 'Event Action', 'Event Label']); 

Se alguém vir um problema, informe-me.

De acordo com a documentação listada por Török, parece que a resposta correta é usar _setCookiePath . Isso faz com que cada rastreador use cookies completamente diferentes.

Exemplo de código do site:

  

Quando você vincula de um domínio a outro, cada link que posta no outro domínio tem a seguinte aparência:

  

Isso adicionará valores de string de consulta específicos do Google Analytics que serão usados ​​pelo script acima para definir o cookie ( origem ).

Parece que o Google recomenda contra essa prática:

A instalação de várias instâncias do código de acompanhamento do Google Analytics em uma única página da web não é uma implementação compatível. Sugerimos que você remova todas as instâncias, exceto uma, e certifique-se de ter o código do perfil correto instalado em todas as páginas que deseja acompanhar.

https://support.google.com/analytics/bin/answer.py?hl=pt-PT&answer=1032400

Eu usei essa estrutura em nosso site e sites de clientes e funciona como um encanto …

   

 var otherTracker = _gat._getTracker(”UA-22222-1″); otherTracker._setDomainName('domain.com'); otherTracker._trackPageview(); 

Essa pessoa está tendo o mesmo problema na ajuda do Google Analytics. Eu sugiro dar uma olhada no tópico. Mas regularmente o GA não suporta vários rastreadores.

Eu gosto de Clicky , mas custa dinheiro.