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

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

Panoramica

analytics.js dispone di due meccanismi principali per l'invio di dati a Google Analytics:

  1. tracker

    I tracker specificano la proprietà che stai misurando.

  2. Tipi di hit

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

In gtag.js, le proprietà vengono specificate tramite il comando config o come parametro di 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 relativi 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, 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 i tracker per inviare le 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 valore 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 tracker specificati

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

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

con il seguente comando event di gtag.js:

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

Misurare gli eventi

Come accennato in precedenza, analytics.js utilizza i tracker per inviare eventi a Google Analytics. Un tracker ha l'ID monitoraggio di una proprietà Google Analytics. Al contrario, gtag.js invia eventi a una proprietà Google Analytics identificata dal parametro 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 send gli eventi 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 i 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 di 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 di analytics.js nelle tue 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 di analytics.js nelle tue pagine web che inviano 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 utente

Sostituisci nelle pagine web qualsiasi comando send di analytics.js che monitora i tempi utente:

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'
});

Misura le eccezioni

Sostituisci nelle pagine web qualsiasi comando send di analytics.js 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 sulle azioni di e-commerce avanzato

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 al prodotto e alla promozione

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