La API de la etiqueta de Google (gtag.js) consta de una sola función, gtag(), con la siguiente sintaxis:
gtag(<command>, <command parameters>);
<command>es uno de los siguientes comandos:<command parameters>son los parámetros que puedes pasar agtag(). Los parámetros del comando varían según el comando; consulta la referencia de comandos.
Puedes invocar comandos de gtag() en cualquier parte de tu página, siempre y cuando aparezcan debajo del fragmento de la etiqueta de Google. Para obtener información sobre cómo agregar el fragmento a una página, consulta la guía de instalación.
Alcance del parámetro
Puedes definir el alcance de los valores de los parámetros para eventos individuales, todos los eventos enviados a un
<TARGET_ID> específico o, de forma global, para todos los eventos. Esto se logra con
los comandos event, config y set.
Los valores de los parámetros establecidos en un permiso no modifican los valores establecidos para el mismo
parámetro en un permiso diferente. En el siguiente ejemplo, el comando config
no modifica el valor global de campaign_id asignado antes con el
comando set. Después de que se ejecutan ambos comandos, el valor global de
campaign_id sigue siendo '1234'.
// Set global campaign ID
gtag('set', { 'campaign_id': '1234' });
// Set campaign ID for <TARGET_ID>
gtag('config','<TARGET_ID>', { 'campaign_id': 'ABCD' });
Prioridad de los parámetros
Si se asignan valores diferentes al mismo parámetro en distintos permisos, solo
se usa un valor cuando se procesan los eventos. Los valores de los parámetros con alcance de
event tendrán prioridad sobre los parámetros con alcance de config, y los parámetros de config
tendrán prioridad sobre los parámetros con alcance global que usen set.
// Set campaign information at the global scope
gtag('set', { 'campaign_name': 'Black Friday Sale' });
// Set currency for <TARGET_ID1> to 'USD'
gtag('config','<TARGET_ID1>', { 'currency': 'USD' });
// Process a conversion event with currency: 'GBP'
gtag('event','conversion', { 'currency': 'GBP', 'send_to': '<TARGET_ID1>' });
// Process a conversion event with currency: 'EUR'
gtag('event','conversion');
// Process a conversion event with currency: 'USD'
gtag('event','conversion', { 'send_to': '<TARGET_ID1>' });
config
Te permite agregar información de configuración adicional a los destinos. Por lo general, esta es una configuración específica de un producto, pero solo debes establecerla una vez si usas Google Ads y Google Analytics.
gtag('config', '<TARGET_ID>', {<additional_config_info>});
Puntos clave sobre <TARGET_ID>:
El
<TARGET_ID>en el comandogtag('config', <TARGET_ID>, ...)es un ID de etiqueta que identifica dóndegtag.jsdebe enviar los datos de eventos. Puede ser un destino, como una propiedad de Google Analytics, una cuenta de Google Ads, un parámetro de configuración de Floodlight o una etiqueta de Google que tenga varios destinos.Un ID de etiqueta, como
GT-XXXXXX,G-XXXXXXoAW-YYYYYY, es un identificador de tu etiqueta de Google. Agrega este ID al código de tu sitio web para cargar la etiqueta de Google.Se puede configurar una sola etiqueta de Google (identificada por su ID de etiqueta) para enviar datos a varios destinos. Aunque algunos IDs de etiqueta pueden parecer idénticos a los IDs de destino, como
G-XXXXXXpara una propiedad de Google Analytics oAW-YYYYYYpara una cuenta de Google Ads, el<TARGET_ID>en el comandoconfighace referencia a la instancia particular de la etiqueta de Google cargada en la página.El comando
gtag('config', ...)configura el comportamiento de la etiqueta de Google asociada con ese<TARGET_ID>específico. Si bien el ID de etiqueta incluido en la secuencia de comandossrcsuele cargar la etiqueta de Google, puedes usar cualquier ID de etiqueta válido asociado con tu cuenta en el comandogtag('config').Una sola etiqueta de Google puede tener varios IDs de etiqueta asociados, lo que suele deberse a la combinación de etiquetas. Cualquiera de estos IDs asociados se puede usar en el parámetro
srcde la secuencia de comandos para cargar la etiqueta de Google.Si envías datos a varios destinos o usas varias etiquetas, solo necesitas incluir un único fragmento de la etiqueta de Google con un ID de etiqueta en la secuencia de comandos
src. Luego, incluye un comandogtag('config')para cada ID de etiqueta o destino adicional.
<additional_config_info> es uno o más pares parámetro-valor.
En este ejemplo, se configura una etiqueta para enviar datos a una cuenta de Google Ads:
gtag('config', 'TAG_ID');
donde "TAG_ID" es el ID de etiqueta de la etiqueta de Google.
Para demostrar cómo enviar información de configuración adicional, aquí tienes un ejemplo en el que se configura una etiqueta para enviar datos a una cuenta de Analytics con un parámetro send_page_view que pasa un valor de false y un parámetro groups que pasa un valor de 'agency'.
gtag('config', 'TAG_ID', {
'send_page_view': false,
'groups': 'agency'
});
get
Te permite obtener varios valores de gtag.js, incluidos los valores establecidos con el comando set.
gtag('get', '<target>', '<field_name>', callback)
| Argumento | Tipo | Ejemplo | Descripción |
|---|---|---|---|
| <target> | string |
G-XXXXXXXXXX |
Es el destino del que se recuperarán los valores. |
| <field_name> | FieldName | client_id | Es el nombre del campo que se obtendrá. |
| callback | Function |
(field) => console.log(field) |
Es una función que se invocará con el campo solicitado o
|
FieldName
El nombre del campo puede ser el nombre de un campo personalizado que hayas establecido con el comando gtag('set') o uno de los siguientes valores:
| Nombre del campo | Objetivos admitidos |
|---|---|
| client_id |
|
| session_id |
|
| session_number |
|
| gclid |
|
Ejemplos
Obtén un valor en una promesa
const gclidPromise = new Promise(resolve => {
gtag('get', 'DC-XXXXXXXX', 'gclid', resolve)
});
gclidPromise.then((gclid) => {
// Do something with gclid...
})
Envía un evento al Protocolo de medición
gtag('get', 'G-XXXXXXXXXX', 'client_id', (clientID) => {
sendOfflineEvent(clientID, "tutorial_begin")
});
function sendOfflineEvent(clientID, eventName, eventData) {
// Send necessary data to your server...
}
Obtén un valor que hayas establecido
gtag('set', {campaign_name: 'Spring_Sale'});
gtag('get', 'G-XXXXXXXXXX', 'campaign_name', (campaign_name) => {
// Do something with currency value you set earlier.
})
set
El comando set te permite definir parámetros que se asociarán con cada evento posterior de la página.
gtag('set', {<parameter-value-pair>, <parameter-value-pair>});
Por ejemplo, puedes compartir parámetros de campaña para que varias etiquetas puedan acceder a ellos en la misma página.
En el siguiente ejemplo, se muestra cómo establecer un nombre y un ID de campaña para un evento de compras del Black Friday. Como usaste set, todas las demás etiquetas, por ejemplo, las etiquetas de evento de GA4 o las etiquetas de remarketing de Google Ads, pueden acceder a estos datos.
gtag('set', 'campaign', {
'id': 'abc',
'source': 'google',
'name': 'black_friday_promotion',
'term': 'running+shoes',
});
event
Usa el comando event para enviar datos de eventos.
gtag('event', '<event_name>', {<event_params>});
<event_name> puede ser una de las siguientes opciones:
- Un evento recomendado Cada evento recomendado puede tomar parámetros recomendados.
- Un evento personalizado Un evento personalizado es un nombre de evento arbitrario que creas con parámetros arbitrarios. Para obtener más información, consulta Cómo configurar eventos.
<event_params> es uno o más pares parámetro-valor. Cada par está separado por una
coma.
El siguiente comando event activa el evento recomendado screen_view con dos parámetros: app_name y screen_name.
gtag('event', 'screen_view', {
'app_name': 'myAppName',
'screen_name': 'Home'
});
consent
Usa el comando consent para configurar el consentimiento.
gtag('consent', {<consent_arg>}, {<consent_params>});
Consulta consentimiento en el Centro de ayuda para obtener más información sobre el comportamiento que configuran estos parámetros.
<consent_arg> es uno de 'default' o 'update'. 'default' se usa para establecer
los parámetros de consentimiento predeterminados que se deben usar, y 'update' se usa para
actualizar estos parámetros una vez que un usuario indica su consentimiento.
Se admiten los siguientes <consent_params>:
| Nombre del campo | Valores permitidos | Descripción |
|---|---|---|
ad_storage |
'granted' | 'denied' |
Habilita el almacenamiento, como las cookies (Web) o los identificadores de dispositivos (aplicaciones), relacionado con la publicidad. |
ad_user_data |
'granted' | 'denied' |
Establece el consentimiento para enviar los datos del usuario a Google con fines publicitarios. |
ad_personalization |
'granted' | 'denied' |
Establece el consentimiento para la publicidad personalizada. |
analytics_storage |
'granted' | 'denied' |
Habilita el almacenamiento, como cookies (Web) o identificadores de aplicaciones (aplicaciones), relacionado con las estadísticas, p.ej., la duración de las visitas. |
wait_for_update |
cualquier número entero positivo | Establece un tiempo en milisegundos para esperar una llamada de actualización de consentimiento. |