Este artigo faz parte do guia de migração do Universal Analytics para o Google Analytics 4. Consulte o índice do guia de migração.

[UA→GA4] Migre a recolha de dados de comércio eletrónico do UA para o GA4

Práticas recomendadas para configurar a recolha de dados de comércio eletrónico em propriedades do Google Analytics 4
Este artigo destina-se a proprietários de Websites que pretendam recolher dados de comércio eletrónico nas respetivas propriedades do Universal Analytics e do Google Analytics 4. Este artigo também fornece algumas informações de práticas recomendadas para proprietários de apps para dispositivos móveis que utilizam o Google Analytics para Firebase.

Os nomes de alguns eventos e parâmetros de comércio eletrónico foram alterados para as propriedades do Google Analytics 4. A utilização dos nomes e parâmetros corretos do GA4 fornece-lhe os relatórios de comércio eletrónico e os dados de eventos de comércio eletrónico mais úteis na sua propriedade do GA4.

Para migrar do UA para o GA4, deve

  • Deixar a implementação do UA inalterada 
  • Criar eventos duplicados para a sua propriedade do GA4. Utilize os novos nomes e parâmetros de eventos necessários para as propriedades do Google Analytics. Irá ter duas implementações independentes lado a lado, cada uma a funcionar de forma ligeiramente diferente.

Evite partilhar implementações de comércio eletrónico entre o UA e o GA4

Se utilizar a implementação existente de comércio eletrónico do UA (ou seja, eventos dataLayer e código gtag.js) com uma propriedade do GA4, os relatórios de comércio eletrónico do GA4 não estarão completos. A biblioteca gtag.js traduz automaticamente alguns eventos e parâmetros do UA para o que é necessário para o GA4, mas não todos. 

Por outro lado, também não deve simplesmente mudar para os nomes de eventos e parâmetros do GA4. O UA não irá recolher dados de eventos que não reconheça. Por exemplo, todos os eventos de comércio eletrónico do GA4 têm o parâmetro item_id em vez de id.   

Por este motivo, a prática recomendada é ter duas implementações: uma para o UA e outra para a sua propriedade do GA4. 

Uma vez que esta ação resulta no envio de dois eventos quando normalmente enviaria um único evento, pode optar por utilizar a implementação do UA e adicionar apenas os eventos/parâmetros adicionais necessários para enviar dados para as propriedades do GA4. No entanto, isto requer um conhecimento profundo dos dois conjuntos diferentes de eventos e parâmetros. Se mantiver a estrutura e os objetos dataLayer do UA, 

  • Tem de adicionar novos eventos/parâmetros do GA4 para aceder a todas as capacidades de criação de relatórios nas propriedades do GA4
  • Se um evento do UA for descontinuado no GA4, deve criar um evento duplicado com o nome do GA4 atualizado 

Noções básicas: eventos e parâmetros

Um evento especifica como interpretar os dados do produto, da lista e/ou da promoção enviados por si. Os parâmetros transmitem informações mais específicas sobre um evento.  

  • No GA4, os parâmetros estão incorporados numa matriz items (detalhes). Tenha em atenção que isto é diferente do objeto dataLayer do UA, onde é necessário especificar informações de ações adicionais para eventos distintos. 
  • A etiquetagem de comércio eletrónico está sujeita às limitações de eventos e parâmetros do GA4. Pode especificar até 25 parâmetros personalizados por evento (a matriz items ocupa apenas um espaço) e até 50 dimensões personalizadas e 50 métricas personalizadas por projeto (detalhes).

Parâmetros obrigatórios para o comércio eletrónico do GA4

(os parâmetros obrigatórios estão a negrito)

Se não incluir os parâmetros obrigatórios para eventos específicos de comércio eletrónico (por exemplo, items, item_id, item_name), estes eventos não são apresentados nos seus relatórios de comércio eletrónico do GA4. Em alternativa, são comunicados como eventos personalizados.  

 

Nome do evento

Parâmetros

view_item

currency, items, value

view_item_list

items, item_list_name, item_list_id

select_item

items, item_list_name, item_list_id

add_to_wishlist

currency, items, value

add_to_cart

currency, items, value

