Eseguire la migrazione da analytics.js a gtag.js (Universal Analytics)

Questa guida illustra il processo di migrazione di un'implementazione esistente di analytics.js Universal Analytics per utilizzare gtag.js.

Panoramica

analytics.js prevede due meccanismi principali per inviare dati a Google Analytics:

  1. tracker

    I tracker specificano quale proprietà stai misurando.

  2. tipi di hit

    I tipi di hit specificano il tipo di interazione che stai misurando.

Le proprietà in gtag.js sono specificate tramite il comando config o come parametro in un comando.

A differenza di analytics.js, gtag.js non utilizza i tracker per inviare dati a Google Analytics. Invia i dati alle proprietà Google Analytics identificate dai loro ID impostati dal comando config. I nomi degli eventi forniti a gtag.js specificano i tipi di dati inviati a Google Analytics.

Per eseguire la migrazione da analytics.js a gtag.js, procedi nel seguente modo per ogni pagina web del tuo sito:

Sostituisci lo snippet analytics.js con lo snippet gtag.js

Sostituisci lo snippet analytics.js nella tua pagina web:

<!-- Google Analytics -->
<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'TAG_ID', 'auto');
  ga('send', 'pageview');
</script>
<!-- End Google Analytics -->

con il seguente snippet gtag.js:

<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=TAG_ID"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'TAG_ID');
</script>

Misurare le visualizzazioni di pagina

analytics.js utilizza tracker per inviare visualizzazioni di pagina a Google Analytics. Un tracker ha l'ID misurazione di una proprietà Google Analytics. gtag.js invia le visualizzazioni di pagina a una proprietà Google Analytics identificata dal comando TAG_ID specificato in un comando config.

Misurare le visualizzazioni di pagina con il tracker predefinito

Rimuovi il seguente codice analytics.js che utilizza il tracker predefinito per send le visualizzazioni di pagina in Google Analytics:

// Creates the default tracker.
ga('create', 'TAG_ID', 'auto');

// Uses the default tracker to send a pageview to the
// Google Analytics property with tag ID of 'TAG_ID'.
ga('send', 'pageview');

Il seguente codice nello snippet gtag.js invia automaticamente una visualizzazione di pagina alla proprietà Google Analytics con ID tag TAG_ID:

gtag('config', 'TAG_ID');

Misurare le visualizzazioni di pagina con i tracker specificati

Sostituisci il seguente codice analytics.js che utilizza il tracker specificato per inviare visualizzazioni di pagina a Google Analytics:

ga('create', 'TAG_ID', 'auto', 'trackerName');
ga('trackerName.send', 'pageview');

con il seguente comando event gtag.js:

gtag('event', 'page_view', { 'send_to': 'TAG_ID' });

Misurare gli eventi

Come accennato sopra, analytics.js utilizza i tracker per inviare eventi a Google Analytics. Un tracker ha l'ID monitoraggio di una proprietà Google Analytics. Per contrasto, gtag.js invia gli eventi a una proprietà Google Analytics identificata dal TAG_ID specificato in un comando config.

Misurare gli eventi con il tracker predefinito

Sostituisci il seguente codice analytics.js che utilizza il tracker predefinito per gli eventi send in Google Analytics:

ga('create', 'TAG_ID', 'auto');
ga('send', 'event', [eventCategory], [eventAction], [eventLabel], [eventValue], [fieldsObject]);

con il seguente comando gtag.js event:

gtag('event', eventName, eventParameters);

dove eventName è il nome dell'evento che vuoi registrare.

Esempio:

analytics.js:

// Creates the default tracker.
ga('create', 'TAG_ID', 'auto');

// Uses the default tracker to send the event to the
// Google Analytics property with a tag ID of `TAG_ID`.
ga('send', 'event', 'Videos', 'play', 'Fall Campaign');

gtag.js:

// Sends the event to the Google Analytics property with a
// tag ID of `TAG_ID` set by the config command in
// the gtag.js snippet.
gtag('event', 'play', {
  'event_category': 'Videos',
  'event_label': 'Fall Campaign'
});

Misurare gli eventi con tracker specificati

Sostituisci il seguente codice analytics.js che utilizza il tracker specificato per inviare eventi a Google Analytics:

ga('create', 'TAG_ID', 'auto', 'trackerName');
ga('trackerName.send', 'event', [eventCategory], [eventAction], [eventLabel], [eventValue], [fieldsObject]);

