Skip to main content
  1. Blog Post/

Mide el engagement de tus videos con Google Analytics

5 min · 1090 words

Seguramente, nos habremos planteado muchas veces, si nuestros videos promocionales  están realmente funcionando, imaginemos por ejemplo que creamos una landing donde ponemos un video de qué hace nuestro producto.

Casi todos los ejemplos de medición de videos que he encontrado por Internet, se basan en decir cuantas veces se ha hecho click en los botones de play, pause y stop. Pero eso no nos da una visión real del nivel de compromiso ( engagement ), que produce el video sobre nuestros usuarios y por lo tanto en el ratio de conversión.

    Para realizar una pequeña demostación hemos utilizado el video de Eric Speed Maniac , deberemos ponernos en la situación de que este es un video promocional en nuestra landing, mostrando por ejemplo como funcionan nuestros servicios, o cualquier video corporativo.

    Para ello hemos utilizado las herramientas que nos ofrecen YouTube y Google Analytics , a través de su API de reproducción y Event Tracking, para poder realizar un seguimiento más específico del resultado que obtienen nuestros videos promocionales en nuestros usuarios de la siguiente manera: Mirando que porcentaje del video es visto por los usuarios y creando un gráfico de pirámide para ver los resultados de forma gráfica.

    Lo que vamos a conseguir es la siguiente gráfica:
    En este gráfico podremos ver, sobre el porcentaje total de duración del video cuanta usuarios ha ido abandonando la visualización de este. De esta manera, podremos saber si nuestros videos le parecen realmente interesantes a nuestros usuarios, para con ello poder mejorarlos, y con ello mejorar la conversión.

    Aquí el script completo:

    <script src="http://www.google.com/jsapi" type="text/javascript"></script>
    <script type="text/javascript">
    google.load("swfobject", "2.1");
    </script>
    <script type="text/javascript">
    function updateHTML(elmId, value) {
    document.getElementById(elmId).innerHTML = value;
    }
    function onPlayerError(errorCode) {
    alert("An error occured of type:" + errorCode);
    }
    function onPlayerStateChange(newState) {
    updateHTML("playerState", newState);
    }
    function updatePlayerInfo() {
    var percent = "cargado";
    if(ytplayer && ytplayer.getDuration) {
    if(Math.round((ytplayer.getCurrentTime()*100)/ytplayer.getDuration())>0)
    percent = '0';
    if(Math.round((ytplayer.getCurrentTime()*100)/ytplayer.getDuration())>10)
    percent = '10';
    if(Math.round((ytplayer.getCurrentTime()*100)/ytplayer.getDuration())>20)
    percent = '20';
    if(Math.round((ytplayer.getCurrentTime()*100)/ytplayer.getDuration())>30)
    percent = '30';
    if(Math.round((ytplayer.getCurrentTime()*100)/ytplayer.getDuration())>40)
    percent = '40';
    if(Math.round((ytplayer.getCurrentTime()*100)/ytplayer.getDuration())>50)
    percent = '50';
    if(Math.round((ytplayer.getCurrentTime()*100)/ytplayer.getDuration())>60)
    percent = '60';
    if(Math.round((ytplayer.getCurrentTime()*100)/ytplayer.getDuration())>70)
    percent = '70';
    if(Math.round((ytplayer.getCurrentTime()*100)/ytplayer.getDuration())>80)
    percent = '80';
    if(Math.round((ytplayer.getCurrentTime()*100)/ytplayer.getDuration())>90)
    percent = '90';
    if(Math.round((ytplayer.getCurrentTime()*100)/ytplayer.getDuration())==100)
    percent = '100';
    if(percent_tmp != percent)
    {
    _gaq.push(['_trackEvent', 'Videos', 'Status', percent]);
    percent_tmp = percent;
    }

    }
    }
    function onYouTubePlayerReady(playerId) {
    ytplayer = document.getElementById("ytPlayer");
    percent_tmp = -1;
    setInterval(updatePlayerInfo, 1000);
    updatePlayerInfo();
    ytplayer.addEventListener("onStateChange", "onPlayerStateChange");
    ytplayer.addEventListener("onError", "onPlayerError");
    }
    function loadPlayer() {
    var videoID = "rfouqNtKtoQ"
    var params = { allowScriptAccess: "always" };
    var atts = { id: "ytPlayer" };
    swfobject.embedSWF("http://www.youtube.com/v/" + videoID +
    "?version=3&enablejsapi=1&playerapiid=player1",
    "videoDiv", "480", "295", "9", null, null, params, atts);
    }
    function _run() {
    loadPlayer();
    }
    google.setOnLoadCallback(_run);
    </script>

    Podéis ver el ejemplo en funcionamiento en la siguiente dirección:

    https://www.thyngster.com/dev/video_tmp.php

    Para vuestra comodidad os incluímos un archivo en Excel en el cual tan solo deberéis rellenar la primera columna con los valores que os devuelva el API de Google Analytics, para facilitaros las cosas aquí tenéis un enlace al tipo de llamada que tendríais que realizar directamente en el Google Analytics API Explorer.

    Video Engagement Funnel Excel

    Al igual que YouTube nos ofrece estas posibilidades, Vimeo dispone de un micro-framework llamado froogaloop  que nos ofrece también estás posibilidades. Y reproductores como jwplayer y flowplayer.

    Si tienes alguna sugerencia, déja un comentario en el post :) .