view_promotion

items, promotion_id, promotion_name, creative_name, creative_slot, location_id

select_promotion

items, promotion_id, promotion_name, creative_name, creative_slot, location_id

view_cart

currency, items, value

remove_from_cart

currency, items, value

begin_checkout

coupon, currency, items, value

add_payment_info

coupon, currency, items, payment_type, value

add_shipping_info

coupon, currency, items, shipping_tier, value

purchase

affiliation, coupon, currency, items, transaction_id, shipping, tax, value

refund

affiliation, coupon, currency, items, transaction_id, shipping, tax, value

 
Os parâmetros (coupon, affiliation, item_list_name, item_list_id) podem ser transmitidos ao nível do evento ou do artigo. Se estiverem presentes tanto ao nível do evento como do artigo, o nível do artigo prevalece.  

Parâmetro de evento

Parâmetros ao nível do artigo

Artigos (veja abaixo)

affiliation, coupon, currency, discount, index, item_id, item_brand, item_category, item_category2, item_category3, item_category4, item_category5, item_list_name, item_list_id, item_name, item_variant, price, quantity

 

A tabela seguinte descreve os parâmetros das matrizes de artigos individuais disponíveis para recolha.

 

Nome do parâmetro da matriz de artigos

Descrição

affiliation

O nome ou código do afiliado (parceiro/fornecedor; se existir) associado a um artigo individual

coupon

O nome/código do cupão (se existir) associado a um artigo individual

discount

O desconto (se existir) associado a um artigo individual

item_brand

A marca do artigo

item_category

A categoria do artigo

item_category2

A hierarquia da segunda categoria ou a taxonomia adicional do artigo

item_category3

A hierarquia da terceira categoria ou a taxonomia adicional do artigo

item_category4

A hierarquia da quarta categoria ou a taxonomia adicional do artigo

item_category5

A hierarquia da quinta categoria ou a taxonomia adicional do artigo

item_id

O ID do artigo (obrigatório)

item_name

O nome do artigo (obrigatório)

item_variant

A variante, o código único ou a descrição do artigo que fornecem mais detalhes/opções sobre o mesmo

price

O preço do artigo

quantity

A quantidade de artigos objeto de interação

Mapear no UA e no GA4

Alguns nomes foram alterados. Por exemplo, os parâmetros da camada de dados que antes eram "impression" ou "product" foram agora consolidados em items

Existe agora uma matriz items.

Não existe distinção entre comércio eletrónico e Comércio eletrónico otimizado nas propriedades do GA4.

Como utilizar esta tabela:

  • Compare as alterações nos eventos (coluna A vs. coluna C)
  • Reveja os requisitos e as alterações de dimensões/parâmetros (coluna B vs. coluna D). Tenha em atenção a tabela adicional abaixo que realça as alterações nos parâmetros de artigos/produtos
  • Se tiver uma app do Firebase, tenha em atenção as seguintes alterações aos nomes de eventos e efetue as alterações correspondentes para que coincidam com os nomes de eventos do GA4 (coluna C). Os novos relatórios específicos de comércio eletrónico das propriedades do GA4 não são apresentados na interface do Firebase.Além disso, a versão do Firebase de relatórios de eventos detalhados para ecommerce_purchase e purchase, por exemplo, pode não estar atualizada.
    • Alterado
      • ecommerce_purchase (Google Analytics para Firebase)  -> purchase
      • ecommerce_refund (Google Analytics para Firebase) -> refund
      • select_content (Google Analytics para Firebase) -> select_item
      • present_offer (Google Analytics para Firebase) -> select_promotion
    • Novo
      • view_cart
 

Coluna A

Nomes de eventos do UA (referência)

Coluna B

Dimensões do UA (referência)

Coluna C

Nomes de eventos do GA4 (referência)

Coluna D

Parâmetros do GA4 (referência)

purchase

refund

id

coupon

revenue

tax

shipping

currencyCode

**products (consulte os detalhes abaixo)

purchase

refund

transaction_id

coupon

value

tax

shipping

currency

**items (consulte os detalhes abaixo)

checkout_option

option

*add_payment_info

payment_type

checkout_option

revenue

