Saltar al contenido

Implementar Google Analytics Enhanced Ecommerce

Este artículo se centra en la medición de comercio electrónico de Google Analytics Universal, que pronto quedara obsoleto. Google Analytics 4 es el futuro de Google Analytics. Te recomendamos que implementes y medir eventos de Ecommerce con GA4 para aprovechar todas las funciones de Google Analytics 4.

Aquí te comparto una Guía para Implementar Google Analytics 4.

Envíe datos de Ecommerce a Google Analytics utilizando dataLayer. Enhanced Ecommerce es un conjunto de dimensiones, métricas e informes que se combinan para brindarle una visión bastante completa de cómo los usuarios interactúan con sus productos en un Ecommerce

El proceso de compra online es muy complejo y como ya saben existen diferentes etapas en las que el usuario, dentro de nuestro ecommerce está tomando decisiones en cada clik, para ello existen diversos códigos de seguimiento diseñados específicamente para cada paso del proceso de compra.

Vamos a referirnos a la última versión de código de GA,  Universal Analytics (a la fecha) por lo que posiblemente tenga que trabajar en la actualización de su implementación de GA antes de avanzar. Ahora vamos a desarrollar el seguimiento de comercio electrónico de Google Analytics utilizando Google Tag Manager, de manera Avanzada.

Comercio electrónico de Universal Analytics

Ademas de enviar los eventos de Ecommerce con dataLayer, lo cual desarrollo mas abajo, primero tienes que habilitar la medición y los reportes de Ecommerce desde la configuración de la vista.

  1. ingresas a tu cuenta de Google Analytics
  2. seleccionas la vista en donde quieres tener los informes de Ecommerce

Ademas debes configurar los pasos y los nombres del proceso de pago o Checkout

al final deberias quedar algo similar a:

si no definen nada, en relación a los pasos del Checkout, no te preocupes lo veras automáticamente asi:

Google Analytics Enhanced Ecommerce

  1. Embudo o Funnel Checkout, Medir el paso a paso de los formularios de pago
  2. Confirmación de compra o purchase
  3. Rendimiento de productos
  4. Rendimiento promociones internas
  5. Agregar y Quitar productos al carrito de compra
  6. Seguimiento de Cupones de descuento
  7. Análisis de múltiples Tiendas OnLine
  8. Uso de múltiples Monedas

La visualización de productos ecommerce.impressions

Se recomienda para una página de listado de productos, ya sea una pagina tipo catalogo Categoría/subCategoría, como resultados de búsqueda o LandingPages hac doc.

Para el caso de una LandingPages promocional, en lo personal implemento seguimiento de promociones internas ecommerce.promoView

Rendimiento de la lista de productos

ecommerce.impressions

El informe Rendimiento de la lista de productos permite ver el rendimiento de las listas de productos en el catálogo, según las siguientes métricas:

  • Vistas de listas de productos
  • Clics de lista de productos (número de veces que los usuarios han hecho clic en los productos cuando se han mostrado en la lista)
  • CTR de la lista de productos (tasa de clics de los usuarios en la lista de productos para ver los productos [número de clics/número de veces que ha aparecido la lista])
  • Las dimensiones principales disponibles son: Número de la lista de productos, Posición de la lista de productos, Producto y Código SKU de producto.

Debemos incorporando una capa de datos (Datalayer) dentro del código del sitio de ecommerce con el detalle del los productos que se visualizan.

El objetivo es diferenciar URL de Productos. De manera de tener mayor presionen y poder evaluar una tasa de impresiones / clicks y transacciones que incluyen el producto (donde una transacción puede incluir uno o múltiples productos)

El comportamiento de URL nos da una visión muy sesgada del comportamiento de los productos.

Segmentos de Audiencias

En esencia el Remarketing consiste en definir y agrupar Segmentos de Audiencias que representan objetivos comerciales para nuestro Ecommerce o proyecto Digital. La importancia de Google universal analytics (y Facebook Analytics respectivamente) y va más allá de poder ver la información

