Do not speak Spanish? Read this post in English.

Martes, 18 d octubre d 2016.

Introducción a Google Data Studio, los dashboards de Google

Hoy vamos a hacer una pequeña introducción a Google Data Studio la herramienta de visualización de datos que se presentó con la suite Google Analytics 360 y de la que de momento tenemos una versión gratuita que puede usar todo el mundo con su cuenta normal de Google.

google-data-studio-logo-1

No vamos a profundizar demasiado, la idea es ofrecer un primer contacto para aquellos que no la hayan probado, las cosas chulas las dejaremos para siguientes post. Lo que haremos en esta introducción es...

  • Ver las características principales de la herramienta
  • Describir como son sus conexiones
  • Y cuales son sus posibilidades y limitaciones de reporting

Para empezar, una pequeña critica a Google Data Studio

Después de pelearme unas cuantas veces con la previews que sacaron y ahora con la prueba gratuita, os puedo pasar mis impresiones sobre la herramienta. Como esto es una guía más que una review, sere breve:

  • Es un buen comienzo, pero es solo un comienzo. Faltan muchas cosas por añadir y pulir para que compita con otras herramientas del mercado
  • A nivel de UX Google nos ha sorprendido con un producto muy cómodo, intuitivo y que da unos resultados medianamente bonitos si sabes manejarlo
  • La integración/conexión con los datos está muy limitada a productos Google, de momento, solo la conexión con MySql, PostgreSQL o subidas en CSV se salen de esta norma.
  • En las conexiones hay cálculo de datos, pero no hay modelado de estos de ningún tipo. Los datos tiene que venir pre-masticados. Suerte que BigQuery puede hacer parte de ese trabajo.
  • Ya en el dashboard hay una buena colección de widgets, muy fácil de usar y que soluciona gran cantidad de visualizaciones. Pero a la que rascas ves que tienes limitaciones, como decía no hay modelado y los widgets no pasan del dato básico
  • Y lo más frustrante para todos: la conexión con Google Analytics es mucho más básica de lo esperado. Sobretodo es mucho más limitada que la API V4. Una verdadera pena.

Como veis me centro más en aspectos negativos que en positivos. En parte porque creo que son más útiles para valorar si quieres o no usar un producto y en parte porque seguramente yo tenia unas expectativas demasiado altas de este producto. Sin embrago no creo que os quedéis solo con esto. Como digo es un comienzo excelente: Para muchos la herramienta será suficiente para resolver la mayor parte de sus necesidades. Por lo poco que cuesta, una oportunidad hay que darles.

Por otro lado no dudo que esto va a evolucionar y muchas de las carencias se irán solucionando. Lo que no tengo ya tan claro es si se solucionarán en la versión de prueba o en la 360 (de pago). La logica nos dice que sobretodo en conexiones la de pago se llevará la mayor parte de las integraciones. Otra cosa que mosquea es que no lo hayan llamado versión gratuita sino de prueba, eso nos hace duda sobre cuanto tiempo tendremos este acceso gratis... pero todo llegará.

¡Empecemos! Vamos a la herramienta

Vamos a por la herramienta. Darse de alta es tremendamente sencillo, como en todos los productos Google. Solo tenemos que acceder a Data Studio.google.com e intentar logarnos o clickar sobre el "try it free" y tras la identificación ya estaremos dentro del panel con acceso a varias previews con datos demo ya disponibles.

datastudio-1

Diseño y usablidad de la herramienta

La interfaz es realmente simple, se basa en material design (el estilo que creo Google para Android y que ahora lleva a todas sus webs). Lo único que sorprende es que usando este diseño luego resulte que el panel no se adapta a móviles. Es cuanto menos curioso. Pero bueno, en Desktop las cosas están claras y donde deben estar.

