Como implementar Google Analytics en páginas con AJAX?

Publicado en Configuración de Google Analytics el 14 de junio de 2010 por .

Homemaker House Wife Perfect little woman! by Perpetually.Cuando uno empieza en el mundo de internet y quiere hacerse una web, lo primero que hace justo antes de publicarla es poner el tag de google analytics para poder medir desde el primer momento el estado de la misma.

En condiciones normales, y con unos conocimientos básicos, para hacer una instalación simple basta con poner el código que nos facilita Google Analytics dentro del <head> de cada página y ya tendremos información sobre visitas, páginas vistas, orígenes, las páginas con más éxito, etc.

El problema reside cuando la web tiene contenido que se carga mediante AJAX por lo cual, al cargar este contenido, no se envía ninguna información a los servidores de Google y por lo tanto no tendremos datos sobre sobre estas páginas en concreto.

Por suerte, esto tiene una fácil solución para nosotros :)

Lo único que hay que hacer es etiquetar los enlaces con la función trackPageView, que es la función que se encarga de contar páginas vistas en Google Analytics, de esta forma:

<a href="javascript:void(0);" onClick="javascript:pageTracker._trackPageview('/contacto');" >

A partir de este momente, cada vez que se haga click en un enlace con este cogido se contará como una nueva página vista (en el ejemplo, la página contacto), aunque la página se haya cargado por AJAX.

Recordad que si lo que queréis es que Google indexe vuestra web echa en AJAX, os recomiendo que sigáis la guía de implementación de google.

Etiquetas: , , ,

Sobre Oriol Farré

Me llamo Oriol Farré, soy Ingeniero Técnico en Informática de Sistemas por la UAB y estoy certificado en Google Analytics, Adobe SiteCatalyst y comScore Digital Analytix.

Me gustan las nuevas tecnologías, la fotografía, la lectura, los juegos de mesa y me apasiona el SEO y la Analítica Web.

Puedes encontrar a Oriol en:

Google+ LinkedIn Blog


9 Comentarios en Como implementar Google Analytics en páginas con AJAX?

  1. David P. Toscano

    Sí, jeje, pero ¿es realmente una página vista? En realidad no se produce una recarga de página como tal, así que no se puede decir que sea una página vista. O sí, depende de muchas cosas.

    Por ejemplo, si lo que hace el evento Ajax es “descubrir” una parte oculta de la página (una ventanita, un mensaje, etc), no creo que sea buena idea registrarlo como una página vista, quizá como un evento. Otra cosa es que se creen varias páginas ocultas y se muestren mediante Ajax (tampoco soy partidario de registrarlo como PageView porque realmente no lo es, pero en este caso sería discutible).

    De todas formas, estoy un poco decepcionado, porque he venido ilusionado viendo el título del post (he tenido grandes peleas con Ajax y Google Analytics) y pareces dar a entender que todo lo que se quiera hacer con Ajax y Analytics sea trackear un PageView… cuando realmente lo más habitual sea otras cosas: registrar un objetivo, un evento, una transacción de eCommerce, una conversión de un multivariante, etc.

    Y aún así, en la mayoría de los casos para registrar alguna de estas cosas no dispondremos de un simple enlace en el que meter un Javascript, sino que estaremos hablando de un botón, un desplegable, una pestaña o algo más complicado. Y seguramente hoy en día en muchos casos estaremos hablando de lenguajes de servidor… en los que la cosa se complica aún más.

    En fin, hay maneras de hacerlo, pero este tema creo que merece un desarrollo más profundo, pues es bastante más complejo que meter un javascript en un HREF.

    Igualmente ¡gracias por sacar el tema! :)

    ps: si alguien se está peleando con el tema, que no dude en contactar conmigo y quizá pueda dar alguna pista (he marcado lo de “Notify me of followup comments via e-mail”). Saludos!

  2. Oriol Farré

    @David: El caso al que me refería yo eran páginas que por ejemplo se carga todo el contenido en pestañas distintas, como por ejemplo en mi página personal.

    Si lo que se muestra es solo una pequeña parte del contenido, estoy completamente de acuerdo de que se debería hacer con eventos, como ya comenté en mi post “¿Como interactuan los usuarios en mi web?“.

    Aun así, intentaré hacer una segunda versión ampliando el contenido de éste.

    Gracias por el comentario David! :)

  3. Jose

    Muy buenas, considero que es un código demasiado intrusivo. Normálmente no me gusta trabajar con onClicks y prefiero trabajar con un init.js que se encargue de decir lo que sea.

    Yo optaría por marcar los enlaces que quieres trackear con un class=”analytics” y parsearlos con el domready… Vendría a ser lo mismo pero quizá algo más limpio :-)

    Un saludo!

  4. Oriol Farré

    @Jose Es otra opción ;) En el post hago referencia a lo que se tendría que hacer, es decir, hacer las llamadas a GA con javascript, no quiero entrar en el método para hacer las llamadas, porque hay varios y todos son válidos :)

  5. Felix

    Yo no lo consigo. Utilizo mootols y con esa llamada js no carga nada.
    He leído mucha información, pero no me hago con ello.

  6. Oriol Farré

    @Felix Esto es una llamada de Javascript, en principio no tiene que afectar que estés usando jquery, mootools o el que sea…

  7. matarina

    Oriol Farré

    Eres un pendejo en primera hay como tres codigos de google analics así que no es lo mismo para todos, pendejo!!!!!!!!!!!

  8. matarina

    Felix

    No eres mas que un inbecil estupido de mierda
    Ey wey TU SITIO ESTA BIEN JODIDO NO MAMES METER BLOS EN RUSO
    TE PASAS CULERO APARATE PURO PINCHE PARCHE CULERO

    VETE A LA MIERDA Y NO PREGUNTES TANTA TARUGADA PRIMERO ESTUDIA WEY

  9. Hernan Colombera

    Concuerdo con el primer comentario.

    podemos considerar que tenemos libre albedrío para accionar a partir de una llamada en ajax, podemos trackear dicha peticion como un evento o como una página virtual, según el significado que tenga para nosotros esa acción, somos libres.
    Aunque en cambio Oriol, yo en vez de etiquetar el link, y hacer el trackpageview, directamente en la etiqueta html.
    Recién haría el trackpageview en la función onsucces de la petición ajax, asegurandome que se ejecuto correctamente, es una alternativa que en casos mas complejos es util…

2 Trackbacks For This Post

  1. Tweets that mention Como implementar Google Analytics en páginas con AJAX? | Trucos Google Analytics -- Topsy.com Says:

    [...] This post was mentioned on Twitter by Oriol Farré, Albert Claret. Albert Claret said: RT @oriolfb: Como integrar Google #Analytics en páginas con #AJAX? http://j.mp/dywxWg [...]

  2. Linux Hispano | Lo mejor de mi RSS del 14 al 20 de junio Says:

    [...] ¿Cómo implementar Google Analytics en páginas con AJAX? – Trucos de Google Analytics [...]

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>