con il seguente comando event gtag.js:

gtag('event', eventName, {
  'send_to': 'TAG_ID',
  'parameter1': 'value1',
  'parameter2': 'value2',
  // ...
});

Esempio:

analytics.js:

// Creates a tracker named <b>clientTracker</b>.
ga('create', 'TAG_ID', 'auto', 'clientTracker');

// Uses tracker clientTracker to send the event to the
// Google Analytics property with a tag ID of TAG_ID.
ga('clientTracker.send', 'event', 'Videos', 'play', 'Fall Campaign');

gtag.js:

// Send the event to the Google Analytics property
// with a tag ID of 'TAG_ID'.
gtag('event', 'play', {
  'send_to': 'TAG_ID',
  'event_category': 'Videos',
  'event_label': 'Fall Campaign'
});

Inviare dimensioni e metriche personalizzate

Sostituisci qualsiasi comando send analytics.js nelle pagine web che invia dimensioni personalizzate a Google Analytics:

ga('send', 'hitType', { 'dimension&lt;Index&gt;':  'dimension_value'});

con il seguente codice gtag.js:

gtag('config', 'TAG_ID', {
  'custom_map': {'dimension<Index>': 'dimension_name'}
});
gtag('event', 'any_event_name', {'dimension_name': 'dimension_value'});

Sostituisci TAG_ID con il tuo ID Analytics.

Sostituisci qualsiasi comando send analytics.js nelle pagine web che invia metriche personalizzate a Google Analytics:

ga('send', 'hitType', { 'metric<Index>':  'metric_value'});

con il seguente codice gtag.js:

gtag('config', 'TAG_ID', {
  'custom_map': {'metric<Index>': 'metric_name'}
});
gtag('event', 'any_event_name', {'metric_name': 'metric_value'});

Sostituisci TAG_ID con l'ID tag.

Misurare i tempi degli utenti

Sostituisci il comando send analytics.js nelle pagine web che monitora i tempi degli utenti:

ga('send', 'timing', 'timingCategory', 'timingVar', timingValue, 'timingLabel');

con il seguente comando gtag.js event:

gtag('event', 'timing_complete', {
  'name': 'timingVar',
  'value': timingValue,
  'event_category': 'timingCategory',
  'event_label': 'timingLabel'
});

Misurare le eccezioni

Sostituisci il comando send analytics.js nelle pagine web che monitora le eccezioni:

ga('send', 'exception', {
  'exDescription': 'error_message',
  'exFatal': false  // set to true if the exception is fatal
});

con il seguente comando gtag.js event:

gtag('event', 'exception', {
  'description': 'error_message',
  'fatal': false  // set to true if the exception is fatal
});

Mappare i campi analytics.js ai parametri gtag.js

Le seguenti tabelle mappano i campi analytics.js ai parametri gtag.js corrispondenti.

Eventi

Campo analytics.js Parametro gtag.js
eventAction event_action
eventCategory event_category
eventLabel event_label
eventValue value

Dimensioni e metriche personalizzate

Campo analytics.js Parametro gtag.js
dimension<Index> dimension<Index>
metric<Index> metric<Index>

dove <Index> è un numero intero non negativo che rappresenta l'indice della dimensione o della metrica personalizzata.

Tempi utente

Campo analytics.js Parametro gtag.js
timingCategory event_category
timingLabel event_label
timingValue value
timingVar name

Misurazione delle eccezioni

Campo analytics.js Parametro gtag.js
exDescription description
exFatal fatal

Dati avanzati sulle azioni di e-commerce

Campo analytics.js Parametro gtag.js
id transaction_id
affiliation affiliation
revenue value
tax tax
shipping shipping
coupon coupon
list list_name
step checkout_step
option checkout_option

Dati della promozione

Campo analytics.js Parametro gtag.js
creative creative_name
position (impressione, prodotto) list_position
position (promozione) creative_slot

Azioni relative a prodotti e promozioni

Campo analytics.js Evento gtag.js
add add_to_cart
checkout (primo passaggio) begin_checkout
checkout (qualsiasi passaggio successivo) checkout_progress
checkout_option set_checkout_option
click select_content (senza promozioni)
detail view_item
promo_click select_content (con promozioni)
purchase purchase
refund refund
remove remove_from_cart

Client-ID e User-ID

Campo analytics.js Parametro gtag.js
clientId client_id
userId user_id