Solo un aviso, como heredamos un diseño destinado sobretodo a móviles a veces las llamadas a la acción quedan un poco lejos de nuestra mirada. Lo mas molesto suelen ser los botones:

  • Aparecerá en algunas pantallas un botón redondo azul con el símbolo de + en la esquina inferior derecha de la pantalla. Esto no es fácil de ver en pantallas bastante grandes cuando la información con la que trabajas queda arriba y ni bajas la vista a ver que hay abajo.
  • Luego muchos elementos van de lado a lado de la pantalla lo que puede provocar que estemos editando 4 datos sueltos a la izquierda de la pantalla y el botón de acción se encuentre en el lado derecho. Otra vez en pantallas grandes puede hacerte perder unos segundos y volverte un poco loco buscar los botones.
  • El hecho de que hayan escogido el azul para todo (logo, resaltados, botnes de acción etc.) tampoco ayuda a detectar este tipo de elementos

Y esta es la única critica que podemos hacer a material design y a los paneles de Data Studio. Para todo lo demás hay que decir que prima la intuición y que sin leer documentación ni investigar puedes crear un dashboard nada más conectarte. UX Google Style!

Zonas principales de la herramienta

datastudio-2

Data Studio en realidad solo consta de dos tipos de elementos:

  • Reports: Los dashboards que tenemos disponibles o que queremos crear.
  • DataSources: Las conexiones con datos que tenemos habilitadas para que usen nuestros dashboards

No hay nada más, todo lo demás son temas de compartir archivos, ayudas gráficas e información de relleno.

Sin duda todo el mundo se lanzará a mirar los dashboards dejando a un segundo nivel las conexiones. Pero no nos equivoquemos, la pieza importante realmente son las conexiones, ya que son las que van a poner a nuestra disposición los datos. Los dashboards en si son solo una herramienta de diseño. Cómoda, muy visual y lo que quieras, pero menos importante que los propios datos.

Empezando a usar Google Data Studio

Llega el momento de empezar a probar cosas. Aquí yo os expondré pequeños pasaos para que podáis ir tomando contacto con las piezas principales, pero si lo preferís podéis ver estos dos vídeos (en inglés) que Google ha preparado como introducción y que si bien son básicos hay que reconocer que como van navegando y realizando acciones por la herramienta puede ser mucho más directo que texto con capturas de pantalla. ¡Tu decides!

Nosotros si me lo permitís tomaremos un camino un poco distinto a los vídeos. No queremos ir directos a la parte chula y dibujar cuanto antes nuestros gráficos sino dar los pasos en el orden adecuado y ponernos a dibujar cuando todo este atado.

Creando nuestras primeras conexiones

Aunque nos fastidie es obvio que si no tenemos datos no podemos tener dashboards. Por lo tanto el primer paso en reporting debería ser preparar y conectar tus fuentes de datos a la herramienta.

Entramos en "Reports" y ahí veremos que Google nos tiene preparaditos algunos datos de DEMO, que van muy bien para cotillear los dashboards sin tener que trabajar de verdad pero que nos aportan poco en nuestro negocio real. Asi que voy a ignorar estas fuentes. Tu juega lo que quieras con ellas pero yo no voy a tocarlas para este post.

Lo que queremos es crear tu propio dataSource y para ello debemos hacer click sobre el boton (+) (escondido abajo a la derecha) y se nos indicarán los tipos de fuentes a conectar.

datastudio-3