currencyCode

option

*add_shipping_info

price

currency

shipping_tier

checkout

currencyCode

revenue

coupon

step (apenas analytics.js)

option (apenas analytics.js)

**products

*begin_checkout

currency

value

coupon

**items

addToCart

N/A

removeFromCart

N/A

currencyCode

revenue

**products 

*add_to_cart

*add_to_wishlist

*remove_from_cart

*view_cart

currency

value

**items 

pageview

currencyCode

**products

revenue

*View_item (predefinição para visualizações)

currency 

**items

value

pageview

productClick 

list

N/A: não existia

**products 

*View_item_list (vista de Merchandising)

*select_item

item_list_name

item_list_id

**items 

pageview

promotionClick

id

name

creative

position 

**products

*view_promotion

*select_promotion

promotion_id

promotion_name

creative_name

creative_slot

**items

 

* Nome do evento novo ou alterado em relação ao UA

 

Detalhe

Parâmetros do GA4

Dimensões do UA correspondentes

**Items/Products detail

items 

item_id

item_name

item_brand

item_category

item_category2

item_category3

item_category4

item_category5

item_variant

affiliation

discount

coupon

price

quantity

products

id

name

brand

category

N/A: não existia

N/A: não existia

N/A: não existia

N/A: não existia

variant

N/A: não existia

N/A: não existia

coupon

price

quantity

Os nomes de eventos seguintes no UA são considerados eventos de comércio eletrónico nas propriedades do GA4:

  • purchase
  • refund
  • begin_checkout
  • add_to_cart
  • remove_from_cart
  • view_cart
  • add_to_wishlist
  • view_item*
  • view_promotion
  • select_promotion
  • select_item*
  • view_item_list
  • add_payment_info
  • add_shipping_info
  • * Estes eventos suportam apenas um único artigo.

Quando um dos eventos acima é enviado para uma propriedade do GA4 através da API gtag.js, o processamento de eventos de comércio eletrónico do GA4 procura uma chave items no modelo de eventos. Se for encontrada, o parâmetro é analisado como uma matriz de até 200 artigos, em que cada artigo é um objeto com um esquema predefinido. Para cada artigo, o comércio eletrónico do GA4 irá transmitir dados de qualquer campo a partir de uma lista predefinida. Seguem-se os campos predefinidos iniciais de um artigo:

  • item_id
  • item_name
  • item_brand
  • item_category
  • item_category2
  • item_category3
  • item_category4
  • item_category5
  • item_variant
  • price
  • quantity
  • coupon
  • index
  • item_list_name
  • item_list_id
  • discount
  • affiliation
  • location_id
  • promotion_id (ao nível do evento ou do artigo, sendo que o do artigo prevalece)
  • promotion_name (ao nível do evento ou do artigo, sendo que o do artigo prevalece)
  • creative_name (ao nível do evento ou do artigo, sendo que o do artigo prevalece)
  • creative_slot (ao nível do evento ou do artigo, sendo que o do artigo prevalece)

Se não atualizar a instrumentação de eventos do UA, deixará de ver os seguintes eventos nos relatórios de comércio eletrónico do GA4, uma vez que os nomes dos eventos antigos não serão reconhecidos. Crie um evento duplicado com o nome correto para a sua propriedade do GA4.

  • set_checkout_option (é unido a begin_checkout no GA4)
  • checkout_progress (é unido a begin_checkout no GA4)
  • select_content (já não é um evento de comércio eletrónico do GA4, mas continua a ser um evento recomendado, embora não suportado pela matriz de artigos)

As propriedades do GA4 apresentam parâmetros adicionais ao nível do artigo, por exemplo, affiliation, currency e alguns parâmetros item_category. Não irá beneficiar das vantagens destes parâmetros adicionais se não atualizar a etiquetagem. No entanto, estes parâmetros adicionais são opcionais e não deixam de funcionar se não os utilizar.

Atualizar o dataLayer para o Gestor de Etiquetas da Google