Audiencias para Ecommerce con Google Analytics y Google Ad Manager

La principal ventaja de GA, es la de recolectar y enviar el comportamiento del usuario a Google Search Ads 360 o Google Search Ads 360.

Para realizar performance ads, necesitamos Segmentar:

  • Usuarios que compran de forma recurrente
  • Usuarios interesados en Marcas o categorías
  • Usuarios que abandonaron en el Proceso de Pago
  • y más!

Rendimiento De Impresiones de Productos

Este es un Ejemplo del dataLayer (o Json) con el Listado de Productos, en términos de Ecommerce PLP «Product List Page» .

Rápidamente podemos notar algunos de los datos que nos permitirán desarrollar informes de business intelligence, realmente muy interesantes con datos como:

Marca, categoría o Posición. este último muy útil para comprender si vale la pena un paginado con cientos de productos, o sería más conveniente listas más cortas. Consideren que esto reduciría los tiempos de carga impactando tremendamente en la Experiencia del usuario, SEO y Ads.


// Impresión de productos ecommerce.impressions
// Puede contener uno o más impressionFieldObjects.

dataLayer.push({
  'event':'productImpression',
  'ecommerce': {
    'currencyCode': 'USD',  // Moneda local es opcional.
    'impressions': [
     {
       'position': 1,
       'id': 'GA-01',
       'name': 'Analytics',
       'category': 'Guia de Analytics Enhanced Ecommerce',
       'variant': 'Text',
       'brand': 'cookingmetrics',
       'price':'500',
       'dimension3': 'Ecommerce',
       'metric5': 10,
       'metric6': 20002
     },
     {
       'position': 1,
       'id': 'GA-01',
       'name': 'Analytics',
       'category': 'Guia de Google Analytics para Ecommerce',
       'variant': 'Text',
       'brand': 'cookingmetrics',
       'price':'500',
       'dimension3': 'Ecommerce',
       'metric5': 10,
       'metric6': 20002

     }]
  }
});

Por defecto este Json, debe estar antes del Hit Page View, de esta manera garantizamos que, sin necesidad de crear un tag adicional, con el default hit de page view, además se envían todos los datos relacionado con nuestros productos en el listado.

el Hit Page View, deberia ser posterior al hit productImpression

El caso sería diferente si, no tenemos disponible el dataLayer de ecommerce.impressions al momento del default hit de page view.

Rendimiento De click en Productos

productClick

Este es un ejemplo de la capa de datos de Ecommerce para poder realizar el seguimiento de los productos q los cuales los usuarios les realizaron click.


/**
 * Debemos llamar a esta función cuando los usuarios realizan un click al vinculo de un producto, para ver sus detalles. El método de medición sera un evento.

 * @param {Object} productObj An object representing a product.
 */
function(productObj) {
  dataLayer.push({
    'event': 'productClick',
    'ecommerce': {
      'click': {
        'actionField': {'list': 'Search Results'},
        'products': [{
          'name': productObj.name,
          'id': productObj.id,
          'price': productObj.price,
          'brand': productObj.brand,
          'category': productObj.cat,
          'variant': productObj.variant
         }]
       }
     },
     'eventCallback': function() {
       document.location = productObj.url
     }
  });
}

Impresiones de Banners internos (CTR)

Enhanced-Ecommerce-GTM-Banners-view
Enhanced Ecommerce Banners view

ecommerce.promoView

