Aquí volvemos a estar, intentando sacar partido a las últimas herramientas de la Suite de Analytics. El otro día hicimosy vimos como trabajar con la herramienta y las posibilidades que nos ofrece sin entrar demasiado en casos prácitocs.
Hoy vamos a hacer todo lo contrario, vamos a dar por famosa la herramienta (por lo que si no leíste el blog post que decía en el párrafo anterior sólo debes hacer clic en el enlace superior) y también iremos a realizar uno de los trabajos que seguramente serán más comunes para la mayoría de usuarios: Crear un dashboard basado en datos de Google Analytics.
- Veremos cómo es la conexión con Analytics. Su complejidad, posibilidades y limitaciones
- Cómo crear fácilmente nuestros primeros dashboards básicos
- Qué posibilidades si tenemos de filtrado y dinamismo en nuestros dashboards
- Los inconvenientes a los que nos marchamos a enfrentar para sacar los datos que queremos
- Y cómo solventar el mayor de estos problemas: Los segmentos
Todo en un artículo y también procurando no resultar ni demasiado técnico ni demasiado pesado. Espero que os guste.
El primer paso: Conectando Google Analytics a Google Data Studio
Como sabemos, Google Data Studio precisa de conexiones con fuentes de datos para poder trabajar. Con estas conexiones se crean los dataSources que usan los dashboards y lo cierto es que la oferta de conexiones y opciones de modelado es limitada pero veremos que incluso así ya tienen su miga.
Crear una conexión inicial con Google Analytics afortunadamente no podría ser más sencillo. Tan solo debemos asistir a "FUENTES DE DATOS", cliquear en el icono de (+) (que recordad que siendo una estética basada en "material design" está abajo a la derecha) y escoger entre las posibles fuentes a "Google Analytics".
Se nos solicitará una vista concreta (lo que significa que cada vista de GA tiene que tener su conexión) y realizará una importación genérica (para todos los Analytics es exactamente la misma) de los datos.
Se nos presentará una pantalla como la que prosigue, donde se nos detallan las más de quinientos métricas+dimensiones que vamos a tener libres con esta conexión. Ya antes eran menos, pero poquito a poco van mejorando la integración. Aquí puede que nos quedemos intranquilos admitiendo la configuración que Google ha querido hacer pero os debo decir que la conexión es bastante transparente (no inventa mucho que sea nativo de GA) y como base es adecuada, por lo que no hace falta tocar nada salvo que desees tu tocarlo por el motivo que sea.
En esta importación nos hallamos en realidad más sorpresas agradables que carencias: En la parte positiva a parte de lo que podríamos esperar ciertos datos como el ID de propiedad, agrupaciones de canales y contenido, métricas de ecommerce mejorado, van a estar ahí disponibles pero en la negativa descubriremos que no hay rastro ni de realtime (era bastante lógico que no existiera) ni de los embudos multicanal (esto no tan lógico y que ojalá nos llegue algún día).
Genial, puesto que esta es la información de la que disponemos y que con los detalles que os decía resulta muy similar a los datos de los que disponemos vía API de Analytics. Con esto ya podemos lanzarnos a trabajar y a crear dashboards. Es bastante sencillo y se aprecia que Google ha trabajado mucho en que la sensación que nos quede es la de que en 2 minutos dibujamos dashboards.
Sin embargo, os recomendaría que hicieseis un pequeño parón ya antes de poneros como locos a dibujar y vierais ciertas posibilidades de configuración de esta conexión:
Definiendo que credenciales emplear Por defecto Data Studio dejará configurado nuestro acceso para acceder con la cuenta de quien crea la conexión. O sea, cuando alguien acceda a ese dashboard en realidad pedirá los datos a través de nuestra conexión a Google Analytics. Esto no es bueno ni malo, solo hay que saber que implicaciones tiene: - Por un lado tiene la ventaja de que podemos dar acceso a dashboards sin tener por qué darlos a Analytics.
- Como las conexiones son vista a vista y no de la cuenta entera no debemos preocuparnos porque esos dashboards den acceso a otros clietnes
- También hay cierto peligro con usuarios con capacidad de edición. Esto podrán pedir datos a través de la conexión a unas partes de GA que inicialmente igual no queríamos que accediesen. (por poner un ejemplo, podemos crear un dashboard para un distribuidor donde solo salgan sus conversiones pero no las del resto de distribuidores ni la facturación real que supone y que este edite el dashboard y pueda verlo todo).
- Y por último como con el propio GA. supone cierto inconveniente de descontrol. Gemte que cambia de empresa o de proyecto y no se gestionan bien sus accesos.
Con este escenario soy más amigo de cambiar la configuración de las credenciales de la conexión y pasarlas a "Credenciales del lector". Esto es, que Data Studio use la conexión de Analytics de quien se conecta al dashboard. Para eso clicamos arriba a la derecha en "USAR LAS CREDENCIALES DEL PROPIETARIO" y cambiamos las opciones en el siguiente panel: Esto te da más libretad para compartir dashboards sin cuidado pues si el usuario no tiene acceso a analytics, los gráficos a los que no tenga acceso se verán así: Como contra, implica que debes ir dando accesos a GA a todo el que quiera ver el dashboard. Así que no hay configuración buena, solo es una elección. Lo que es una verdadera pena es que se haya pensado en un tema como este y sin embargo no exista una opción del tipo "Seleccionar tu Vista al importar el dashboard" o bien algo así. Más que nada pues ya los dashboards tienen gráficos en los que cada uno de ellos separadamente se asocia a un dataSource y este a su vez si es de GA se asocia a una vista concreta. Esto hace que compartir dashboards genéricos (a fin de que la gente importe) no es cómodo. Siempre y en todo momento podemos emplear la cuenta de GA de la tienda de Google como un ejemplo, pero ojalá algún dia dispongamos de dashboards como un recurso más de lacomo lo son ahora los informes personalizados y paneles de GA.
Por defecto Data Studio va a dejar configurado nuestro acceso para acceder con la cuenta de quien crea la conexión. Esto es, cuando alguien acceda a ese dashboard en realidad pedirá los datos a través de nuestra conexión a Analytics. Esto no es bueno ni malo, solo hay que saber que implicaciones tiene:
- Por un lado tiene la ventaja de que podemos dar acceso a dashboards sin tener por qué darlos a Analytics.
- Como las conexiones son vista a vista y no de la cuenta entera no debemos preocuparnos porque esos dashboards den acceso a otros clietnes
- También hay cierto peligro con usuarios con capacidad de edición. Esto podrán pedir datos a través de la conexión a unas partes de GA que inicialmente igual no queríamos que accediesen. (por ejemplo, podemos crear un dashboard para un proveedor donde solo salgan sus conversiones mas no las del resto de distribuidores ni la facturación real que supone y que este edite el dashboard y pueda verlo todo).
- Y por último como con el propio GA. supone cierto inconveniente de descontrol. Gemte que cambia de empresa o bien de proyecto y no se gestionan bien sus accesos.
Con este escenario soy más amigo de cambiar la configuración de las credenciales de la conexión y pasarlas a "Credenciales del lector". O sea, que Data Studio use la conexión de Analytics de quien se conecta al dashboard. Para eso clicamos arriba a la derecha en "USAR LAS CREDENCIALES DEL PROPIETARIO" y cambiamos las opciones en el próximo panel:
Esto te da más libretad para compartir dashboards sin cuidado pues si el usuario no tiene acceso a analytics, los gráficos a los que no tenga acceso se verán así:
Como contra, implica que tienes que ir dando accesos a GA a todo el que quiera ver el dashboard. Así que no hay configuración buena, solo es una elección.
Lo que es una auténtica pena es que se haya pensado en un tema como este y no obstante no exista una opción del tipo "Seleccionar tu Vista al importar el dashboard" o bien algo así. Más que nada por el hecho de que ya los dashboards tienen gráficos en los que cada uno de ellos separadamente se asocia a un dataSource y este a su vez si es de GA se asocia a una vista específica. Esto provoca que compartir dashboards genéricos (para que la gente importe) no es cómodo. Siempre y en todo momento podemos usar la cuenta de GA de la tienda de Google como un ejemplo, pero esperemos que algún dia dispongamos de dashboards como un recurso más de lacomo lo son ahora los informes adaptados y paneles de GA.
Traduciendo tus dimensiones y métricas
Cuando Data Studio crea la conexión con Analytics emplea los nombres que aparecen libres en lapor lo que los datos ya aparecen traducidos al idioma en el que tengas configurado Data Studio (o bien en inglés si tu idioma no está disponible).
Tambien nos encontramos con que los nombres de GA no siempre y en todo momento representan lo que esa acción es para nuestro negocio. Algunos ejemplos:
- Si utilizamos transacciones para guardar leads, que en el dashboard aparezca "transactiones" es confuso
- Si utilizamos eventAction para identificar zonas de click del usuario (botones, menús, modales, etc.) llamar a ese desglose "Acción del evento" no es lo más adecuado
- Si hemos organizado nuestro sistema de campañas de forma más acorde a nuestra empresa a analytics es probable que source o content no signifiquen exactametne "fuente" o bien "detalles del contenido". Por ejemplo es normal guardar en "utm_content" las dimensiones del banner. ¿No seria entonces más útil llamar a ese dato "dimensiones del banner"?
Para este tipo de labores, y dado que entonces en el entorno de diseño de dashboards no vamos a poder editar nada lo suyo es que editemos los datos de conexión. crear pagina web desde cero esto tenemos 2 vías:
- Buscamos el factor original y le damos el nombre que deseemos
- O duplicamos un elemento y al nuevo le damos el nombre que deseamos (ideal si por poner un ejemplo llamaremos a la misma métrica de forma distinta en distintos dashboards)
Nuestro primer dashboard
Ahora sí, ya tenemos una conexión digna y podemos comenzar a dibujarle piezas. ¡Así que a generar informe!
Es inevitable que las primeras veces vayamos dibujando a lo orate. Un "quesito" por aquí, un dato suelto por allá y unas "barritas molonas" del otro lado. Como es ineludible no os pediré que no paseis por ahí, pero tomaroslo como un ejercicio de práctica, no como que estáis haciedno un dashboard de veras.
Sólo a modo de recordatorio: Crear un dashboard implica siempre empezar fuera de la herramienta y pasar por un proceso de...
- 1.
Preguntas: Necesidades que debe de solucionar el dashboard, - 2.
Métricas y KPIs: Datos que vamos a emplear para resolverlas - 3.
VisualizaciónPernsar cpara ada necesidad cual es la mejor visualización (género de gráfico) para comprenderla y compararla - 4.
MockupDibujar un boceto aunque sea a lapiz en una libreta de manera que prioricemos la información y logremos el orden de lectura adecuado - 5.
ElaboraciónY entocnes si, añadir los elementos a una herramienta y termina de afinar los detalles
En dashboards on line además es deseable añadir un mínimo de interactividad. Para ello ya vimos que esencialmente tenemos 2 opciones: El selector de fechas y los filtros. Pensemos basándonos en la información que vamos a incluir en el dashboard que filtrados seán útiles para el usuario y dotemos de estos a nuestro dashboard.
Finalmente nos quedará un resultado más o menos perosnalizado y solo deberemos ponerlo bonito. Esto de bonito tiene su relevancia dependiendo de a quien dirijamos el dashboard. Para consumo interno o cuadros de mando importa poco lo bonitos que sean, pero para presentarlos a dirección o bien a gente con poco contacto diario con los datos es esencial: el dato entra por los ojos o bien no entra, y si no entra no puede entenderse.
Nosotros hemos desarrollado este pequeño dashboard de ejemplo, muy simple, que cumple la función de ver a muy grandes rasgos la composición del tráfico en diferentes periodos de tiempo (selector de datas) y para diferentes canales (filtro).
¿Qué datos puedo perdir realmente a esta conexión?
Como veis al final todo son exactamente los mismos datos que en los informes personalizados de analytics. Todo lo que puedas sacar como informe personalizado de analytics tiene cabida en un dashboard de Data Studio.
Eso es genial, vale. ¿Pero que más puedo hacer? ¿Sólo puedo sacar la información de los informes personalizados?
Pues segúnasí es. Lo bueno es que nos dejan caer un...
ACTUALIZACIÓN:Pero la realidad es que desde el dos de marzo de dos mil diecisiete ya se nos deja filtrar con segmentos en nuestros gráficos de data studio. Esto no cambia la configuración de la fuente simplemente se nos ha añadido, entre las opciones de configuración de los widgets de data studio un apartado donde señalar un segmento de Analytics por el que filtrar cada gráfico.
Datos de informes personalizados
Estos datos básicamente nos dejan solicitar:
- Una o bien varias dimensiones - Una o bien múltiples métricas - Uno o múltiples filtros. - Y un único segmento por gráfico por el que pre-filtrar los datos.
Es decir, solo hay 4 conceptos que pedir, lo cual esta bien pero proseguimos echando en falta la posibilidad de cruzar datos, acotar segmentos al vuelo o crear filtros globales de segmentos.
Trabajo Base (sin segmentos)
Sin el uso de segmentos estamos limitados a trabajar en un único ámbito de los datos. Cuando trabajamos con Analytics no trabajamos con la información bruta sino con dimensiones y métricas, que son agregaciones de estos datos. Esto también es así en Data Studio.
El inconveniente de trabajar con datos agregados es el "cómo los agrego" y ahí es donde nuestros deseos al pedirle un dato a GA pueden no coincidir como cómo añade GA la información.
Para resumir afirmaremos que en nuestros días hay cuatro ambitos de datos:
- Usuario: cookies de usuario único
- Sesión: visitas al site
- Hit: cada input de datos sueltos (paginas, acontecimientos, transacciones, etc)
- SubHit (eminentemente productos de ecommerce mejorado)
Analytics crea sus dimensiones y métricas en un ámbito específico y por ende estas funcionan apropiadamente sobretodo en este ámbito. Así, las campañas por poner un ejemplo son dimensiones de ámbito sesión y el rebote es una métrica que también se calcula en este ámbito por lo que puedo pedir el rebote por campaña.
Además analytics no tendrá problemas para mostrar métricas de un ámbito más bajo en para una dimensión más alta. Así que puedo solicitar cosas como "páginas vistas (ámbito hit)" por "página de destino (ámbito sesión)" puesto que solo debe de sumar todos los hits de las sesiones implicadas para conseguir el dato.
Esto sumado a que la mayor parte de la información de analytics está en ámbito sesión hace que percibamos que todo puede cruzarse mas no es verdad. Cuando estamos en el entorno del autor de informes adaptado de Google Analytics este nos va limitando las dimensiones y métricas que podemos elegir en función de las que ya hemos puesto (eludiendo que elijamos cosas que no van a funcionar) mas cuando consultamos vía API o en ese caso vía Data Studio si podemos cometer estos erroes.
El fallo más común es solicitarle a analytics métricas de un ámbito superior al de las dimensiones
El ejemplo más claro: Pedirle sesiones (métrica ambito sesión) de una página (dimensión de ámbito hit). En un caso así GA hace lo que puede y nos enseña un informe que no es lo que deseamos.
- Nosotros esperabamos que nos mostrase todas y cada una de las sesiones que han pasado por una URL
- Pero analytics nos enseña cuantas sesiones SE ORIGINARON en una URL, es decir, cuantas tuvieron como primer hit esa url
La explicación de por qué pasa esto la tenéis en este post:
Un poco de trampas: las "vistas únicas"
Bien, esto de los ámbitos en ciertos casos puede suponer un problema, pero no olvidemos que tenemos una grandisima cantidad de dimensiones y métricas con los que trabajar. Solo debemos fijarnos de trabajar siempre y en toda circunstancia en el ámbito conveniente.
La mayor parte de las veces esto solo nos dará problemas como decíamos para conceptos de contenidos de los que deseamos saber sesiones (y para los que como veremos entonces nos vemos obligados a crear segmentos uno a uno).
Sin embargo deseo hacer mención de una colección de métricas bien interesantes que nos pueden asistir a solucionar el problema en la mayor parte de los casos:
Sesiones por página:Páginas vistas únicas & URLs de página: Número de sesiones en los que esa página ha estado involucrada Sesiones por zonas de la web:Vistas únicas de agrupación de contenido & agrupación de contenido: Número de sesiones en los que ese valor de agrupación de contenido ha estado implicado (ideal para sesiones por sección o categoría) Sesiones por eventos al detalle:Eventos únicos & Dimensiones de categoría + acción + evento: Numero de sesiones en los que la combinación de los tres ha aparecido Sesiones por acontecimientos concretos:Combinaciones de dimensión únicas & cualquier dimensión de evento: Número de sesiones en los que esas dimensiones han estado involucradas Conversión por página:Valor de la página & URL de pagían: Si repartimos el valor de las conversiones entre todas las páginas vistas de esa conversión el valor es lo que se llevan las páginas que ves
Y al final, cualquier métrica con la palabra "unique" será de este género..
Estas métricas nos ayudarán a salvar la papeleta en muchas ocasiones, mas cuidado, funcionan solo con las dimensiones para las que han sido creadas. Si por poner un ejemplo cruzases "paginas vistas únicas" con la agrupación "sección de la página" cuando un usuario pase por 2 páginas con URLs distintas mas en esa misma sección contarán como +2 y no como +1.
Usando segmentos en nuestros gráficos
Google Data Studio nació sin segmentos para Google Analytics. Hablando claro, fue una malisima decisión por la que bastante gente ha desestimado la herramienta. Afortunadamente en uno de sus constantes updates los añadieron. Aunque la verdad es que no ha sido una integración global de los segmentos y tenemos algunas restricciones con ellos.
- Los segmentos solo se escogen para cada gráfico separadamente. No podemos crear segmentos globales. - Son fijos, el usuario que consulte el dashboard no podrá trastocarlos. - Y solo se nos da acceso a los segmentos del sistema + aquellos que hayamos definido en analytics. Esto es, no tenemos un editor de segmentos en Data Studio con el que podamos crear a medida los segmentos para el dashboard. - Y solo aplicamos un único Segmento al gráfico, no podemos sumar filtros de múltiples tipos (esto no es sorpresa, ya sucede en el propio analytics).
En definitiva, si que hay segmentos, mas si habeís trabajado en otros ambientes o habéis configurado/programado vuestros dashboards con la API de google analytics vereis que podrían haberse incluido muchas más funcionalidades. Aún así, veamos lo que nos suponen.
Cuando creamos un gráfico en Data Studio podremos aplicar 1 segmento a dicho gráfico (solo 1). Accedemos a la pestaña "DATOS" de nuestro panel y abajo totalmente encontraremos el selector de segmentos.
Cuando lo elegimos nos aparecerán todos y cada uno de los segmentos tipicos de analytics (los del sistema) más los que hubiesemos creado en la cuenta de analytics. Si un segmento que deseemos aplicar no está entre los listados nos veremos obligados a acceder a nuestra cuenta de analytics, crearlo ahí, regresar a Data Studio y refresacar la conexión para que aparezca como libre. Así que un buen consejo sería definir todos y cada uno de los segmentos previamente en nuestro GA para luego trabajar de forma más directa en Data Studio.
Una vez seleccionemos el segmento que deseemos, el sistema nos preguntará si queremos incoporarlo. Esta es una alarma que tiene sentido cuando compartimos el dashboard con más gente. Basicamente nos viene a decir que quien vea o edite ese dashboard aun sin tener acceso a GA va a poder usar dicho segmetno para otras cosas. Nos alertan, lo pensamos un minuto y vemos si puede ser un inconveniente en nuestro caso o no.
Y nada, desde ese momento este gráfico ya pre-filtra los datos por el segmento escogido.
Calculando datos en la configuración de la conexión
Otra de las posibilidades que ahora tenemos y que con analytics eran más limitadas es añadir a nuestra conexión datos calculados entre los valores de dimensión y métricas que ya disponemos en la conexión.
Para ello podemos editar nuestra conexión (volviendo a la home o bien dándole al icono de lápiz en la conexión al editar cualquier gráfico) y hacer ciertos cambios.
Para este caso de ejemplo hemos hecho 3 pequeños añadidos.
- Por un lado hemos alterado el nombre de "Bounces" a "Sesiones Rebotadas"
- Luego hemos añadido una métrica llamada "Sesiones No Rebotadas" que calculamos como la resta entre "Sesiones - Bounces"
- Y por último hemos creado con una expresión regular una nueva dimensión que desde el tamaño de pantalla (Screen Resolution) de los usuarios solo deseamos que recoja el ancho de la pantalla.
Con estos 3 nuevos datos pasamos a poder crear un gráfico como este:
Que nos enseña las sesiones divididas en Rebotadas y no Rebotadas por anchos de pantalla. Este informe en GA sería imposible de crear sin crear vistas con filtros avanzados a medida para el mismo, así que ya tenemos una ventaja poderosa de modelado de datos dentro del propio Data Studio.
Para esta clase de labores nos combiene repasary saber con qué posibilidades jugamos.
Especialmente intersantes para manipulación de dimensiones son:
REGEXP_EXTRACT:Que nos deja sacar solo un fragmento del texto de una dimensión. Tal y como hemos visto en el ejemplo de arriba. Pero también nos permitiría separar campos que tienen múltiples valores a la vez REGEXP_REPLACE:Que nos permite hacer reemplazos de un texto por otro. Ideal por poner un ejemplo para hacer arreglos (por ejemplo: campaña "FB" cambiamela por "facebook". CASE:Que permite precisar valores en función de validaciones. Es decir excribimos valores del tipo CASE WHEN A = B THEN "devulve esto" ELSE "devuelve esto otro" y por lo tanto se convierte en una función ideal para hacer agrupaciones. Por simplificar, piensa en cosas como CASE WHEN Page = "/" THEN "Es la home" ELSE "NO es la HOME" y luego piensa más a lo grande
Realmente esto de la manipulación de valores de variables es un mundo pero probablemente deseemos cruzar datos de otro modo para enseñar datos más modelados en nuestros dashboards.
Cargando datos de GA modelados o bien cruzados en Data Studio
Bueno lo primero siento decirte que realmente esto aún no se puede hacer. Y esto es por el hecho de que el editor de fuentes de Data Studio incluso no permite este trabajo. Tiene pinta de que terminará haciendolo, mas incluso no es así.
¿Pero la de GA no es la única conexión de la que disponemos verdad? Así que siempre que no intente cargar los datos de manera directa a través de esa conexión, si que podría cargar datos modelados. ¿El truco? Hacerlo a través de otras conexiones. Asi de simple.
Opcion 1: Vistas prefiltradas
Fácil, creo una vista en mi analytics que ya use los filtros convenientes. Entonces cargo como una segunda conexión a mi GA esa nueva vista y todo lo que use esta segunda vista estará prefiltrado.
Lo que pasa es que esto que parece una puerta interesante en la práctica se convierte en un recurso limitadísimo por varios motivos.
- 1. No tenemos histórico, cuando creamos la vista nueva esta comienza a capturar datos y en consecuencia no podremos consultar el año pasado.
- 2. Un filtro de segmento no es exactamente lo mismo que un filtro de vista. Las vistas filtran hit a hit y los segmentos agrupan sesiones o bien usuarios completos. Si yo por ejemplo filtro una URL concreta no veré las conversiones que se produzcan en esa misma visita mas en una URL distinta.
- 3. Realmente sigo sin cruzar datos, no puedo hacerlo
Asi que solo me va a aportar esta opción algo para casos muy concretos. Por servirnos de un ejemplo separación de paises por carpetitas donde aplico un filtro de hit que en realidad se va a parecer mucho al de sesión pues un usaurio realizará la mayor parte de sus hits (si no todos) en el mismo país de la web.
Opcion 2: BigQuery
Para los que tengan la fortuna de contar con de una cuenta premium Analytics (perdon, ahora se llama Google Analytics trescientos sesenta) se vuelca automaticamente a tablas diarias en BigQuery. Ahí podemos consultar lo que nos de la gana. ASí que lo que necesitamos es crear una consulta con los datos que necesitamos, con ella crear una vista y también utilizar esa vista como dataSource creando una conexión con BigQuery.
Las primeras veces, crear segmentos a nivel sesión o usuario puede ser un poco raro en bigQuery y más incluso cruzar datos con otras fuentes. Hay que aprender a unir tablas con "TABLE_DATE-RANGE()" y entender como usar campos como visitId o bien fullVisitorId (ya que los nombres de campos no coinciden siempre y en todo momento con los nombres de dimensión) para hacer las agrupaciones manualmente sobre las tablas de hits o bien de sesiones. Una vez dominas como se hacen ese género de queries el mundo se vuelve más afable.
Para los que no lo hayais tocado os dejo solo un enlace, una explicación pasito a pasito de como consultar funnels dentro de bigQUery, un blog post que por lo complejo del problema debe solventar varias partes y te da varias queries de ejemplo:
No me enredo más con esto, quien sabe utilizar bigQUery sabe y quien no no aprenderá solo con cuatro comentarios en un blog post que en realidad va de otra cosa.
Opción 3: Descargas de datos modelados a MySql
Una opción muy usada en sites que necesitan un reporting serio es hacer descargas al día de los datos de analytics vía API. Eso nos pemite crear un repositorio con datos ya modelados como necestiamos (con los segmentos ya aplicados) y consultar de forma directa las tablas MySql con la conexión de Data Studio.
El problema es crear el script que se descarga los datos. Esto acostumbra a ser trabajo más de la gente de BI que del analista, pero soluciones vamoas a localizar varias por internet. Nosotros en IKAUE tenemos una librería propia para esta clase de descargas desarrollada en PHP y que es capaz de multiplicar las consultas creando compilaciones de segmentos a medida.
Otro inconveniente de este sistema es que todo lo que no hayas pensado como dato necesario para estas exportaciones no estará libre, por eso es esencial planear bien las descargas de datos.
Nota: Si los datos son muchos también es posible que deseemos descargar mas no cara MySQL sino también hacia BigQUery. El resultado en realidad sería le mismo mas más rápido de procesar.
Opción 4: Google SpreadSheets como conexión media con APIs reales
Me centraré en Google Analytics, mas este sistema en realidad nos permite añadir a Data Studio no solo la API real de GA sino más bien cualquier API libre para Google SpreadSheets.
Lo que vamos a hacer es crear una hoja de repositorio de datos, esta hoja ha de ser capaz de automatizar las cargas de datos. Entonces desde Data Studio no pediremos acceso a las API's sino a Google Spreadsheets con ese repositorio. Sería algo muy similar a las descargas de datos modelados a MySQL que decíamos antes mas más accesible para la mayoría de personas (si bien también más limitado).
Veamos un pequeño ejemplo, vamos a lograr traer datos de las visitas que pasan por la home (un segmento de usuarios que pasan por "/") a nuetro dashboard a través de Google SpreadSheets.
Para ello vamos a entrar en, una página dedicada a las hojas de cáculo de google, aunque todos sabéis que a través de drive tambien se puede acceder.
El complemento de "Google Analytics"
Las hojas de Google permiten complementos, son como los macros de Excel pero programados en Javascript y con acceso a APIs. Lo mejor de estos complementos es que tenemos una galería desde la que importar los que han hecho terceros o bien el propio Google. Para esto solo tenemos que hacer click en el menú Complementos>Obtener Complementos.
Dentro de la galería deberíamos buscar el complemento de Google Analytics. Se halla de forma bastante fácil puesto que es uno de los complementos TOP.
Lo incorporamos y a partir de entonces en el propio Menú de complementos tendremos una nueva opción llamada "Google Analytics" con tres opciones: Crear Informe, Ejecutar Informe y programar reports.
Hacemos Clic en "Create new Report" y nos creará una nueva Hoja nueva con la plantilla de nuestro report. En esta Hoja cada columna es una consulta a la API de analytics, y en todos y cada fila debemos señalar el valor del dato que pediríamos a la API de GA.
La consulta a la API de analytics
No deseo entretenerme con temas de la API, asi que simplemente deciros que lo suyo es pedirle un informe personalizado con las dimensiones y métricas que queremos y el máximo número de días cara atrás en el tiempo que podamos permitirnos.
Algunas apreciaciones:
- El número de días dependerá de nuestro tráfico:
Analytics vía API (tanto premium como free) tiene muestreo. Por lo que cuantos más datos le solicitemos más probable es que estos datos estén muestreados y a mayor volúmen más muestreo aplicará. Así que debemos procurar conservar la caldiad del dato pero al tiempo sabemos que cuantos más días logremos incluir más dinámico podrá ser nuestro dashboard (por el hecho de que más días podremos poner en el selector de fechas) - Las dimensiones siempre y en todo momento deben incluir "ga:date" como mínimo:
Los dashboards de Data Studio funcionan mucho mejor cuando tienen un rango de fechas al que asociar los datos - No hay que usar métricas calculadas:
Cómo vamos a agrupar los datos hay que evitar las métricas calculadas pues al agruparse nos darán fallos. Por poner un ejemplo, carece de sentido que pidamos el "porcentaje de rebote" por el hecho de que Data Studio no podrá calcular ese dato para una franja de días que va cambiando según la selección del usuario. Por lo tanto lo suyo, si deseo contar con del rebote, es que saque sesiones y rebotes sueltos, ya calculare el "rebotes/sesiones" en Data Studio cuando toque.
Validando los datos disponibles
Una vez tenemos todos y cada uno de los datos definidos, clickamos en el menú en "Run report" y se nos generará una hoja nueva de datos (que tendrá por nombre el nombre que hemos puesto al report) y donde podemos validar qué datos tendremos libres.
- Revisamos que no haya muestreo, o bien al menos que si lo hay no nos moleste demasiado
- Y apuntamos a partir de que fila aparecen realmetne los datos en el report.
Automatizamos la recarga de datos
Ya tenemos los datos, solo debemos preocuparnos de que estos se vayan actualizando solos. Para ello Clickamos en el menú "Schelude reports" y le indicamos que lo recargue cada día a X hora. La hora debe ver con cuando se nos calculan los datos diarios en nuestra cuenta. En analytics premium sabemos que eso sucede a las pocas horas y como mucho podría acontecer a las cuatro de la mañana. En cuentas free es preferible moverlo a mucho más tarde. Lo que yo hago es recargar justo a la hora de comienzo de actividad en la empresa. Esto es, si sabemos que absolutamente nadie estará en su puesto hasta las 9:00 de la mañana, recargamos el informe a las 8:55. Creando la fuente en Data Studio
Ya hemos acabado con spreadsheets, vamos a por Data Studio que es lo que nos interesa. Ahí solo debemos crear una fuente nueva de tipo "Google Sheets", escoger de que archivo y hoja queremos que vengan los datos y escoger un rango de celdas en el que actuar. En mi ejemplo hemos seleccionado las filas de la A15 (Donde empezaban los datos) a la F10000 (por poner algo). Una vez configurado ya podremos ir a ver los campos integrados. ¿Lo que pasa es que nos faltarán datos verdad? Configurando a la medida los datos desde SpreadSheets
A estos datos vamos a darles una vuelta. Para comenzar vamos a calcular los porcentajes de rebote y conversión. Como recordarás dijimos que no podiamos ponerle estos datos en la consulta por el hecho de que dependerian de las fechas elegidas. En cambio en la configuración si podemos indicarle a Data Studio como hacer ambos cálculos: Por último nos quedará traducirlo todo para que los datos que cargamos signifiquen algo para el que va leer el dashboard (si, por mucho que te empeñes "ga:sessions" no significa nada). El resultado agrupando los nombres con los que usamos en el dashboard que hasta el momento no tenía segmentos quedaría algo asi: ¡A dibujar!
Ahora ya si, ya podemos acudir a nuestro dashboard y añadir la información debidamente segmentada. Ya tenemos datos modelados en Data Studio Y bueno, si, es cierto, hemos metido cierto modelado a la información de GA en Data Studio pero estaréis de acuerdo conmigo en que esto solo podemos hacerlo para datos muy críticos y concretos. El proceso es demasiado complejo, limitado y aburrido para que merezca la pena replicarlo para gran cantidad de datos. Aún así esta bien que existan posibilidades como BigQuery, MySql y Google SpreadSheets que nos ayuden a concluir de redondear nuestros informes. El tema de spreadsheets me resulta especialmente interesante pues realmente no solo disponemos de apis de analytics. Podemos cargar ahi multitud de APIs y usar estas hojas como puente para crear un dashboard con datos no solo Google. Un simple vistazo a "" puede darte una idea de todo cuanto puedes integrar de este modo. Conclusión Bueno, creo que hemos repasado bastantes unas partes de la herramienta y las posibilidades están claras. Crear dashbaords de Google Analytics con Google Data Studio es una tarea que de primeras parece sencillisima (en verdad se hace más simple incluso que crear informes adaptados) mas a la que vas rascando vas viendo que tienes mucho trabajo por delante. Estandarizacion de datos, crear fuentes extra para completar tu información y luego, cuando acabes, tocará ponerlo todo congruente al paso que hacemos destacar los datos primordiales sobre el resto. Tenemos para cientos de horas de "diversión" asegurada con esta nueva herramienta.
Automatizamos la recarga de datos
Ya tenemos los datos, solo debemos preocuparnos de que estos se vayan actualizando solos. Para ello Clickamos en el menú "Schelude reports" y le señalamos que lo recargue cada día a X hora. La hora debe ver con cuando se nos calculan los datos diarios en nuestra cuenta. En analytics premium sabemos que eso sucede a las pocas horas y como mucho podría ocurrir a las cuatro de la mañana. En cuentas free es preferible moverlo a mucho más tarde. Lo que yo hago es recargar justo a la hora de inicio de actividad en la empresa. Es decir, si sabemos que nadie va a estar en su puesto hasta las 9:00 de la mañana, recargamos el informe a las 8:55.
Creando la fuente en Data Studio
Ya hemos acabado con spreadsheets, vamos a por Data Studio que es lo que nos interesa. Ahi solo debemos crear una fuente nueva de tipo "Google Sheets", seleccionar de que archivo y hoja deseamos que vengan los datos y seleccionar un rango de celdas en el que actuar. En mi ejemplo hemos escogido las filas de la A15 (Donde comenzaban los datos) a la F10000 (por poner algo).
Una vez configurado ya podremos ir a ver los campos integrados.
¿Lo que pasa es que nos faltarán datos verdad?
Configurando a medida los datos desde SpreadSheets
A estos datos vamos a darles una vuelta. Para comenzar vamos a calcular los porcentajes de rebote y conversión. Como recordarás dijimos que no podiamos ponerle estos datos en la consulta por el hecho de que dependerian de las fechas seleccionadas. En cambio en la configuración si podemos indicarle a Data Studio como hacer los dos cálculos:
Por último nos quedará traducirlo todo a fin de que los datos que estamos cargando signifiquen algo para el que va leer el dashboard (si, por mucho que te empeñes "ga:sessions" no significa nada). El resultado agrupando los nombres con los que empleamos en el dashboard que hasta el momento no tenía segmentos quedaría algo asi:
¡A dibujar!
Ahora ya si, ya podemos acudir a nuestro dashboard y añadir la información debidamente segmentada.
Ya tenemos datos modelados en Data Studio
Y bueno, si, es cierto, hemos metido cierto modelado a la información de GA en Data Studio mas estaréis de acuerdo conmigo en que esto solo podemos hacerlo para datos muy críticos y específicos. El proceso es demasiado complejo, limitado y tedioso como para que valga la pena contestarlo para gran cantidad de datos.
Aún así esta bien que existan posibilidades como BigQuery, MySql y Google SpreadSheets que nos asistan a terminar de redondear nuestros informes. El tema de spreadsheets me resulta en especial interesante por el hecho de que realmente no solo disponemos de apis de analytics. Podemos cargar ahí multitud de APIs y emplear estas hojas como puente para crear un dashboard con datos no solo Google. Un simple vistazo a "" puede darte una idea de todo cuanto puedes integrar de esta forma.
Conclusión
Bueno, creo que hemos repasado bastantes partes de la herramienta y las posibilidades están claras. Crear dashbaords de Analytics con Google Data Studio es una labor que de primeras parece sencillisima (de hecho se hace más simple aun que crear informes personalizados) mas a la que vas rascando vas viendo que tienes mucho trabajo por delante. Estandarizacion de datos, crear fuentes extra para llenar tu información y después, cuando termines, tocará ponerlo todo congruente al paso que hacemos resaltar los datos principales sobre el resto. Tenemos para cientos y cientos de horas de "diversión" asegurada con esta nueva herramienta.
¿Te gustó este artículo? Puedes seguir sus comentarios a través de, o bien realizardesde tu blog.
|