Para tirar partido dos novos eventos introduzidos para as propriedades do GA4, tem de adicionar novos eventos/parâmetros no dataLayer, bem como novos acionadores de eventos no Gestor de Etiquetas da Google. 

  • Irá poder determinar manualmente a chave de dataLayer que deve ser mapeada para um parâmetro de evento especificado.
    • Por exemplo, no UA tem de enviar o "id" (do evento de compra) para o objeto dataLayer como "ecommerce.purchase.actionField.id". Com o GA4, pode especificar a chave de dataLayer que deve ser mapeada para o parâmetro de evento "transaction_id". Se reutilizou o objeto dataLayer do UA, pode criar uma variável dataLayer do Gestor de Etiquetas da Google mapeada para a chave "ecommerce.purchase.actionField.id" e atribuí-la ao evento do GA4 como "transaction_id". Em alternativa, pode mapear a variável dataLayer do Gestor de Etiquetas da Google para a chave "ecommerce.purchase.transaction_id" e atribuí-la ao parâmetro de evento "transaction_id". 
  • Tem a opção de continuar a referenciar objetos dataLayer existentes
    • Se utiliza objetos dataLayer existentes a partir da implementação do UA, não pode tirar partido dos novos nomes e parâmetros de eventos do GA4 (por exemplo, de parâmetros ao nível do item adicionais). No entanto, obtém alguns relatórios de comércio eletrónico relativos a eventos existentes se criar manualmente as variáveis necessárias no Gestor de Etiquetas. 
Ao configurar uma etiqueta de eventos do GA4 no Gestor de Etiquetas da Google para enviar um evento de comércio eletrónico através do dataLayer, tem de introduzir manualmente as variáveis dataLayer como parâmetros de eventos, como o nome do parâmetro: "items" e o valor {{ecommerce.purchase.products}}, em que {{ecommerce.purchase.products}} é uma variável dataLayer do Gestor de Etiquetas que tem de ser criada para ler a matriz de produtos a partir do dataLayer. Tem de criar uma variável dataLayer para cada parâmetro ao nível do evento, atribuí-la a um parâmetro de evento e, em seguida, repetir o procedimento para cada evento de comércio eletrónico. Consulte o exemplo abaixo para obter detalhes.
 

Código de envio do dataLayer do UA no Gestor de Etiquetas da Google (referência)

Implementação do GA4 através do Gestor de Etiquetas da Google reutilizando o dataLayer existente implementado para o UA

dataLayer.push({

  'ecommerce': {

    'purchase': {

      'actionField': {

        'id': 'T12345',                         // ID da transação. Obrigatório para as compras e os reembolsos.

        'affiliation': 'Online Store',

        'revenue': '35.43',                     // Valor total da transação (incluindo impostos e envio)

        'tax':'4.90',

        'shipping': '5.99',

        'coupon': 'SUMMER_SALE'

      },

      'products': [{                            // Lista de productFieldObjects.

        'name': 'Triblend Android T-Shirt',     // É obrigatório o nome ou o ID.

        'id': '12345',

        'price': '15.25',

        'brand': 'Google',

        'category': 'Apparel',

        'variant': 'Gray',

        'quantity': 1,

        'coupon': ''                            // Os campos opcionais podem ser omitidos ou definidos como uma string vazia.

       },

       {

        'name': 'Donut Friday Scented T-Shirt',

        'id': '67890',

        'price': '33.75',

        'brand': 'Google',

        'category': 'Apparel',

        'variant': 'Black',

        'quantity': 1

       }]

    }

  }

});

 

Tem de criar variáveis dataLayer para cada parâmetro ao nível do evento, como este abaixo.

 

Tem de repetir este procedimento para cada evento de comércio eletrónico que acompanhar.

Exemplos de implementação

Configurar o funil de compra

Normalmente, existem quatro etapas num funil de compra:

Ver produtos

O utilizador vê um artigo ou uma lista de artigos. Para medir as visualizações/impressões da lista de artigos, envie uma lista de artigos para o dataLayer e recolha um evento juntamente com esses dados. 

  • gtag.js 
    • Evento: view_item_list OU view_item
      • No UA, o evento equivalente é "impressions"
    • Parâmetros: tem de incluir, pelo menos, item_id OU item_name
      • No UA, os parâmetros não tinham o prefixo "item_" e "list_position" é agora "index"
  • Gestor de Etiquetas da Google 
    • Evento: view_item_list OU view_item
      • No UA, o evento equivalente é "impressions
    • Parâmetros: items é uma variável da camada de dados "ecommerce.items". Os parâmetros são "items{ }" e têm de incluir, pelo menos, item_id OU item_name
      • No UA, os parâmetros não tinham o prefixo "item_" e "position" é agora "index"