Existen diversos (métodos alternativos fuera de los estándar de GA para poder medir y comprender si los banners internos incrementan las ventas, en la versión de Enhanced Ecommerce, se contempla este caso.

Incorporando una capa de datos con un Json o dataLayer dentro del código del Ecommerce, con la cual podemos realizar el correcto seguimiento de las campañas internas, sin alterar las métricas de fuentes de tráfico o campañas.


// Este es un ejemplo para poder medir una promoción interna.
// Este es el detalle de la promoción desplegada en la página o URL cargada.

// Para el caso que la promoción se muestra en un carrousel, la capa de 
// datos debería tener una lógica alineada con el script del carrousel.  

dataLayer.push({
  'ecommerce': {
    'promoView': {
      'promotions': [
       {
         'id': 'GA-01',
         'name': 'Curso Google Analytics',
         'creative': 'banner Oferta CyberMonday 10% OFF',
         'position': 'Slider AutoPlay 01'
       },
       {
         'id': 'GTM-01',
         'name': 'Curso Google Tag Manager',
         'creative': 'banner Oferta HotSale 10% OFF',
         'position': 'Slider AutoPlay 02'
       }]
    }
  }
});

Algunas variables útiles, para poder capturar los valores del json, donde el valor «0» hacer referencia al índice, de la cantidad de «elementos». para el caso del ejemplo del dataLayer anterior hay 2 y por defecto el primero es «0».

  • ecommerce.promoView.promotions.0.id
  • ecommerce.promoView.promotions.0.name
  • ecommerce.promoView.promotions.0.creative
  • ecommerce.promoView.promotions.0.position

Podemos crear una variable en GTM, de tipo Data Layer

Segmentos de Audiencias

Las etiquetas UTM te permiten descubrir qué canales generan la mayor cantidad de conversiones de ventas en un Ecommerce. Comprender estos datos y rastrear el rendimiento de su Campañas de Marketing es crucial para el éxito.

Antes de usa las UTM debes sabes:

Etiquetado UTM ¿Cómo usar URL Builder de Google Analytics ?

Se volvió un estándar tan importante en la Industria que El Etiquetado UTM es compatible Facabook, Google Analytics, Mixpanel, Kissmetrics y la mayoría de las plataformas de análisis, independientemente de la plataforma de medición que utilice permitirán comprender mejor de dónde proviene su tráfico


Click en Banners Internos (CTR)

Enhanced Ecommerce Banners click

ecommerce.promoClick


/**
Deberías llamar a esta funciona cuando el usuario realiza clicks en el banner de la promoción. Esta promoción llama a eventCallBack.
GTM, captura las  variables del datalayer y luego las envía a Google Analytics.
 *
 * @param {Object} promoObj An object representing an internal site promotion.
 */
function onPromoClick(promoObj) {
  dataLayer.push({
    'event': 'promotionClick',
    'ecommerce': {
      'promoClick': {
        'promotions': [{
           'id': promoObj.id,
           'name': promoObj.name,
           'creative': promoObj.creative,
           'position': promoObj.pos
         }]
      }
    },
    'eventCallback': function() {
      document.location = promoObj.destinationUrl;
    }
  });
}

Vista de detalle de un producto (PDP)

ecommerce.detail (PDP)


// Seguimiento de las impresiones de la vista detalle de un producto
// El objetivo es enviar los detallas del producto, asumiendo que el usuario esta en la URL en cuestión y la PageView se esta enviar por otro método

// Para completar el ejemplo de la imagen a continuación, faltaría definir la capa de datos de la promoción, y de los cuatro productos relacionados.  

window.dataLayer = window.dataLayer || [];
window.dataLayer.push({
  'ecommerce': {
    'detail': {
      'actionField': {'list': 'Cursos Ecommerce'},
      'products': [{
         'id: 'GA-01',
         'name': 'Analytics',
         'category': 'Guía de Analytics Enhanced Ecommerce',
         'variant': 'Text',
         'brand': 'cookingmetrics',
         'price':'500',
         'quantity': 2
       }]
     }
   }
});
google-analytics-seguimiento-de-ecommerce-detail

Agregar productos al carrito de compra

addToCart

// Medición de la acción de "agregar productos" al carrito de compras. actionFieldObject

window.dataLayer = window.dataLayer || [];
window.dataLayer.push({
  'event': 'addToCart',
  'ecommerce': {
    'currencyCode': 'ARS',
    'add': {   
      'products': [{
         'id: 'GA-01',
         'name': 'Analytics',
         'category': 'Guía de Analytics Enhanced Ecommerce',
         'variant': 'Text',
         'brand': 'cookingmetrics',
         'price':'500',
         'quantity': 2
       }]
    }
  }
});
google-analytics-seguimiento-de-ecommerce-addToCart

Quitar productos del carrito de compra

removeFromCart

Medición de la acción de quitar productos del carrito.

window.dataLayer = window.dataLayer || [];
window.dataLayer.push({
  'event': 'removeFromCart',
  'ecommerce': {
    'remove': {
      'products': [{
         'id: 'GA-01',
         'name': 'Analytics',
         'category': 'Guía de Analytics Enhanced Ecommerce',
         'variant': 'Text',
         'brand': 'cookingmetrics',
         'price':'500',
         'quantity': 2
      ]}
    }
});
google-analytics-seguimiento-de-ecommerce-RemoveToCart

etapas del proceso de Pago

https://www.martingaray.com.ar/blog/usar-google-analytics-para-aumentar-las-ventas/#Analisis_del_comportamiento_del_proceso_de_pago_checkout

En cada paso del proceso de pago a medida que el usuario completa cada formulario. Cuando el usuario ingresa al embudo de pago. y Por cada paso en el embudo, es necesario enviar un Hit a GA. Los pasos suelen ser páginas (en un pago de varias páginas) o secciones de formularios o (en un pago de una sola página).

Es necesario identificar ¿en qué paso se encuentra? el usuario para enviar el paso correcto, en cuanto mejor podamos medirlo mas información tendremos.

La matriz de product solo debe enviarse con el primer paso . Enviarlo en otros paso no hará nada…

También puede agregar una clave optional hit de pago, en caso de que desee enviar detalles adicionales sobre el paso de pago en sí (como el método de pago seleccionado o el método de envío). Alternativamente, puede usar la acción Opción de pago para enviar la información de la opción después de que se haya enviado el paso por primera vez.

Medir el proceso de pago con tarjeta de crédito

Medir Correctamente el proceso de pago con tarjeta de crédito o utilizando mercado pago, puede considerar en una o varias páginas en las que los usuarios Seleccionan la (1) forma de envío o retiro en tienda / Pick Up, Donde introducen sus datos de envío, Luego los (2) datos de Facturación y finalmente el (3) Método de Pago y los datos de pago, son los 3 pasos del proceso de pago que habitualmente tenemos que considerar en el <strong>checkout</strong> y el con el valor <strong>step</strong> en donde indicamos ¿qué paso del proceso se estamos midiendo?.

window.dataLayer = window.dataLayer || [];
 window.dataLayer.push({
   event: 'checkout',
   ecommerce: {
     checkout: {
       actionField: {
         'step': '1'
       },
        products: [{
         'id': 'GA-01',
         'name': 'Analytics',
         'price':'499',
         'category': 'Guia de Analytics Enhanced Ecommerce',
         'variant': 'Text',
         'brand': 'cookingmetrics',
         'quantity': 2,
         'dimension3': 'Ecommerce',
         'metric5': 10,
         'metric6': 20002
       },{
         'id': 'GTM-01',
         'name': 'Guia GTM',
         'price':'499',
         'category': 'Guia de Google Tag Manager',
         'variant': 'Text',
         'brand': 'cookingmetrics',
         'quantity': 2,
         'dimension3': 'Ecommerce',
         'metric5': 10,
         'metric6': 20002
       }]
     }
   }
 });

Medir opciones de pago

También puedes usar el campo <strong>option</strong> para incluir más datos adicionales, ¿que tipo de pago que ha seleccionado el usuario? o Medir las sucursales que Seleccionó. El nivel del detalle que puedes profundizar es TOTAL y dependiendo de lo que estamos interesados en medir.

dataLayer.push({
    'event': 'checkoutOption',
    'ecommerce': {
      'checkout_option': {
        'actionField': {
          'step': 3, 
          'option': 'Método de pago: Mercado Pago'
        }
      }
    }
  });

Confirmación de compra o purchase

Para Enviar todos los detalles de la compra por dataLayer con la ‘event’:’purchase’, que activará una etiqueta de enhanced ecommerce. En este ejemplo, los detalles de la transacción se conocen cuando se carga el dataLayer en la página, el cual puede estar junto con el HIT de Pageview o no, de todos modos, si implementas este ejemplo en el google tag manager debugger vas a ver el evento purchase.

window.dataLayer = window.dataLayer || [];
window.dataLayer.push({
  'event':'purchase',
  'ecommerce': {
   'currencyCode': 'USD', 
   'purchase': {
      'actionField': {
        'id': 'T12345',       // Transaction ID
        'affiliation': 'Cursos Online',
        'revenue': '35.43',   // Total del ingreso (Incluye. tax y shipping)
        'tax':'4.90',
        'shipping': '5.99',
        'coupon': 'Oferta HotSale2020 /CyberMonday 2021'
      },
       products: [{
         'id: 'GA-01',
         'name': 'Analytics',
         'price':'500',
         'category': 'Guía de Analytics Enhanced Ecommerce',
         'variant': 'Text',
         'brand': 'cookingmetrics',
         'quantity': 1,
         'dimension3: 'Ecommerce',
         'metric5': 10,
         'metric6': 20002,
        'coupon': 'Descuento CACE 20'
       },{
         'id': 'GTM-01',
         'name': 'Guia GTM',
         'price':'500',
         'category': 'Guia de Google Tag Manager',
         'variant': 'Text',
         'brand': 'cookingmetrics',
         'quantity': 2,
         'dimension3': 'Ecommerce',
         'metric5': 10,
         'metric6': 20002,
         'coupon': 'Descuento CACE 10'
       }]
     }
   }
});

¿Cómo medir el rendimiento de una campaña de Google ads y Facebook Ads?

  • Google ads:

Para el caso del ejemplo del dataLayer anterior, podemos tomar algunas variables útiles y alimentar los pixel de conversión de para poder medir el rendimiento de una campaña,

Para tener el valor de ingresos reales o el valor de la conversión, hay que completar google_conversion_currency con la variable ecommerce.purchase.actionField.revenue

Para tener el ID de conversión o google_conversion_id, hay que completar con la variable ecommerce.purchase.actionField.id

  • Facebook Ads:

Este código está diseñada para ayudar a los anunciantes a aprovechar fácilmente los datos de los usuarios compradores para realizar un seguimiento de conversiones y generar audiencias de remarketing más grandes.

fbq('init', '{{ID de Cuenta}}');  // Inicia Facebook lookalike code
fbq('track', 'Purchase', {
  'content_name': '{{ecommerce.purchase.products.0.name}}',
  'content_category': '{{ecommerce.purchase.products.0.category}}',
  'content_ids': ['{{ecommerce.purchase.products.0.id}}'],
  'content_type': 'product',
     'value': {{ecommerce.purchase.actionField.revenue}},
     'currency': '{{ecommerce.currencyCode}}'
});

Google Analytics Es Extremadamente útil para el comercio electrónico. Permite a los responsables de la tienda Online monitorear rendimientos de ventas por productos, marcas y categorías. CTR de Banners OnPage, Promociones internas. Cupones de descuento. Análisis de productos por posición y CTR, Análisis de Cross Selling y UpSelling… entre otros

¿Cómo usar Universal Analytics para aumentar las ventas ?

Y entre sus funciones más «ocultas» esta la de Alimentar Google Ads Search, realizar Smart Bidding, y campañas con merchant Center. En definitiva si no tenemos Google Analytics Correctamente implementado y configurado, difícilmente se puedan Ejecutar campañas de Performance Ads. Cualquier intento de realizar Performance sin Vincular Google Analytics + Google Ads es pura casualidad.