Usar vários códigos de monitoramento? O que é isso?

Quando você cria uma conta no Google Analytics, recebe um número de conta começando com “UA-“ seguido por uma sequência de dígitos. E quando você insere o código de monitoramento do Google Analytics nas suas páginas, deve especificar para qual conta quer enviar os dados informando o número da “UA” da conta.

Se você quiser enviar os dados de várias contas, precisa duplicar partes do código de monitoramento do Google Analytics e incluir o número de ambas as contas.

Versão Síncrona:

<script type=”text/javascript”>
var gaJsHost = ((“https:” == document.location.protocol) ? “https://ssl.” : “http://www.”);
document.write(unescape(“%3Cscript src=’” + gaJsHost + “google-analytics.com/ga.js’
type=’text/javascript’%3E%3C/script%3E”));
</script>

<script type=”text/javascript”>
var pageTracker = _gat._getTracker(“UA-11111-1″);
pageTracker._trackPageview();

var otherTracker = _gat._getTracker(“UA-22222-1″);
otherTracker._trackPageview();
</script>

Versão Assíncrona:

<script type=”text/javascript”>

var _gaq = _gaq || [];
_gaq.push([‘_setAccount’, ‘UA-11111-1’]);
_gaq.push([‘_trackPageview’]);

_gaq.push([‘_setAccount’, ‘UA-22222-1’]);
_gaq.push([‘_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);
})();

</script>

Acima, vemos duas linhas duplicadas com números diferentes de UAs. Os dados da página que possui este código de monitoramento serão enviados primeiro para a conta UA-11111-1 e depois para a conta UA-22222-1.

Mas, quando você faz isso, existe a possibilidade de não conseguir as informações que você acha que vai conseguir.

Usando este método, os mesmos cookies são usados para ambos os códigos e enviados para ambas as contas. Isto abre portas para problemas em potencial.

1. Códigos de Monitoramento Diferentes

Algumas coisas que você faz com o código de monitoramento do Google Analyics pode fazer com que ele grave cookies em diferentes formatos. Se isto acontecer, o Analytics pode ficar um pouco confuso. Ok, muito confuso. Aqui está um exemplo que poderá lhe causar problemas:

Versão Síncrona:

<script type=”text/javascript”>
var gaJsHost = ((“https:” == document.location.protocol) ? “https://ssl.” : “http://www.”);
document.write(unescape(“%3Cscript src=’” + gaJsHost + “google-analytics.com/ga.js’
type=’text/javascript’%3E%3C/script%3E”));
</script>

<script type=”text/javascript”>
var pageTracker = _gat._getTracker(“UA-11111-1″);
pageTracker._setAllowHash(false);
pageTracker._setAllowLinker(true);
pageTracker._trackPageview();

var otherTracker = _gat._getTracker(“UA-22222-1″);
otherTracker._trackPageview();

</script>

Versão Assíncrona

<script type=”text/javascript”>

var _gaq = _gaq || [];
_gaq.push([‘_setAccount’, ‘UA-11111-1’]);
_gaq.push([‘_setAllowHash’,’false’]);
_gaq.push([‘_setAllowLinker’,’true’]);
_gaq.push([‘_trackPageview’]);

_gaq.push([‘_setAccount’, ‘UA-22222-1’]);
_gaq.push([‘_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);
})();

</script>

No código acima, a primeira parte do script permite o trackeamento Cross-domain do Google Analytics. Isto significa que a primeira parte vai tentar gravar os cookies em um formato, mas a segunda parte do script vai tentar usar um formato diferente. Utilizar o trackeamento Cross-domain é bom, mas você precisa ter certeza que o código é o mesmo para ambos. Se você fizer isto em um, tenha certeza de colocar a mesma linha de código no trackeamento adicional.

2. Páginas Diferentes

Outro problema que você pode encontrar é não ter o mesmo código de monitoramento em todas as páginas. Ou seja, algumas páginas possuem a UA de ambas as contas, enquanto outras possuem somente uma UA.

O problema aí é, novamente, que os mesmos cookies estão sento utilizados. Então, eu visualizo uma página que está trackeada somente para a Conta A, e depois eu visualizo uma página que está trackeada para ambas, a Conta A e a Conta B. O código da Conta B verá os cookies que foram originalmente criados pela página que NÃO tinha o código da Conta B. O primeiro pageview registrado para a Conta B terá como referência uma página diferente. Isto fará o Google Analytics pensar que este é o segundo pageview, etc.

Então, tenha certeza de ter o mesmo código de monitoramento em todas as páginas, assim você terá uma coleta de dados completa e obterá resultados mais fiéis.

3. Valor do Segmento User Defined (Definido pelo Usuário)

O valor do Segmento User Defined é armazenado no cookie (_utmv). A partir do momento em que ambos os códigos estão usando os mesmos cookies, e uma vez que os Segmentos User Defined forem determinados, serão utilizados para todas as outras contas. Você não pode ter um Segmento User Defined para a primeira parte do código e um outro para a segunda parte do código.

Por exemplo, você não pode usar a primeira parte para trackear Membros/Não Membros e a segunda parte para trackear Masculino/Feminino porque eles vão substituir uns aos outros.

Versão Síncrona:

var gaJsHost = ((“https:” == document.location.protocol) ? “https://ssl.” : “http://www.”);
document.write(unescape(“%3Cscript src=’” + gaJsHost + “google-analytics.com/ga.js’
type=’text/javascript’%3E%3C/script%3E”));
</script>

<script type=”text/javascript”>
var pageTracker = _gat._getTracker(“UA-11111-1″);
pageTracker._setVar(‘Member’);
pageTracker._trackPageview();


var otherTracker = _gat._getTracker(“UA-22222-1″);
otherTracker._setVar(‘Male’);
otherTracker._trackPageview();
</script>

Versão Assíncrona:

<script type=”text/javascript”>

var _gaq = _gaq || [];

_gaq.push([‘_setAccount’, ‘UA-11111-1’]);
_gaq.push([‘_setVar’,’Membro’]);
_gaq.push([‘_trackPageview’]);

_gaq.push([‘_setAccount’, ‘UA-22222-1’]);
_gaq.push([‘_setVar’,’Masculino’]);
_gaq.push([‘_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);

})();

</script>

Neste exemplo, por causa da forma com que o Google Analytics lida com o _setVar, quando o visitante voltar para a segunda visita, ele será classificado como “Masculino”em ambas as contas.

Estes são apenas alguns dos problemas mais comuns que vi com estes tipos de implementações. Espero que este artigo auxilie você e, se tiver alguma dúvida, sinta-se a vontade para perguntar nos comentários.

Artigo traduzido com autorização do autor. Fonte: http://www.lunametrics.com/blog/2009/02/26/-tracking-multiple-accounts-ga/