#MedirParaEntender » Analytics » Implementar Google Analytics Enhanced Ecommerce

Implementar Google Analytics Enhanced Ecommerce12 min de Lectura

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 ultima 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.

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.

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': 'andabi',
       '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': 'andabi',
       '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)

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

Click en Banners Internos (CTR)

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': 'andabi',
         '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': 'andabi',
         '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': 'andabi',
         '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 checkout y el con el valor step 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': 'andabi',
         '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': 'andabi',
         'quantity': 2,
         'dimension3': 'Ecommerce',
         'metric5': 10,
         'metric6': 20002
       }]
     }
   }
 });

Medir opciones de pago

También puedes usar el campo option 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': 'andabi',
         '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': 'andabi',
         '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}}'
});

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *