Carregar Google Analytics após o carregamento da página

Vamos ver neste post como acelerar o carregamento das páginas web que usam o Google Analytics como contador de acessos. Muitas vezes nos deparamos com uma página que demora a carregar por causa do Goo...

Publicado em: 17 de março de 2009  |  Leituras: 2.427  |  Canal: JavaScript  |  Autor: Jonathan Lamim Antunes

Muitas vezes nos deparamos com uma página que demora a carregar por causa do Google Analytics. Apesar da quantidade e qualidade dos servidores do Google, muitas vezes, por diversas razões ele fica lento. Ele também afetas páginas que usam frameworks de JavaScript, como o JQuery, pois ele (Google Analytics) só carrega os elementos da página depois que foi carregado totalmente. O grande problema é que não podemos guardar no nosso servidor o arquivo ga.js ou o arquivo urchin.js, que são solicitados aos servidores do Google para o carregamento do Google Analytics.

Vamos resolver esse problema de uma maneira muito simples, carregando o Google Analytics somente depois que todos os elementos da página forem carregados.

Isso dá uma grande vantagem, pois se o Google Analytics fica lento de uma hora para outra, a sua página não vai ficar. Você deve estar se perguntando: "Mas como minha página não vai ficar lenta se de um jeito ou de outro eu terei que carregar o Google Analytics?"

A resposta é: Antes de carregar o Google Analytics você carregará todo o conteúdo da sua página, e somente depois de tudo carregado é que o Google Analytics será carregado.

Todas as inclusões de arquivos js devem ser feitas no final, antes da tag </body>, conforme a norma de aceleração de velocidade de carregamento de páginas web de YSlow, e não entre as tags <head>...</head>, como feito pela maioria.

E logo após inserir todas as bilbiotecas e arquivos js, introduzimos o código do Google Analytics, que será o último código javascript a ser inserido na página.

<script type="text/javascript">
$(document).ready(function() {
$.getScript("http://www.google-analytics.com/ga.js",function(){
if(typeof(_gat) == "object") {
var pageTracker = _gat._getTracker("UA-1806963-8");
pageTracker._initData();
pageTracker._trackPageView();
}
});
});
</script>

Dentro desse bloco de código, substitua UA-1806963-8 por sua ID do Google Analytics.

ANTECIPANDO UMA DÚVIDA

Fazendo dessa forma, que garantia teremos de que a visita será contabilizada? Se um usuário entra na página, mas antes que o script do Google Analytics seja executado ele passa para outra página, a visita será contabilizada?

É possível que não seja contabilizada, mas as perdas variam entre 2% e 5%, em casos em que o Google Analytics está muito lento. Não se deve utilizar somente o Google Analytics como medidor único de acessos. É preferível perder algumas visitas no contador do que ter todo o código bloqueado até que o Google Analytics seja carregado.

Até a próxima!

Resposta em até 24 horas! (grátis)Dúvidas?

Compartilhe
Share orkut
delicious
Gostei

Nossa url encurtada:
Relacionado:
Google

Google

Google Inc. é uma empresa desenvolvedora de serviços online, sediada na Califórnia, Estados Unidos. Seu primeiro serviço foi o Google Search, hoje o site de busca mais usado no mundo, que foi criado a...

Dicas do canal