Adicionar ao carrinho

O utilizador seleciona um artigo e adiciona-o ao carrinho. Outras variações desta ação poderiam ser adicionar o artigo a uma lista de desejos ou enviar um pedido de mais informações.

  • gtag.js
    • Evento: add_to_cart
    • Parâmetros: tem de incluir, pelo menos, item_id OU item_name
  • Gestor de Etiquetas da Google
    • Evento: add_to_cart
      • No UA, o evento dataLayer equivalente é "addToCart", o que exigiu uma ação actionFieldObject adicional ("add"). actionFieldObject já não é necessário no objeto dataLayer para o GA4.
    • Parâmetros: no contexto de "items", tem de incluir, pelo menos, item_id OU item_name
      • No UA, era necessário incluir a variável "products" separada para as informações sobre os produtos

Pagamento

O utilizador acede ao respetivo carrinho com um artigo e inicia o processo de pagamento. As etapas adicionais, como adicionar informações de pagamento ou envio, têm os seus próprios eventos do GA4. Se o fluxo de pagamento incluir estas etapas adicionais, certifique-se de que envia eventos específicos para as mesmas para que possam ser incluídas no funil de compra.  

  • gtag.js
    • Evento: begin_checkout
      • No UA, também existem eventos para "checkout_progress" e "set_checkout_option", que não estão disponíveis nas propriedades do GA4. Em alternativa, consulte eventos específicos para add_to_cart, add_shipping_info e add_payment_info
    • Parâmetros: tem de incluir, pelo menos, item_id OU item_name
  • Gestor de Etiquetas da Google
    • Evento: begin_checkout
      • No UA, o evento dataLayer equivalente é "checkout", o que exigiu uma ação actionFieldObject adicional ("checkout"). Este actionField não é necessário no GA4, mas não deve alterar a implementação existente, já que tal interromperia o comércio eletrónico no UA. 
    • Parâmetros: no contexto de "items", tem de incluir, pelo menos, item_id OU item_name
      • No UA, era necessário incluir a variável "products" separada para as informações sobre os produtos

Comprar

O utilizador efetua uma compra

  • Nas propriedades do GA4, este evento é marcado automaticamente como uma conversão assim que for adicionado ao seu código
  • gtag.js
    • Evento: purchase
      • No UA, também existem eventos para "checkout_progress" e "set_checkout_option", que ainda não estão disponíveis nas propriedades do GA4 
    • Parâmetros: tem de incluir, pelo menos, transaction_id
 

UA – analytics.js

referência

UA – gtag.js

referência

Propriedades do GA4 – gtag.js

referência

ga('ec:addProduct', {

  'id': 'P12345',

  'name': 'Android Warhol T-Shirt',

  “Other optional values”

});

 

ga('ec:setAction', 'purchase', {

  'id': 'T12345', 

  “Other optional values”                        });

gtag('event', 'purchase', {

  "transaction_id": "123",

  “Other optional values”

  "items": [

    {

      "id": "P12345",

      "name": "Android Warhol T-Shirt",

     “Other optional values”

    },

    {

      "id": "P67890",

      "name": "Flame challenge TShirt",

     “Other optional values”

    }

  ]

});

gtag('event', 'purchase', {

  "transaction_id": "123",

  “Other optional values”

  "items": [

    {

      "item_id": "P12345",

      "item_name": "Android Warhol T-Shirt",

     “Other optional values”

    },

    {

      "item_id": "P67890",

      "item_name": "Flame challenge TShirt",

     “Other optional values”

    }

  ]

});

O analytics.js utiliza o Comércio eletrónico otimizado para definir um productFieldObject para especificar detalhes do produto, bem como um actionFieldObject para especificar a ação que está a ocorrer.

 

