Hace unos meses Xavier Colomés escribió un post sobre como crear un perfil de Funnels en Google Analytics. Debo reconocer que este perfil cambia radicalmente la forma con la que se trabaja con la herramienta y simplifica muchos análisis. De hecho, lo he querido replicar en varias cuentas de Google Analytics creando una vista (ahora los perfiles, en Google Analytics, se llaman vistas) específica para cada una de éstas cuentas.
El reto era interesante por los resultados que obtenemos al cabo de unos días de datos, pero se me antojaba un poco cansado, sobretodo teniendo en cuenta que tenía que crear más de 60 filtros en 8 cuentas distintas.
Primero pensé en hacerlo mediante el fantástico plugin para Chrome llamado GA Copy and Paste, que permite copiar objetivos y filtros avanzados con un click, pero es difícil seguir un buen ritmo y garantizar que no te olvidas de ningún filtro cuando ya llevas unos cuantos creados. Así pues, busqué alternativas que trabajaran para mi que mola más y después de buscar un poco encontré iMacros, una extensión para Firefox y Chrome que permite automatizar acciones en nuestro navegador.
Funcionamiento básico
El proceso para usarlo es muy sencillo. Supongamos que queremos crear un filtro nuevo:
- Activamos el plugin
- Vamos a la página sobre la que queremos trabajar (en éste caso, la página del listado de filtros de una cuenta)
- Le damos al botón Record (el del botón rojo)
- Creamos el filtro, añadiendo el nombre, seleccionando el tipo de filtro que queremos, añadiendo las expresiones y todo lo que necesitemos.
- Una vez finalizado, pulsamos el botón Stop.
Esto habrá generado un código, que podemos guardar con el nombre que queramos y, si pulsamos el Play, irá a la página en la que estábamos al empezar a grabar y creará un filtro exactamente igual al que acabamos de hacer.
Ahora mismo esto puede parecer bastante inútil, porque no queremos tener grabados 60 macros con los 60 filtros, ya que mucho trabajo no nos ahorra.
Funciones avanzadas
Lo interesante de iMacros es que podemos leer un fichero csv como fuente de entrada y ejecutar un mismo script N veces (tantas como veces como filas del CSV haya)
Para hacerlo, debemos definir los siguientes parámetros al principio del código que hemos generado en el paso anterior:
SET !DATASOURCE filtros.csv SET !DATASOURCE_COLUMNS 3 SET !LOOP 2 SET !DATASOURCE_LINE {{!LOOP}}
- !DATASOURCE permite definir el nombre del fichero CSV que leeremos. Éste fichero, por defecto, deberá estar en una carpeta dentro de tu carpeta de usuario que se llamará iMacros/Datasources, aunque se puede especificar cualquier origen.
- !DATASOURCE_COLUMNS permite definir cuantas columnas tiene el CSV, aunque no es obligatorio
- !LOOP 2: define a partir de qué línea empieza a leer. Se informa como un 2 para saltarse la cabecera del documento
- !DATASOURCE_LINE {{!LOOP}} incrementará la línea que lee del CSV en cada iteración.
Crear 60 filtros en menos de 5 minutos con iMacros
Una vez definido el origen de los datos y simulado la introducción de un filtro, el código final que nos quedará será algo parecido a lo siguiente:
SET !DATASOURCE filtros.csv SET !DATASOURCE_COLUMNS 3 SET !LOOP 2 SET !DATASOURCE_LINE {{!LOOP}} TAG POS=1 TYPE=INPUT:SUBMIT ATTR=* TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/ ATTR=NAME:bb-name CONTENT={{!COL1}} TAG POS=2 TYPE=INPUT:RADIO FORM=ACTION:/ ATTR=NAME:bb-typeCustom TAG POS=6 TYPE=INPUT:RADIO FORM=ACTION:/ ATTR=NAME:bb-filterType TAG POS=1 TYPE=SELECT FORM=ACTION:/ ATTR=NAME:bb-customFilterA CONTENT=%PAGE_REQUEST_URI TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/ ATTR=NAME:bb-customFilterAExpression CONTENT={{!COL2}} TAG POS=1 TYPE=SELECT FORM=ACTION:/ ATTR=NAME:bb-customFilterC CONTENT=%PAGE_REQUEST_URI TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:/ ATTR=NAME:bb-customFilterCExpression CONTENT={{!COL3}} TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:/ ATTR=*
Si os fijáis, para acceder al contenido del CSV se utiliza la nomenclatura {{!COL1}} para definir la columna del CSV a la que se quiere acceder.
En mi caso, usé la primera columna para definir el nombre, la segunda para la expresión a buscar y la tercera para la expresión a sustituir.
Una vez tengáis definido el nuevo fichero, deberéis ir al botón de play loop, definir cuantas veces se debe ejecutar el script y pulsar el botón. A partir de éste momento, ya podéis relajaros y mirar como iMacros trabaja para vosotros 😀
Por cierto, cuando creéis filtros, es mejor que los creéis a nivel de cuenta, no de vista. Así el filtro no se aplicará directamente, por lo que podréis revisar que todo esté correcto antes de vincularlos a la vista.
Reordenar filtros
Para cambiar el orden de los filtros en una vista, si tienes muchos, es bastante pesado, por lo que me he hecho un pequeño script que pulsa el botón de mover arriba 10 veces. Esto, combinado con el Play loop permite reordenar los filtros muy rápidamente.
TAG POS=2 TYPE=DIV ATTR=TXT:Moveup TAG POS=2 TYPE=DIV ATTR=TXT:Moveup TAG POS=2 TYPE=DIV ATTR=TXT:Moveup TAG POS=2 TYPE=DIV ATTR=TXT:Moveup TAG POS=2 TYPE=DIV ATTR=TXT:Moveup TAG POS=2 TYPE=DIV ATTR=TXT:Moveup TAG POS=2 TYPE=DIV ATTR=TXT:Moveup TAG POS=2 TYPE=DIV ATTR=TXT:Moveup TAG POS=2 TYPE=DIV ATTR=TXT:Moveup TAG POS=2 TYPE=DIV ATTR=TXT:Moveup
Yo siempre tengo la interfaz en inglés, por lo que es posible que en otro idioma no funcione el script tal y como está aquí, ya que busca el texto «Moveup» y puede que no sea exactamente así.
Más acciones que se pueden automatizar con iMacros
Éstos son un par de scripts que he utilizado y que me han simplificado bastante el trabajo, pero tengo algunos otros pensados que pueden ser muy útiles:
- Dar acceso a múltiples personas de forma individualizada: Si quieres dar acceso a una cuenta de GA, lo puedes hacer uno por uno, o puedes hacer un script parecido al anterior y dar acceso a todos en un plis-plas.
- Crear múltiples objetivos en una vista rápidamente: éste es mi próximo objetivo. Después de crear todas las vistas con sus respectivos filtros, es imprescindible configurar los objetivos necesarios para poder medir correctamente la conversión, por lo que claramente es un candidato para iMacros
- Guardar en un CSV todos los usuarios que tienen acceso a una cuenta: iMacros no solo puede enviar datos, sino que también los puede extraer, por lo que sería muy factible hacer la extracción, aunque aun no lo he probado.
He puesto algunas ideas que creo que puede ser útil automatizar, sobretodo mientras no se puedan hacer mediante la API de Google Analytics, pero seguro que con un poco de imaginación se os ocurren muchísimas más cosas a poder automatizar mediante ésta herramienta.
Documentación
iMacros ofrece una wiki y un foro para poder ampliar el conocimiento sobre el uso de la herramienta. Además, al instalar la extensión ofrecen una series de scripts de demo para hacerse una idea de todo lo que puede hacer.
Alternativa
Si no os gusta como funciona iMacros, también podéis hacer algo parecido con Selenium, aunque nunca lo he usado, me consta que es muy potente. Eso si, ésta sólo está para Firefox 😉
PD: La imagen del inicio del post la he sacado de unsplash y es como estaréis mientras iMacros esté trabajando por vosotros 😉
Te recomiendo darle un vistazo a la nueva API de administración de Google Analytics. También simplifica mucho algunas tareas, pues ahora podrás ejecutarlas programáticamente.
Cierto, aun no lo he mirado, pero puede ayudar mucho con el mantenimiento de GA, aunque sospecho que puede ser un poco más complicado de usar que iMacros o Selenium ;-P
Una buena alternativa.