¿Debo poner Google Analytics JS en el <head> o al final de <body>?

123

Google me da un fragmento de JavaScript y me dice que lo incluya en el <head>.

¿Puedo ponerlo al final <body>o se producirán algunos efectos secundarios si lo hago?

Peter Hall
fuente
3
¿No dicen que lo pongan antes de la etiqueta </body> de cierre? ¿O ha cambiado esto?
Marko

Respuestas:

155

Ponerlo al final de la <head>sección ayuda a garantizar que se rastreen sus métricas incluso cuando un usuario no deja que la página termine de cargarse.

Solían decirte que lo pusieras al final de la página, antes de agregar soporte para manejar la carga parcial de páginas.

Directamente de Google:

Una de las principales ventajas del fragmento asincrónico es que puede colocarlo en la parte superior del documento HTML. Esto aumenta la probabilidad de que la baliza de seguimiento se envíe antes de que el usuario abandone la página. Es habitual colocar código JavaScript en la <head>sección y recomendamos colocar el fragmento en la parte inferior de la sección para obtener el mejor rendimiento.

Consulte la ayuda de Google Analytics : agregue el código de seguimiento directamente a su sitio

Chris Arguin
fuente
8
Entonces, ¿está bien si lo pongo en la parte inferior? Prefiero que mis páginas se carguen rápido colocando todo en la parte inferior (y CSS en la parte superior para una representación adecuada) -editar- es asqueroso poner js allí.
2
Sí, está bien hacerlo; De hecho, tengo una mezcla, pero en su mayoría he migrado para ponerlo en la parte superior por las razones mencionadas.
Chris Arguin
6
¿Por qué es esto una ventaja? Me parece que no quiero contar las cargas de página parciales porque, en primer lugar, esos usuarios están diciendo que cometieron un error al llegar allí. Incluso cuando tienen la intención de estar allí, no quiero que esperen un milisegundo más para ver mi contenido.
Melinda Green
3
Una carga de página parcial también podría significar algo para el propietario del sitio que necesita arreglar. Imagine que alguien entra en su tienda y se da cuenta de que el exterior lo engañó para que entrara. Le recomendamos que corrija su publicidad para solucionarlo.
Optimus
2
Una pequeña actualización de esto: en lugar de al final de <head>, la página vinculada ahora dice "Agregue la etiqueta justo después de la etiqueta de apertura <head> en cada página".
Brandon
6

Puedes ponerlo donde quieras. Siempre pongo el código de seguimiento al final de la página y nunca he tenido problemas.

casablanca
fuente
2
¿Por qué querría detectar un usuario que carga parcialmente su página y se va en milisegundos?
João Pimentel Ferreira
@ JoãoPimentelFerreira porque también es información valiosa, es posible que desee medir qué% de vistas fue así
jangorecki
3

Puede colocarlo en cualquier lugar que desee en la página y se ejecutará en cualquier lugar de la página, ya sea en la cabeza o en el cuerpo. Pero de acuerdo con el soporte de Google ( agregue el código de seguimiento directamente a su sitio ), se recomienda que en la etiqueta principal, lo pegue inmediatamente antes de la </head>etiqueta de cierre .

Siguiente párrafo de un buen artículo que explica por qué poner código en la etiqueta principal

La página vista se registra solo después de que se carga ese código. Por lo tanto, cuanto antes cargue el código, antes se registrará la vista de página. Digamos que tienes una gran página de blog, y es una de carga lenta, tardando incluso de 10 a 20 segundos en cargar todo. Si su código de Google no comienza hasta el final de la página, puede retrasarse, al igual que el antiguo código no asincrónico que se utiliza para contener OTRAS líneas de código. Excepto que ahora está reteniendo el código de seguimiento. Si un visitante de su sitio accede a la página y luego la abandona antes de que el código de seguimiento active la página vista, perderá a ese visitante. Ahora se convierten en una nueva visita directa a cualquier página del sitio en la que aterrizaron. Esto puede hacer que todo tipo de datos en su sitio sean incorrectos.

Subodh Ghulaxe
fuente
0

En el encabezado, justo antes de la etiqueta de cierre </ head>, no tendrá ningún problema para verificar su sitio web en las Herramientas para webmasters de Google.

Sezhers
fuente
0

Agregar el siguiente código (conocido como el "fragmento de seguimiento de JavaScript") a las plantillas de su sitio es la forma más fácil de comenzar a usar analytics.js.

El código debe agregarse cerca de la parte superior de la etiqueta y antes de cualquier otra secuencia de comandos o etiquetas CSS, y la cadena "UA-XXXXX-Y" debe reemplazarse con el ID de propiedad (también llamado "ID de seguimiento") de Google Analytics. propiedad que desea rastrear.

<!-- Google Analytics -->
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},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','https://www.google-analytics.com/analytics.js','ga');

ga('create', 'UA-XXXXX-Y', 'auto');
ga('send', 'pageview');
</script>
<!-- End Google Analytics -->

El código anterior hace cuatro cosas principales:

  1. Crea un elemento que comienza a descargar de forma asíncrona la biblioteca de JavaScript analytics.js desde https://www.google-analytics.com/analytics.js

  2. Inicializa una función global de ga (llamada cola de comandos ga ()) que le permite programar comandos para que se ejecuten una vez que la biblioteca analytics.js esté cargada y lista para funcionar.

  3. Agrega un comando a la cola de comandos de ga () para crear un nuevo objeto de seguimiento para la propiedad especificada mediante el parámetro 'UA-XXXXX-Y'.

  4. Agrega otro comando a la cola de comandos ga () para enviar una vista de página a Google Analytics para la página actual.

Mile Mijatović
fuente
Echemos un vistazo más de cerca, porque llamarlo "cola de comandos" es darle demasiado crédito. El código uglified compactado acepta algunos argumentos que utiliza para descomprimir algunas cosas y adquirir un identificador para una Array.pushfunción vinculada . La ga"función" está totalmente vinculada push. Por lo tanto, las invocaciones inmediatas se pueden optimizar: en lugar de construir una matriz vacía si no se encuentra ( []), ga[['create', 'UA-XXX', 'auto'], ['send', 'pageview']]
llénela
-3

El código que siempre debe agregarse cerca de la parte superior de la etiqueta y antes de cualquier otra secuencia de comandos o etiquetas CSS, y la cadena 'UA-XXXXX-Y'debe reemplazarse con la propiedad ID(también llamada "ID de seguimiento") de la propiedad de Google Analytics que desea rastrear.

Payal Daryani
fuente
2
Esto no responde a la pregunta. La pregunta es cuáles son los efectos secundarios de no hacer lo que dice.
Peter Hall