A migração para gtag.js apresenta diferenças fundamentais. Existe apenas um evento registado automaticamente como comércio eletrónico, tanto a transação como as informações do produto podem ser incluídas, as informações sobre o produto podem ser enviadas numa matriz (em vez de exigir eventos adicionais).

Envie um evento de compra com os artigos na transação.

 

A nomenclatura dos valores obrigatórios é diferente, como "id" que passa a "item_id" e "name" que passa a "item_name".

 

Existem também diferenças ao nível dos valores opcionais que devem ser tidas em conta.

Envie um evento de compra com os artigos na transação.

 
  • Gestor de Etiquetas da Google
    • Evento: purchase
      • No UA, o evento da camada de dados equivalente é "purchase" e requer um campo de ação para a transação completa 
    • Parâmetros: no contexto de "items", tem de incluir, pelo menos, item_id OU item_name
      • No UA, era necessário incluir a variável "products" separada para as informações sobre os produtos
 

UA – Gestor de Etiquetas

referência

Propriedades do GA4 – gtag.js

referência

dataLayer.push({

  'ecommerce': {

    'purchase': {

      'actionField': {

        'id': 'T12345',

        ‘Other optional values’

      },

      'products': [{

        'name': 'Triblend Android T-Shirt',     

        'id': '12345',

        ‘Other optional values’

       },

       {

        'name': 'Donut Friday Scented T-Shirt',

        'id': '67890',

        ‘Other optional values’

       }]

    }

  }

});

dataLayer.push({

  'event': 'purchase',

  'ecommerce': {

    'items': [{

      'item_name': 'Triblend Android T-Shirt',

      'item_id': '12345',

      ‘Other optional values’

    },

    {

      'item_name': 'Donut Friday Scented T-Shirt',

      'item_id': '67890',

      ‘Other optional values’

 

    }]

  }

});

Envie os detalhes da sua transação para o dataLayer através da ação de compra, juntamente com um evento que irá acionar uma etiqueta ativada para Comércio eletrónico otimizado.

Envie dados de transações com uma visualização de página, se disponível, quando a página é carregada. Caso contrário, utilize um evento quando os dados de transações estiverem disponíveis.

Alterações relevantes:

  • O GA4 lista artigos em vez de produtos. Embora possa utilizar a implementação do UA, a sua propriedade do GA4 recolhe apenas informações básicas, como contagens de eventos, e não aceita capacidades adicionais (por exemplo, relatórios de funil).
  • A nomenclatura dos valores obrigatórios é diferente, como "id" que passa a "item_id" e "name" que passa a "item_name".
    • Existem também diferenças ao nível dos valores opcionais que devem ser tidas em conta.

Para medir transações, envie uma lista de artigos para a camada de dados e recolha um evento purchase juntamente com esses dados. Este exemplo pressupõe que os detalhes sobre os produtos apresentados numa página são conhecidos no momento em que a mesma é carregada:

Atividades de comércio eletrónico adicionais

As propriedades do GA4 também podem capturar informações adicionais: 

  • Realçar um incentivo associado a um artigo ou a um evento
    • Cupão: permite-lhe especificar o nome de qualquer cupão associado a um artigo (por exemplo, envio gratuito ou 20% de desconto num artigo). O tipo de dados é uma string e trata-se de um parâmetro de artigo.
    • Desconto (novo): permite-lhe especificar o valor monetário do desconto associado a um artigo (por exemplo, "0,05"). O tipo de dados é flutuante.
  • Promoção: inclui mensagens no site para direcionar um utilizador para uma secção específica do seu site/app.
    • Requer um promotion_id ou promotion_name. Caso contrário, os dados apenas estarão disponíveis nos relatórios da tabela de eventos padrão
  • Reembolsos: permite medir o reembolso de uma transação.
    • O reembolso é um evento específico que pode processar reembolsos completos ou parciais.
    • Requer um transaction_id. Caso contrário, os dados apenas estarão disponíveis nos relatórios da tabela de eventos padrão 
A informação foi útil?
Como podemos melhorá-la?
Pesquisa
Limpar pesquisa
Fechar pesquisa
Google Apps
Menu principal
Pesquisar no Centro de ajuda
true
69256
false