El complemento de comercio electrónico mejorado para analytics.js permite medir las interacciones del usuario con los productos en sitios web de comercio electrónico a través de la experiencia de compra del usuario. Esto incluye las impresiones de productos, los clics en los productos, la visualización de sus detalles, la adición de un producto a un carrito de compras, el inicio del proceso de confirmación de la compra, las transacciones y los reembolsos.
Migración y compatibilidad con el complemento de comercio electrónico (ecommerce.js)
Si ya implementaste la medición de comercio electrónico y deseas comenzar a usar Comercio electrónico mejorado, hay dos opciones principales:
Usar una propiedad nueva
Puedes agregar una herramienta de seguimiento adicional para una propiedad recién creada y etiquetar o habilitar el Comercio electrónico mejorado en la propiedad nueva. Consulta Cómo trabajar con varios objetos de seguimiento para obtener detalles acerca de cómo enviar datos a varias propiedades desde una sola página.
Cómo migrar una propiedad existente
Para migrar del complemento de comercio electrónico al complemento de comercio electrónico mejorado, los usuarios actuales de analytics.js deben quitar y reemplazar las referencias con código de comercio electrónico mejorado.
Si actualmente usas ga.js, primero deberás migrar a analytics.js para poder usar el complemento de comercio electrónico mejorado.
Los datos de transacciones y artículos recopilados anteriormente con el complemento ecommerce.js no se verán afectados por la migración y seguirán disponibles en las propiedades y los perfiles a los que se enviaron originalmente.
Acciones y tipos de datos de comercio electrónico mejorado
Existen varios tipos de datos de comercio electrónico que puedes enviar:
Datos de impresiones
Representa información sobre un producto que se vio. Se denomina impressionFieldObject
y contiene los siguientes valores:
Clave | Value Type | Obligatorio | Descripción |
---|---|---|---|
id |
text | *Sí |
Es el ID o SKU del producto (p.ej., P67890).
* Se debe establecer |
name |
text | *Sí |
Es el nombre del producto (p.ej., Camiseta de Android).
* Se debe establecer |
list |
text | No | Es la lista o colección a la que pertenece el producto (p. ej., resultados de la búsqueda). |
list_name |
text | No | Es la lista o colección a la que pertenece el producto (p. ej., resultados de la búsqueda). |
brand |
text | No | Es la marca asociada con el producto (p.ej., Google). |
category |
text | No |
Es la categoría a la que pertenece el producto (p.ej., indumentaria). Usa / como delimitador para especificar hasta 5 niveles de jerarquía (p.ej., Indumentaria/Hombres/Camisetas).
|
variant |
text | No | Es la variante del producto (p.ej., negro). |
position |
integer | No | Es la posición del producto en una lista o colección (p.ej., 2). |
list_position |
integer | No | Es la posición del producto en una lista o colección (p.ej., 2). |
price |
número | No | Es el precio de un producto (p.ej., 29.20). |
Datos del producto
Los datos de productos representan productos individuales que se vieron, que se agregaron al carrito de compras, etc. Se los conoce como productFieldObject
y contienen los siguientes valores:
Clave | Value Type | Obligatorio | Descripción |
---|---|---|---|
id |
text | *Sí |
Es el ID o SKU del producto (p.ej., P67890).
* Se debe establecer uno de ID o |
name |
text | *Sí |
Es el nombre del producto (p.ej., Camiseta de Android).
* Se debe establecer uno de ID o |
brand |
text | No | Es la marca asociada con el producto (p.ej., Google). |
category |
text | No | Es la categoría a la que pertenece el producto (p.ej., indumentaria). Usa / como delimitador para especificar hasta 5 niveles de jerarquía (p.ej., Indumentaria/Hombres/Camisetas). |
variant |
text | No | Es la variante del producto (p.ej., negro). |
price |
número | No | Es el precio de un producto (p.ej., 29.20). |
quantity |
integer | No | Es la cantidad de un producto (p.ej., 2). |
coupon |
text | No | Es el código de cupón asociado a un producto (p.ej., OFERTA_DE_VERANO13). |
position |
integer | No | Es la posición del producto en una lista o colección (p.ej., 2). |
list_position |
integer | No | Es la posición del producto en una lista o colección (p.ej., 2). |
Datos de promoción
Representa información sobre una promoción que se vio. Se denomina promoFieldObject
y contiene los siguientes valores:
Clave | Value Type | Obligatorio | Descripción |
---|---|---|---|
id |
text | *Sí |
Es el ID de la promoción (p.ej., PROMO_1234).
* Se debe establecer |
name |
text | *Sí |
Es el nombre de la promoción (p.ej., Oferta de verano).
* Se debe establecer |
creative |
text | No | Es la creatividad asociada con la promoción (p.ej., banner_verano2). |
creative_name |
text | No | Es el nombre de la creatividad (p.ej., banner_verano2). |
position |
text | No | Es la posición de la creatividad (p.ej., banner_slot_1). |
creative_slot |
text | No | El nombre del espacio para creatividades (p.ej., banner_slot_1). |
Datos de acción
Representa información sobre una acción relacionada con el comercio electrónico que se llevó a cabo.
Se denomina actionFieldObject
y contiene los siguientes valores:
Clave | Value Type | Obligatorio | Descripción |
---|---|---|---|
id |
text | *Sí |
Es el ID de transacción (p.ej., T1234).
* Obligatorio si el tipo de acción es |
affiliation |
text | No | Es la tienda o afiliación en la que se realizó la transacción (p.ej., Google Store). |
revenue |
número | No |
Especifica los ingresos totales o el total general asociados con la transacción (p.ej., 11.99). Este valor puede incluir los costos de envío, los costos impositivos y otros ajustes a los ingresos totales que quieras incluir en tus cálculos de ingresos. |
value | número | No | Es el valor (es decir, los ingresos) asociado con el evento. |
tax |
número | No | Indica el impuesto total asociado con la transacción. |
shipping |
número | No | Indica el costo de envío asociado a la transacción. |
coupon |
text | No | Es el cupón de la transacción que se canjeó con la transacción. |
list |
text | No | Es la lista a la que pertenecen los productos asociados. Opcional. |
items |
arreglo | No | El array que contiene los productos asociados. |
step |
integer | No | Es un número que representa un paso en el proceso de confirmación de la compra. Opcional durante las acciones de “confirmación de la compra”. |
checkout_step |
integer | No | Es un número que representa un paso en el proceso de confirmación de la compra. |
option |
text | No |
Campo adicional para las acciones checkout y checkout_option que puede describir la información de las opciones en la página de confirmación de compras, como la forma de pago seleccionada.
|
checkout_option |
text | No | Opción de confirmación de la compra (es decir, forma de pago seleccionada). |
Acciones de productos y promociones
Las acciones especifican cómo interpretar los datos de productos y promociones que envías a Google Analytics.
Acción | Evento | Descripción |
---|---|---|
click |
Un clic en un producto o vínculo de uno o más productos. | |
detail |
Una vista de los detalles del producto. | |
add |
Agregar uno o más productos a un carrito de compras | |
remove |
Quitar uno o más productos del carrito de compras | |
checkout |
Inicio del proceso de confirmación de la compra de uno o más productos. | |
checkout_option |
Envío del valor de la opción para un paso de confirmación de la compra determinado. | |
purchase |
Es la venta de uno o más productos. | |
refund |
Es el reembolso de uno o más productos. | |
promo_click |
Un clic en una promoción interna. | |
add_to_cart |
Un usuario agrega uno o más productos a un carrito de compras. | |
begin_checkout |
Un usuario inicia el proceso de confirmación de la compra de uno o más productos. | |
checkout_progress |
Un usuario completa los pasos de confirmación de la compra después del primer paso. | |
purchase |
Un usuario completa una compra. | |
refund |
Se emite un reembolso por uno o más productos a un usuario. | |
remove_from_cart |
Un usuario quita uno o más productos de un carrito de compras. | |
select_content |
Un usuario hace clic en un producto o vínculo de producto. | |
set_checkout_option |
El paso de confirmación de la compra que completa un usuario. | |
view_item |
Un usuario ve los detalles de un producto. | |
view_item_list |
Un usuario ve una lista de uno o más productos. | |
view_promotion |
Un usuario hace clic en una promoción interna. | |
view_refund |
Un usuario ve un reembolso por uno o más productos. |
Implementación
En las siguientes secciones, se describe cómo implementar el complemento de comercio electrónico mejorado para medir la actividad de comercio electrónico en un sitio web con la biblioteca analytics.js.
Carga el complemento de comercio electrónico
Para reducir el tamaño de la biblioteca de analytics.js, el comercio electrónico mejorado no se proporciona en la biblioteca predeterminada. En cambio, se proporciona como un módulo de complemento que debe cargarse antes de usarse.
Para cargar el complemento de comercio electrónico mejorado, usa el siguiente comando:
ga('require', 'ec');
Este comando debe ocurrir después de que crees tu objeto de seguimiento y antes de usar cualquiera de las funcionalidades específicas de comercio electrónico mejorado.
Cómo enviar datos de comercio electrónico mejorados
Una vez cargado, se agregarán algunos comandos nuevos específicos para el comercio electrónico mejorado al rastreador predeterminado y podrás comenzar a enviar datos de comercio electrónico.
- Cómo medir las actividades del comercio electrónico
- Medición de transacciones
- Medición de reembolsos
- Medición del proceso de confirmación de la compra
- Cómo medir las promociones internas
Mide las actividades del comercio electrónico
Una implementación típica de Comercio electrónico mejorado medirá las impresiones de productos y cualquiera de las siguientes acciones:
- Hace clic en la vinculación de un producto.
- Ver detalles de productos
- Se incluyen las impresiones y los clics de las promociones internas.
- Agregar o quitar un producto del carrito de compras
- Iniciar el proceso de confirmación de la compra de un producto.
- Compras y reembolsos
Medición de impresiones
Las impresiones del producto se miden con el comando ec:addImpression
. Los detalles sobre el producto se agregan en un impressionFieldObject
.
Por ejemplo, el siguiente código mide la impresión de un producto en una lista de resultados de la búsqueda:
ga('ec:addImpression', { // Provide product details in an impressionFieldObject.
'id': 'P12345', // Product ID (string).
'name': 'Android Warhol T-Shirt', // Product name (string).
'category': 'Apparel/T-Shirts', // Product category (string).
'brand': 'Google', // Product brand (string).
'variant': 'Black', // Product variant (string).
'list': 'Search Results', // Product list (string).
'position': 1, // Product position (number).
'dimension1': 'Member' // Custom dimension (string).
});
Un elemento impressionFieldObject
debe tener un valor name
o id
. Todos los demás valores son opcionales y no es necesario establecerlos.
Medición de acciones
Las acciones se miden mediante el comando ec:addProduct
con un productFieldObject
para agregar detalles del producto y el comando ec:setAction
para especificar la acción que se está realizando.
Por ejemplo, el siguiente código mide el clic en el vínculo de un producto que se muestra en una lista de resultados de la búsqueda:
ga('ec:addProduct', { // Provide product details in a productFieldObject.
'id': 'P12345', // Product ID (string).
'name': 'Android Warhol T-Shirt', // Product name (string).
'category': 'Apparel', // Product category (string).
'brand': 'Google', // Product brand (string).
'variant': 'Black', // Product variant (string).
'position': 1, // Product position (number).
'dimension1': 'Member' // Custom dimension (string).
});
ga('ec:setAction', 'click', { // click action.
'list': 'Search Results' // Product list (string).
});
Un productFieldObject
debe tener un valor name
o id
. Todos los demás valores son opcionales y no es necesario establecerlos.
Combinación de impresiones y acciones
En los casos en los que tengas impresiones de productos y una acción, es posible combinar y medir esto en un solo hit.
En el siguiente ejemplo, se muestra cómo medir una vista de detalles de un producto con una sección de productos relacionada:
// The impression from a Related Products section.
ga('ec:addImpression', { // Provide product details in an impressionFieldObject.
'id': 'P12345', // Product ID (string).
'name': 'Android Warhol T-Shirt', // Product name (string).
'category': 'Apparel/T-Shirts', // Product category (string).
'brand': 'Google', // Product brand (string).
'variant': 'Black', // Product variant (string).
'list': 'Related Products', // Product list (string).
'position': 1 // Product position (number).
});
// The product being viewed.
ga('ec:addProduct', { // Provide product details in an productFieldObject.
'id': 'P67890', // Product ID (string).
'name': 'YouTube Organic T-Shirt', // Product name (string).
'category': 'Apparel/T-Shirts', // Product category (string).
'brand': 'YouTube', // Product brand (string).
'variant': 'gray', // Product variant (string).
'position': 2 // Product position (number).
});
ga('ec:setAction', 'detail'); // Detail action.
Mide las transacciones
Mide una transacción mediante el comando ec:setAction
y la configuración del tipo de acción en purchase
. Los detalles a nivel de la transacción, como los ingresos totales, los impuestos y el envío, se proporcionan en un objeto actionFieldObject
:
ga('ec:addProduct', { // Provide product details in an productFieldObject.
'id': 'P12345', // Product ID (string).
'name': 'Android Warhol T-Shirt', // Product name (string).
'category': 'Apparel', // Product category (string).
'brand': 'Google', // Product brand (string).
'variant': 'black', // Product variant (string).
'price': '29.20', // Product price (number).
'coupon': 'APPARELSALE', // Product coupon (string).
'quantity': 1 // Product quantity (number).
});
ga('ec:setAction', 'purchase', { // Transaction details are provided in an actionFieldObject.
'id': 'T12345', // (Required) Transaction id (string).
'affiliation': 'Google Store - Online', // Affiliation (string).
'revenue': '37.39', // Revenue (number).
'tax': '2.85', // Tax (number).
'shipping': '5.34', // Shipping (number).
'coupon': 'SUMMER2013' // Transaction coupon (string).
});
Un elemento actionFieldObject
debe tener un valor id
si el tipo de acción es purchase
o refund
. Todos los demás valores son opcionales y no es necesario establecerlos.
Medición de reembolsos
Para reembolsar una transacción completa, configura una acción refund
y proporciona el ID de transacción:
// Refund an entire transaction.
ga('ec:setAction', 'refund', {
// Transaction ID is only required field for full refund.
'id': 'T12345'
});
Si no se encuentra una transacción coincidente, no se procesará el hit de refund
.
Para medir un reembolso parcial, configura una acción refund
y especifica el ID de transacción, los IDs de producto y las cantidades de productos que se reembolsarán:
// Refund a single product.
ga('ec:addProduct', {
'id': 'P12345', // Product ID is required for partial refund.
'quantity': 1 // Quantity is required for partial refund.
});
ga('ec:setAction', 'refund', {
'id': 'T12345', // Transaction ID is required for partial refund.
});
Uso de eventos sin interacción para reembolsos
Si necesitas enviar datos de reembolsos mediante un evento y este no forma parte del comportamiento que se mide normalmente en el sitio (es decir, no es iniciado por el usuario), te recomendamos que envíes un evento sin interacción. Esto evitará que las métricas, como el porcentaje de rebote, el tiempo en el sitio web, etc., se vean afectadas por el evento. Por ejemplo:
ga('send', 'event', 'Ecommerce', 'Refund', {'nonInteraction': 1});
Medición del proceso de pago
Para medir cada paso en un proceso de confirmación de la compra:
- Agrega un código para medir cada paso del proceso de confirmación de la compra.
- Si corresponde, agrega un código para medir las opciones de confirmación de la compra.
- De manera opcional, establece nombres de pasos fáciles de usar para el informe de embudo de confirmación de la compra. Para ello, configura Configuración de comercio electrónico en la sección de administrador de la interfaz web.
1. Mide los pasos de confirmación de la compra
En cada paso del proceso de confirmación de la compra, deberás implementar el código correspondiente para enviar datos a Google Analytics:
Campo
step
Para cada paso de confirmación de la compra que midas, debes incluir un valor de
step
. Este valor se usa para asignar tus acciones de confirmación de la compra a las etiquetas que configuraste en cada paso en la Configuración de comercio electrónico.Campo
option
Si tienes información adicional sobre el paso de confirmación de la compra determinado en el momento en que se mide, puedes configurar el campo
option
con una accióncheckout
para capturar esta información. Por ejemplo, el tipo de pago predeterminado para el usuario (p.ej.,Visa
).Medición de un paso de confirmación de la compra
Para medir un paso de confirmación de la compra, usa
ec:addProduct
para cada producto yec:setAction
indica una confirmación de la compra. Si corresponde,ec:setAction
puede tomar unactionFieldObject
adicional para describir el paso de confirmación de la compra constep
yoption
.En el siguiente ejemplo, se muestra cómo medir el primer paso de un proceso de confirmación de la compra con un solo producto, además de información adicional sobre el tipo de pago:
ga('ec:addProduct', { // Provide product details in an productFieldObject. 'id': 'P12345', // Product ID (string). 'name': 'Android Warhol T-Shirt', // Product name (string). 'category': 'Apparel', // Product category (string). 'brand': 'Google', // Product brand (string). 'variant': 'black', // Product variant (string). 'price': '29.20', // Product price (number). 'quantity': 1 // Product quantity (number). }); // Add the step number and additional info about the checkout to the action. ga('ec:setAction','checkout', { 'step': 1, 'option': 'Visa' });
2. Medir las opciones de confirmación de la compra
Las opciones de confirmación de la compra te permiten medir información adicional sobre el estado de la confirmación de la compra. Esto es útil en los casos en los que se mide un paso de confirmación de la compra durante la vista de página inicial, pero hay información adicional sobre el mismo paso de confirmación de la compra disponible después de que se establece una opción seleccionada por el usuario. Por ejemplo, el usuario selecciona un método de envío.
Si deseas medir una opción de confirmación de la compra, usa ec:setAction
para indicar un checkout_option
y, luego, incluye el número de paso y la descripción de la opción.
Es probable que quieras medir esta acción una vez que el usuario haga clic para pasar al siguiente paso del proceso de confirmación de la compra. Por ejemplo:
// (On "Next" button click)
ga('ec:setAction', 'checkout_option', {'step': 2, 'option': 'FedEx'});
ga('send', 'event', 'Checkout', 'Option', {
hitCallback: function() {
// advance to next page
},
});
3. Configuración del embudo de confirmación de la compra
A cada paso del proceso de confirmación de la compra se le puede asignar un nombre descriptivo que se utilizará en los informes. Para configurar estos nombres, visita la sección Administrador de la interfaz web de Google Analytics, selecciona la vista (perfil) y haz clic en Configuración de comercio electrónico. Sigue las instrucciones de configuración de comercio electrónico para etiquetar cada paso de la confirmación de la compra que desees medir.
Mide las promociones internas
El complemento de Comercio electrónico mejorado admite la medición de impresiones y clics de promociones internas, como los banners que se muestran para promocionar una venta en otra sección del sitio web.
Impresiones de promoción
Por lo general, las impresiones de promociones internas se miden cuando se carga la página y se envían con la vista de página inicial a través del comando ec:addPromo
. Por ejemplo:
ga('ec:addPromo', { // Promo details provided in a promoFieldObject.
'id': 'PROMO_1234', // Promotion ID. Required (string).
'name': 'Summer Sale', // Promotion name (string).
'creative': 'summer_banner2', // Creative (string).
'position': 'banner_slot1' // Position (string).
});
Clics de promoción
Para medir los clics en promociones internas, se puede configurar la acción promo_click
. Por ejemplo:
// Identify the promotion that was clicked.
ga('ec:addPromo', {
'id': 'PROMO_1234',
'name': 'Summer Sale',
'creative': 'summer_banner2',
'position': 'banner_slot1'
});
// Send the promo_click action with an event.
ga('ec:setAction', 'promo_click');
ga('send', 'event', 'Internal Promotions', 'click', 'Summer Sale');
Por ejemplo, para medir una página de detalles del producto con una impresión y un clic promocional, primero envía los datos de productos y de impresiones con la vista de página inicial y, luego, envía los datos de clics promocionales en un evento independiente:
// 1. Send product and impression data with pageview.
ga('ec:addProduct', {
'id': 'P12345', // Product ID (string).
'name': 'Android Warhol T-Shirt', // Product name (string).
'category': 'Apparel', // Product category (string).
'brand': 'Google', // Product brand (string).
'variant': 'Black', // Product variant (string).
'position': 1, // Product position (number).
});
// The impression from the Related Products section.
ga('ec:addImpression', {
'id': 'P12345', // Product ID (string).
'name': 'Android Warhol T-Shirt', // Product name (string).
'category': 'Apparel/T-Shirts', // Product category (string).
'brand': 'Google', // Product brand (string).
'variant': 'Black', // Product variant (string).
'list': 'Related Products', // Product list (string).
'position': 1, // Product position (number).
});
ga('ec:setAction', 'detail'); // Detail action.
ga('send', 'pageview'); // Send the product data with initial pageview.
// 2. Send the promo click data when the promo click occurs.
// Call this function when promo click occurs.
function onPromoClick() {
ga('ec:addPromo', {
'id': 'PROMO_1234',
'name': 'Summer Sale',
'creative': 'summer_banner2',
'position': 'banner_slot1'
});
// Send the promo_click action with an event.
ga('ec:setAction', 'promo_click');
ga('send', 'event', 'Internal Promotions', 'click', 'Summer Sale');
}
Un promoFieldObject
debe tener un valor name
o id
. El resto de los valores son opcionales y no es necesario configurarlos.
Ejemplo completo
En los siguientes fragmentos de código, se muestra cómo se puede medir el ciclo de vida de comercio electrónico de un solo producto desde la impresión inicial hasta la transacción con el complemento de comercio electrónico mejorado.
Cómo medir una impresión del producto
En este ejemplo, un usuario primero ve el producto en una lista de resultados de la búsqueda. Para medir esta impresión del producto, usa el comando ec:addImpression
y proporciona los detalles del producto en un impressionFieldObject
:
ga('create', 'UA-XXXXX-Y');
ga('require', 'ec');
ga('ec:addImpression', {
'id': 'P12345', // Product details are provided in an impressionFieldObject.
'name': 'Android Warhol T-Shirt',
'category': 'Apparel/T-Shirts',
'brand': 'Google',
'variant': 'black',
'list': 'Search Results',
'position': 1 // 'position' indicates the product position in the list.
});
ga('ec:addImpression', {
'id': 'P67890',
'name': 'YouTube Organic T-Shirt',
'category': 'Apparel/T-Shirts',
'brand': 'YouTube',
'variant': 'gray',
'list': 'Search Results',
'position': 2
});
ga('send', 'pageview'); // Send product impressions with initial pageview.
Medición de clics en el producto
A continuación, un usuario expresa interés en este producto en particular haciendo clic en la ficha de producto para ver más detalles.
Para medir el clic en ese producto, usa ec:addProduct
y ec:setAction
:
// Called when a link to a product is clicked.
function onProductClick() {
ga('ec:addProduct', {
'id': 'P12345',
'name': 'Android Warhol T-Shirt',
'category': 'Apparel',
'brand': 'Google',
'variant': 'black',
'position': 1
});
ga('ec:setAction', 'click', {list: 'Search Results'});
// Send click with an event, then send user to product page.
ga('send', 'event', 'UX', 'click', 'Results', {
hitCallback: function() {
document.location = '/product_details?id=P12345';
}
});
}
El vínculo del producto se puede implementar de la siguiente manera:
<a href="/next-page.html"
return !ga.loaded;">
Android Warhol T-Shirt
</a>
Medición de la vista de detalles del producto
Después de hacer clic en la ficha de producto, un usuario ve la página de detalles del producto.
Para medir esta vista de detalles del producto, usa ec:addProduct
y ec:setAction
para especificar una acción detail
:
ga('create', 'UA-XXXXX-Y');
ga('require', 'ec');
ga('ec:addProduct', {
'id': 'P12345',
'name': 'Android Warhol T-Shirt',
'category': 'Apparel',
'brand': 'Google',
'variant': 'black'
});
ga('ec:setAction', 'detail');
ga('send', 'pageview'); // Send product details view with the initial pageview.
Medición de una adición o eliminación del carrito
El usuario expresa su intención de comprar el artículo agregándolo a un carrito de compras.
Para medir la adición o eliminación de un producto de un carrito de compras, usa ec:addProduct
y establece el tipo add
o remove
:
// Called when a product is added to a shopping cart.
function addToCart(product) {
ga('ec:addProduct', {
'id': product.id,
'name': product.name,
'category': product.category,
'brand': product.brand,
'variant': product.variant,
'price': product.price,
'quantity': product.qty
});
ga('ec:setAction', 'add');
ga('send', 'event', 'UX', 'click', 'add to cart'); // Send data using an event.
}
Medición del proceso de confirmación de la compra
Ahora el usuario está listo para comenzar el proceso de confirmación de la compra, que, en este ejemplo, incluye dos pasos, cada uno en páginas separadas:
- Agrega los detalles del pago (payment.html).
- Agregue los detalles de envío (shipping.html).
Si corresponde, asegúrate de haber configurado un embudo de confirmación de la compra correctamente en el administrador de la interfaz web, en Configuración de comercio electrónico. Por ejemplo:
Paso 1: Pago
Si deseas medir el primer paso de la confirmación de la compra, usa ec:addProduct
para cada producto en el carrito de compras y ec:setAction
para indicar un checkout
.
ec:setAction
usa un actionFieldObject
para describir el paso de confirmación de la compra con un número. Además, en el campo option
, se incluye información adicional sobre el tipo de pago predeterminado para este usuario:
ga('create', 'UA-XXXXX-Y');
ga('require', 'ec');
/**
* Called when the user begins the checkout process.
* @param {Array} cart An array representing the user's shopping cart.
*/
function checkout(cart) {
for(var i = 0; i < cart.length; i++) {
var product = cart[i];
ga('ec:addProduct', {
'id': product.id,
'name': product.name,
'category': product.category,
'brand': product.brand,
'variant': product.variant,
'price': product.price,
'quantity': product.qty
});
}
}
// In the case of checkout actions, an additional actionFieldObject can
// specify a checkout step and option.
ga('ec:setAction','checkout', {
'step': 1, // A value of 1 indicates this action is first checkout step.
'option': 'Visa' // Used to specify additional info about a checkout stage, e.g. payment method.
});
ga('send', 'pageview'); // Pageview for payment.html
Paso 2: Envío
Si deseas medir el segundo paso de la confirmación de la compra, usa ec:addProduct
para cada producto del carrito de compras y ec:setAction
para indicar una confirmación de la compra. En este caso, no tenemos información adicional sobre la opción de envío seleccionada cuando se envía la vista de página inicial, por lo que se manejará por separado usando ec:setAction
para indicar un checkout_option
.
// Measure checkout step 2:
ga('create', 'UA-XXXXX-Y');
ga('require', 'ec');
/**
* Called when the user begins the checkout process.
* @param {Array} cart An array representing the user's shopping cart.
*/
function checkout(cart) {
for(var i = 0; i < cart.length; i++) {
var product = cart[i];
ga('ec:addProduct', {
'id': product.id,
'name': product.name,
'category': product.category,
'brand': product.brand,
'variant': product.variant,
'price': product.price,
'quantity': product.qty
});
}
}
ga('ec:setAction','checkout', {'step': 2});
ga('send', 'pageview'); // Pageview for shipping.html
// Called when user has completed shipping options.
function onShippingComplete(stepNumber, shippingOption) {
ga('ec:setAction', 'checkout_option', {
'step': stepNumber,
'option': shippingOption
});
ga('send', 'event', 'Checkout', 'Option', {
hitCallback: function() {
// Advance to next page.
}
});
}
El formulario se podría implementar de la siguiente manera:
<a href="/next-page.html"
'FedEx'); return !ga.loaded;">
Continue
</a>
Medición de una transacción
Por último, el usuario completa el proceso de pago y envía su compra.
Para medir la venta de uno o más productos, usa ec:addProduct
para agregar cada producto y, luego, ec:setAction
para especificar un purchase
. La información a nivel de la transacción, como los ingresos totales, los impuestos, etc., se puede especificar mediante un actionFieldObject
. Por ejemplo:
ga('create', 'UA-XXXXX-Y');
ga('require', 'ec');
ga('ec:addProduct', {
'id': 'P12345',
'name': 'Android Warhol T-Shirt',
'category': 'Apparel',
'brand': 'Google',
'variant': 'black',
'price': '29.20',
'quantity': 1
});
// Transaction level information is provided via an actionFieldObject.
ga('ec:setAction', 'purchase', {
'id': 'T12345',
'affiliation': 'Google Store - Online',
'revenue': '37.39',
'tax': '2.85',
'shipping': '5.34',
'coupon': 'SUMMER2013' // User added a coupon at checkout.
});
ga('send', 'pageview'); // Send transaction data with initial pageview.
Especificación de monedas locales
De forma predeterminada, puedes configurar una moneda común y global para todas las transacciones y los elementos a través de la interfaz web de administración de Google Analytics. De forma predeterminada, se usa la moneda global para todos los artículos y transacciones. En el caso de los sitios web que realizan transacciones en varias monedas, el complemento de comercio electrónico te permite especificar la moneda local de la transacción.
La moneda local debe especificarse en el estándar ISO 4217
. Lee el documento de referencia de códigos de moneda para obtener una lista completa de las monedas de conversión admitidas.
Las monedas locales se especifican con la propiedad de seguimiento currencyCode
. Por ejemplo, esta herramienta de seguimiento enviará valores de moneda en euros:
ga('create', 'UA-XXXXX-Y');
ga('require', 'ec');
ga('set', 'currencyCode', 'EUR'); // Set currency to Euros.
ga('ec:addProduct', {
'id': 'P12345',
'name': 'Android Warhol T-Shirt',
'category': 'Apparel',
'brand': 'Google',
'variant': 'black',
'price': '21.89',
'quantity': 1
});
ga('ec:setAction', 'purchase', {
id: 'T12345',
affiliation: 'Google Store - Online',
revenue: '28.03',
tax: '2.14',
shipping: '4.00',
coupon: 'SUMMER2013'
});
ga('send', 'pageview');