Nada de facebook, twitter, etc. Solo productos Google. Le faltan conexiones, nadie lo duda, pero lo cierto es que contamos con 3 grandes bazas que nos solucionan cualquier problema:

  • MySql es un sistema de base de datos gratuito y muy extendido por internet. Es muy probable que gran parte de los datos de tu web ya estén bajo MySql. Por otro lado si vas a trabajar algún tipo de modelado de datos guardar los datos modelados en MySQL es tambíen muy socorrido. Y lo mejor de todo, no necesitas saber SQL para trabajar luego esos datos, los gráficos de los dashboards harán las consultas por ti.
  • Google SpreadSheets, "el excel de Google" es otra herramienta también muy usada por todos. Disponer de acceso a cualquiera de tus hojas de calculo supone muchas ventajas. Por un lado cualquier excel que tengas por ahí puedes subirlo como spreadsheets y asi incluir sus datos en tus dashboards. Por otro existen muchos plugins para scpreadsheets que le permiten sacar datos de muchas APIs a las que Data Studio de momento no entra. Asi puedo crear SpreadSheets con datos de Facebook, twitter, Google Search Console, etc y una vez cargados en spreadsheets llevarmelos a Data Studio. (De esto veremos más en otro post)
  • Google BigQuery. Ya para la parte más profesional, el entorno de BigData de Google también es accesible con Google Data Studio. Así, podemos cargar ingentes cantidades de datos en BigQuery, modelarlos con sus propias vistas en la herramietna y terminar incorporando estas vistas a Data Studio para disponer de datos modelados (de esto también veremos un ejemplo en otro post)

A estas conexiones tan potentes se suman otras más particulares como conexión directa con productos Google que ya tienen su capa de datos: Adwords, Analytics, Adometry, Search Console o Google SQL. Cualquier integración directa está muy bien si usas estos productos pero no son tan versátiles como los anteriores.

Nuestra primera conexión: MySQL

Para empezar y por coger una conexión útil, sencilla de ver y común para muchos vamos a ver cómo crear una conexión de MySQL para definir un dataSource que coma directamente de una tabla de datos que tenemos alojada en nuestro servidor.

datastudio-4

Para ello solo tenemos seleccionar este tipo de conexión, indicar los datos de acceso (host, user, password de nuestro servidor mysql) y luego elegir la tabla de la base de datos a la que vamos a conectarnos. Sí, necesitamos crear una conexión por cada tabla, y esto va a resultar un poco tedioso en algunos casos.

Una vez conectado, veremos un panel de configuración del dataSource donde aparecen todos los datos que va a recoger esta conexión y que por lo tanto estarán disponibles en los dashboards.

datastudio-5

El sistema recoge por defecto todos los datos que detecta en las tablas asignándoles su tipología: dimensión para todos los datos textuales, fechas para las fechas y tiempos y métricas agregadas para todos los números.

Por defecto muchas cosas nos vendrán bien así, pero es ahora cuando necesitamos decidir qué datos vamos a querer tener disponibles en nuestros gráficos. Cuando entremos en el entorno de dashboards nos vamos a encontrar con que tenemos muy pocas o ninguna opción de configuración de los datos por lo que en esta configuración ya debemos tener el dato masticado.

Para ello tenemos 3 posibilidades:

1. Revisar que los datos se calculen como nosotors los necesitamos.

- Vigila que los nombres de los campos sean los que tu luego quieres que aparezcan en el dashboard y si no renombralos.

- Vigila que las métricas se agregen como quieres. Si no van a sumarse sino que necesitas una media de los datos o el máximo, editalas.

2. Añadir datos calculados que vayas a necesitar.

Es posible y probable que no te baste con los campos tal cual los tienes, sino que en tus dashboards necesites realizar operaciones sobre la tabla que cargas. Es decir, en tu tabla tienes datos sueltos, pero en tus dashboards mostrarás como estos se transforman en información útil y esta transformación no siempre será tan simple como sumar todos los valores de la fila.

- Por ejemplo podemos contar el numero de filas afectadas (COUNT())
- O calcular la división entre 2 de los campos (o entre un campo y el total de filas)
- Ver numero de valores distintos que ofrece una dimensión. (COUNT-DISTINCT())

Para ello podemos crear nuevas métricas con el botón (+) que aparece encima del listado de campos.

Y ahí definir las fórmulas por las debería calcularse esa métrica. Para crear estas fórmulas tenemos acceso a cualquiera de las variables de las que ya disponemos en la conexión y a una colección de funciones que se parece a las que podríamos tener disponibles en el propio MYSQL o en Excel.

La lista completa de fórmulas disponibles la tenemos AQUÍ

Así pues, para este ejemplo hemos cargado una tabla con información de reservas realizadas por día y creamos una nueva métrica que nos dice cuantos días de reserva consultamos (que sacamos con un COUNT(date).

datastudio-6

No es complejo si sabes lo que buscas. Y si no lo sabes, no te preocupes, no crees nada y cuando te enfrentes a tu dashboard y empieces a necesitar los datos siempre podrás volver a esta pantalla para añadir lo que vayas necesitando.

3. Manipular la fuente de datos.

Por último, en el peor de los casos podemos ver que los datos no vienen el formato que los necesitamos. Peor aún, los datos no se pueden organizar ni con formulas....

Esto puede ser por varios motivos:

  • Necesitamos acceder a la vez a dos dos o más tablas para sacar el dato (por ejemplo para cruzar id's con nombres o porque la info está desperdigada).
  • El desglose de los datos no es como lo deseariamos y no podemos repartir sus métricas adecuadamente.
  • Nos falta información vital.

Si no vienen en el formato adecuado es posible que queramos crear una vista (tablas precalculadas a partir de una consulta previa a las demás) o un duplicado de nuestras tablas donde los datos se gestionen de forma más orientada a realizar informes con ellos.

Nuestro primer dashboard

Una vez ya tenemos una fuente de datos conectada y configurada ya estamos listos para lanzarnos a la aventura de dibujar el mejor dashboard del mundo.

O bien a través de la pantalla del dataSource que acabamos de crear o volviendo a la home de dastastudio y desde el apartado de "Reports" clicando en (+) para crear nuestro dashboard.

Nos encontraremos directamente con el panel de edición de dashboards que es de lo mejorcito que tiene la herramienta: muy intiuitivo, directo y fácil de manejar.

datastudio-8-1

Por lo general se trata solo de ir seleccionado tipos de gráfico y dibujar que espacio deberían ocupar en nuestro panel. Estos incluso autoseleccionarán a partir de nuestra fuente de datos aquellos que crean que más probabilidades tengamos de usar.

Empecemos por algo sencillito, vamos a crear un diagrama circular (de quesito!) que distribuya el numero de reservas que los usuarios han realidado, divididas por su longitud. Para ello realizaremos estos pasos:

  • Seleccionaremos en la interfaz el botón de diagrama circular
  • Clicaremos en el panel y dibujaremos un cuadrado. Esa será el área que ocupará el gráfico y podremos modificarla fácilmente en el futuro, asi que dibuja sin miedo
  • Una vez dibujado, si tenemos seleccionado un gráfico se abrirá a la derecha un panel de edición con opciones ligeramente distintas para cada tipo de gráfico.

datastudio-10

Los datos básicos a entender

  • Data Source:
    Es la fuente de datos, a medida que vayamos creando nuevas conexiones dispondremos de más accesos.

    Cuando seleccionemos por primera vez una fuente para nuestro dashboard nos aparecerá una confirmación. Esto es porque Data Studio está hecho pensando en un trabajo colaborativo y lo que nos dicen es que tengamos cuidado ya que al dar acceso a una conexión otro editor podría llegar a ver TODOS los datos de esta conexión. Así que cuidado con datos sensibles y los accesos que se dan a ellos.

    datastudio-9

  • Dimensiones y Métricas
    Para Data Studio todo son o dimensiones (literales de agrupación/segmentación) o métricas (agregación de valores numéricos). Cuando le cargamos por ejemplo las categorias estas son dimensiones y los precios se agregan de una u otra forma (sumandose, calculando la media, etc.) creando métricas.

    Aqui se nos permite seleccionar con cuales de las dimensiones y métricas de nuestra conexión debe formarse le gráfico. Por lo general se nos pedirá como mínimo una dimensión por la que desglosar los datos (lo que serían las series en Excel) y una métrica con los volúmenes de cada valor de la dimensión. Algunos gráficos nos permitirán usar más de una dimensión y los de métricas o bullet no nos dejarán escoger dimensión. Todo depende de lo que pueda hacer la visualización que hemos ecogido.

  • Date Range Dimension y Default Date Range:
    Toda la configuración de Data Studio está pensada para que los datos a importar se asocien a fechas concretas. Por este motivo el rango de fechas que queremos visualizar nos aparece en los gráficos. Este rango puede gestionarse de 2 formas. En modo automático cogerá los últimos 28 días salvo que exista un controlador de rango de fechas en el dashboard que le indique lo contrario (lo veremos luego) en cuyo caso cogerá las fechas de ese controlador. En modo "Custom" nosotros le definiremos las fechas. Lo que no existe es un modo de fechas relativas donde le podamos indicar cosas como "hace un mes" o "1 mes menos que las fechas de este otro gráfico". Así que es limitado pero es lo que hay.
  • Filtros:
    Esta es la única opción (a parte de la de fecha) de la que disponemos para filtrar el total de datos de nuestra conexión. Aquí podemos ir seleccionando de los distintos valores de nuestra conexión (dimensiones) por los que queramos filtrar y el tipo de coincidencia con el que vamos a trabajar (donde a parte del típico contiene encontramos las versátiles expresiones regulares).
    No hay mucho que comentar aquí. Se trata de un sistema de filtrado simple sobre el cual no podemos aplicar conectores o sistemas de filtrado propios de las fuentes (por ejemplo, no podemos aplicar los segmentos de Google Analytics, porque solo tenemos estos filtros).
  • Estilo:
    Y por último, una pestaña completa de opciones de estilo, donde podremos elegir la forma exacta de nuestro gráfico, sus colores, fuentes, bordes, etc. Si bien la lista de opciones no es tan grande como en la API de gráficos de Google la verdad es que permite hacer gran cantidad de ajustes.

Y ya está, sencillez al poder.

Controladores en el dashboard: buscando algo de interacción

Los dashboards planos están bien, pero aquellos en los que puedes rascar al cargarlos la información suelen terminar siendo más útiles. Data Studio no es que tenga una gran variedad de opciones en este sentido pero si que tiene 2 herramientas básicas con las que controlar los datos del dashboard una vez ya creado.

1. Control de fechas

datastudio-12

Seleccionando el icono de calendario podremos crear un control de fechas en nuestro dashboard. Este no tiene demasiadas opciones. Simplemente le buscamos un sitio y lo colocamos en la página que estamos creando.

A partir de entonces todos los gráficos que se hayan dejado en "Date Range" automático, pasarán a estar controlados por este controlador. Por eso por defecto Data Studio crea todos sus gráficos en automático, para que luego nos sea fácil crear estos controles y asi dotar de interactividad a los gráficos.

2. Control de filtro

datastudio-14

Los filtros aun siendo algo limitados son la gran opción que nos ofrece Data Studio para controlar desde el propio dashboard los datos. Se añaden igual que los controles de fechas, se selecciona su icono y se dibuja su ubicación en el dashboard. Estos se crean sobre una dimensión concreta y pasan a desglosar esta en una tabla con una métrica asociada. La gracia está en que además de ofrecer este dato aparecen unos checks a la izquierda de cada dato, desmarcando y marcando estos checks podemos escoger como se filtran los datos de una fuente. Además en "STYLE" podemos escoger que esta "tabla" sea en realidad un desplegable, lo que nos permite añadir varios filtros a un único dashboard que no ocupen demasaido espacio visual hasta que el usuario no haga click intencionadamente sobre ellos.

Los filtros actúan sobre toda la fuente de datos a la que afectan. Así que todos los gráficos que tiren de una misma conexión se ven afectados por cualquier filtro de esta conexión. Esto también permite anidar filtros y preparar paneles bastante complejos con multitud de filtros afectando a los datos.

---

Al final, como con cualquier herramienta de dashboards, la verdad es que tenemos 2 opciones: preparar un cuadro de control fijo, que se muestre casi como una hoja de papel estática o crear suficientes interacciones con filtros y controles de fechas para que los usuarios que usen el dashboard puedan interactuar lo máximo posible con los datos.

datastudio-15

Y esto es lo esencial, pero hay muchas más opciones...

Me he centrado en los detalles que considero más relevantes para empezar a trabajar con Data Studio, pero sin duda me quedo muy corto en funcionalidades.

  • A nivel de tipología de gráficas solo tenéis que hacer un repaso a la botonera de iconos del panel de dashboards. Hay un poco de todo.
  • También permite añadir recursos puramente estéticos como imágenes, textos y algunas formas básicas para destacar elementos
  • También disponemos de páginas, la capacidad de en un mismo dashboard ofrecer páginas distintas que detallen la información de distitnas formas y por supuesto podemos editar gráficamente cada una de ellas
  • Opciones y ayudas a la edición gráfica (copiar, pegar, pasar delante, detrás, alinear, cuadrícula, etc)
  • Opciones para compartir o duplciar dashboards completos
  • Y mil detalles más...

En definitiva

La herramienta te permite sacarle algo de jugo y hacer accesibles entornos de dashboarding a gran cantidad de empresas sin aumentar los costes (realmente altos en algunas herramientas de este tipo). Espero al menos escribir un par de post más sobre este tema. Uno que nos muestre su potencial y como lidiar limitaciones al usarlo con Google Analytics como fuente principal de datos y otro donde veamos cosas más serias como carga de datos masivos y uso de Big Query como conexión. A ver cuando saco tiempo y los publico...

Por nuestra parte creemos que a pesar de sus limitaciones iniciales y sobretodo si se mantiene esta política de 5 dashboards gratuitos por usuario, la herramienta puede volverse un estándar muy poderoso en el sector. Poder pasar los dashboards entre usuarios, guardarte tus favoritos o bases y adaptar visualmente al milímetro los detalles son grandes bazas. Al ofrecer sobretodo conexiones Google es posible que así sea (al final, como pasó con GTM, que los negocios usen este producto significa en casi todos los casos que usan productos Google). Con el tiempo veremos que sucede, pero de momento tenemos un juguete bastante sofisticado con el que trabajar.

Temas Relacionados: analitica web

Autor:

Anímate y deja tu comentario

$post = $( $('.hnews')[0] ); ga('ec:addProduct', { // Provide product details in a productFieldObject. 'id': $post.attr('id'), // Product ID (string). 'name': $('h1 a',$post).text(), // Product name (string). }); ga('ec:setAction', 'detail'); var isRead = false; var isStarted = false; $( window ).scroll(function() { if ( !isStarted ) { isStarted = true; $post = $( $('.hnews')[0] ); ga('ec:addProduct', { // Provide product details in a productFieldObject. 'id': $post.attr('id'), // Product ID (string). 'name': $('h1 a',$post).text(), // Product name (string). 'quantity' : 1 }); ga('ec:setAction', 'add'); ga('send', 'event', 'scroll', 'post-read-start', {'nonInteraction': 1}); ga('ec:addProduct', { // Provide product details in a productFieldObject. 'id': $post.attr('id'), // Product ID (string). 'name': $('h1 a',$post).text(), // Product name (string). 'quantity' : 1 }); ga('ec:setAction', 'checkout', { 'step' : 1 }); ga('send', 'event', 'scroll', 'post-read-start', {'nonInteraction': 1}); } if ( !isRead && ( $(window).scrollTop()+$(window).height() ) > $('div.share').offset().top ) { isRead = true; $post = $( $('.hnews')[0] ); ga('ec:addProduct', { // Provide product details in a productFieldObject. 'id': $post.attr('id'), // Product ID (string). 'name': $('h1 a',$post).text(), // Product name (string). 'quantity' : 1 }); ga('ec:setAction', 'purchase', { 'id' : Math.floor((Math.random() * 999999999999) ), 'revenue': '0' }); ga('send', 'event', 'scroll', 'post-read', {'nonInteraction': 1} ); } });