Búsqueda
Borrar búsqueda
Cerrar la búsqueda
Google Apps
Menú principal
true

Variables

Las variables son pares de nombre-valor cuyo valor se rellena durante el tiempo de ejecución. Por ejemplo, la variable predefinida que se denomina "url" se ha definido de modo que su valor sea la URL de página actual.

Las variables se usan en activadores y en etiquetas. En los activadores, se usan para definir filtros que especifican cuándo se debe ejecutar uno concreto (por ejemplo, para ejecutar un activador de página vista cuando la variable url es "example.com/index.html"). En las etiquetas, las variables se usan para capturar valores dinámicos (por ejemplo, pasar el valor de la transacción y los productos comprados a una etiqueta de seguimiento de conversiones).

Google Tag Manager proporciona un conjunto de variables predefinidas en cada contenedor web o de aplicación para móviles que cree. Con estas variables, puede crear las etiquetas y los activadores que se necesitan más habitualmente. No obstante, puede crear otras variables que se adapten a sus necesidades específicas.

Contenidos:

Nota: Las variables integradas son una categoría especial de variables que Google Tag Manager ha configurado previamente. Sustituyen a las variables que se generaban al crear un contenedor nuevo. Una vez habilitadas, se utilizan como cualquier otro tipo de variable. Incluyen muchas de las variables básicas y comunes, como la URL de página, la URL de referencia, el ID de clic, los números aleatorios o los eventos.

Más información sobre las variables integradas

Ejemplo para la Web

Supongamos que desea activar una etiqueta de remarketing de la Red de Display de Google cada vez que un visitante gaste más de 100 € en su sitio web. Para implementarla, se crea un activador de página vista y se añade la siguiente condición de activador:

Importe de transacción mayor que 100 €

Como la variable Importe de transacción no existe, debe definirla. Debe indicarle a Google Tag Manager que busque el valor de Importe de transacción en la variable JavaScript transactionAmt, suponiendo que esta variable se encuentre en la página de confirmación de compra de su sitio web.

En el momento de ejecución, Google Tag Manager obtendría el valor de Importe de transacción de la variable especificada de JavaScript. A continuación, el activador evaluaría si el valor es mayor que 100 €.

Además de utilizar Importe de transacción en un activador, también podría usarlo para pasar el importe de transacción a cualquier etiqueta de seguimiento de conversiones, como una etiqueta Floodlight de DoubleClick, para que se puedan mostrar los ingresos de la transacción en los informes de DoubleClick.

Tipos de variable para la Web

Cookie de origen: el valor se asigna a la cookie de origen cuyo nombre coincida con el dominio en el que se encuentra el usuario. Si una cookie con el mismo nombre se implementa en varias rutas o varios niveles de dominio dentro del mismo dominio, se utilizará el primer valor. Sucede lo mismo que si hubiera llamado a document.cookie desde una página y hubiera elegido el primer resultado.

Número de versión de contenedor: cuando el contenedor está en modo de vista previa, la variable de versión de contenedor devuelve el número de versión de vista previa del contenedor. De lo contrario, esta variable devuelve el número de versión activa del contenedor.

JavaScript personalizado: el valor se configura como el resultado de una función JavaScript. El código JavaScript debe adoptar el formato de una función anónima que devuelva un valor. Por ejemplo, podría escribir una variable JavaScript personalizada que se denomine "lowerUrl" que actúe en la variable {{url}} predefinida:

function () {
  return {{url}}.toLowerCase();
}

Capa de datos: se le asigna el valor "value" cuando se ejecuta este código en su sitio web: dataLayer.push({'Data Layer Name': 'value'}).

En Google Tag Manager puede especificar cómo interpretar los puntos (".") en el nombre de la variable de la capa de datos:

  • Versión 1: se permiten puntos en los nombres de clave. Por ejemplo, en el caso de dataLayer.push('a.b.c': 'value'), el nombre de la clave se interpreta como "a.b.c" (es decir, {'a.b.c': 'value'}).
  • Versión 2: los puntos se interpretan como valores anidados. Por ejemplo, dataLayer.push({'a.b.c': 'value'}) se interpreta como tres niveles anidados: {a: {b: {c: 'value'}}}. De este modo, se pueden leer valores anidados. Podría establecer el nombre de la variable en "a.b" y devolvería el objeto {c: 'value'} (según las reglas de JavaScript estándar). La inserción anidada también permite cambiar directamente los valores anidados. Supongamos que ejecuta el siguiente código en su página:
    dataLayer.push({'a.b.c': 'value'});
    dataLayer.push({'a.b.d': 4});

    El resultado es una capa de datos similar a {a: {b: {c: 'value', d: 4}}}.

Modo de depuración: el valor se configura como "true" si el contenedor se visualiza en modo de depuración.

Elemento DOM: el valor se configura como el texto del elemento DOM (modelo de objeto de documento) o el valor del atributo de elemento DOM especificado. Si el valor que busca no se ha configurado en la capa de datos (consulte el tipo de variable Capa de datos anterior), es posible que el valor se pueda recuperar del DOM. Utilice este tipo de variable si puede encontrar el valor que busca en el DOM introduciendo el valor del atributo de ID del elemento.

Si configura el nombre de atributo opcional, el valor de la variable devolverá el valor especificado en dicho atributo (por ejemplo, datos-comida="magdalenas"); de lo contrario, el valor de la variable será el texto del elemento DOM.

Visibilidad del elemento: el valor se establece en función del estado visible del elemento DOM especificado. A diferencia del activador Visibilidad del elemento, una variable de visibilidad del elemento solo puede informar de la visibilidad de un único elemento. Elija si desea seleccionar un elemento en función de su ID o de un selector de CSS. Si varios elementos coinciden con el patrón del selector de CSS especificado, se utilizará el primer elemento coincidente.

Puede elegir el tipo de salida de esta variable:

  • Verdadero/Falso: un valor booleano que indica si el elemento seleccionado se mostrará cuando se haga referencia a la variable. 
  • Porcentaje: un valor numérico (0-100) que indica el porcentaje del elemento seleccionado que se muestra en la pantalla cuando se hace referencia a la variable.

Si selecciona "Verdadero/Falso" como tipo de salida, también puede especificar un porcentaje mínimo visible para indicar qué porcentaje del elemento seleccionado debe estar visible en la pantalla para que la variable sea verdadera.

URL de referencia HTTP: el valor se configura como la URL de referencia HTTP, la página anterior que ha visitado el usuario. Por ejemplo, si un usuario navega a una de sus páginas de producto desde la página principal, la URL de referencia será la página principal. Google Tag Manager crea automáticamente una instancia de este tipo de variable, pero se pueden crear instancias adicionales si se quieren exponer diferentes partes de la URL de referencia.

Variable de JavaScript: al valor se le asigna el de la variable global que especifique. Si el valor que busca no está configurado en la capa de datos (consulte el tipo de variable Capa de datos) y no es visible en el DOM (consulte los tipos de variable Elemento DOM), es posible que el valor se pueda recuperar de una variable de JavaScript. Utilice este tipo de variable si puede encontrar el valor que busca en el código fuente de la página con el formato de una variable de JavaScript.

Tabla de consulta: el valor se configura según las instrucciones de la tabla de consulta. Esta tabla contiene dos columnas (la tabla está vacía para ilustrar cómo se usan los datos más adelante):

Cuando [seleccionar variable] es igual a Establecer [esta variable] en
   

El tipo Tabla de consulta le permite crear una variable cuyo valor varía según el valor de otra variable. Esto es útil si su sitio web está configurado de tal manera que el valor adecuado (por ejemplo, un ID de seguimiento de conversiones) se pueda asignar a la URL o a otro aspecto de la página. En este ejemplo, se va a crear una variable denominada ID de conversión. Si la URL es "/agradecimiento/compra1.html", el valor se establece como "12345"; si la URL es "agradecimiento/compra2.html", como "34567". No hay límite para el número de filas en la tabla de consulta. En los campos se distingue entre mayúsculas y minúsculas.

Cuando {{url}} es igual a Establecer {{ID de conversión}} en
http://example.com/agradecimiento/compra1.html 12345
http://example.com/agradecimiento/compra2.html 34567
http://example.com/agradecimiento/compra3.html 56789

Número aleatorio: el valor que se le asigna es un número aleatorio comprendido entre 0 y 2147483647.

Tabla RegEx: esta variable funciona de forma parecida a las tablas de consulta y, además, permite ejecutar patrones de expresión regular que coincidan con los elementos que desee.

Para ver cómo funciona, tomemos como ejemplo los ajustes de la siguiente tabla RegEx:

Patrón Salida
.*/página[1-3]\.html.* foo
.*/página[4-6]\.html.* bar
.*/página[7-9]\.html.* baz

El valor de salida de la variable será:

http://example.com/página1.html foo
http://www.example.com/página1.html foo
http://example.com/página2.html#detail foo
http://example.com/página5.html bar
http://example.com/página5.html?status=new bar
http://example.com/página6.html bar
https://example.com/página9.html baz

Las consultas de la tabla RegEx se ejecutan en toda la lista, de arriba hacia abajo. Cuando en una consulta se encuentra una coincidencia, se devuelve el valor de salida correspondiente.

Seleccione Establecer valor predeterminado para definir qué valor de salida se debe devolver si no se encuentran coincidencias.

De forma predeterminada, los patrones deben coincidir con toda la cadena de entrada y no distinguen entre mayúsculas y minúsculas. Este comportamiento se puede modificar en Configuración avanzada:

  • No distinguir entre mayúsculas y minúsculas: los patrones no diferenciarán mayúsculas de minúsculas a la hora de buscar coincidencias, sin tener que definirlo explícitamente en la expresión regular.

  • Solo coincidencias totales: si se habilita esta opción, los patrones buscarán coincidencias con toda la entrada. Esto equivale a tener anclajes de inicio (^) y fin ($) de forma implícita alrededor del patrón. Si la inhabilita, los patrones buscarán coincidencias con cualquier parte de la entrada. Inhabilitar esta opción puede provocar un comportamiento inesperado con "Habilitar grupos de captura y sustituir funciones".

  • Habilitar grupos de captura y sustituir funciones: si habilita esta opción, podrá utilizar la sintaxis de sustitución con el símbolo del dólar para incluir partes de la entrada (por ejemplo, grupos de captura en el patrón coincidente) en la salida. En la expresión regular /(news)/page(2)\.html, por ejemplo, podría utilizar $1 para hacer referencia al primer grupo de captura ("news") y $2 para hacer referencia al segundo grupo de captura ("2").

    Utilizar "Habilitar grupos de captura y sustituir funciones" con la opción "Solo coincidencias totales" inhabilitada puede provocar un comportamiento inesperado, como devolver todo el valor de entrada con la parte coincidente reemplazada.

URL: con este tipo de variable se pueden analizar y exponer los componentes de URL. Google Tag Manager crea automáticamente tres instancias de este tipo de variable ("full url", "hostname" y "path"). Puede crear instancias adicionales para exponer diferentes partes de la URL. Los componentes de URL que puede elegir son: protocolo, nombre de host, puerto, ruta, consulta y fragmento. El valor de entrada configurado para las variables de este tipo es la URL de la página actual en la que se encuentra el usuario (se recupera de document.location). Al modificar la opción Origen de la URL, puede indicar a Google Tag Manager que utilice otra variable como la fuente del valor de la URL.

Tipos de variable para aplicaciones móviles

Seguimiento del anunciante habilitado: en Android, esta variable devuelve el valor "true" si el seguimiento de anuncios está habilitado, y "false" si el usuario ha inhabilitado los anuncios basados en intereses. Para obtener más información, visite el Centro para Programadores de Android. Las versiones del SDK anteriores a la 4 siempre devuelven el valor false. Para iOS 6 y versiones superiores, el valor se establece en la propiedad advertisingTrackingEnabled. De lo contrario, el valor se establece en true. En los contenedores de la aplicación móvil se proporciona una variable integrada de este tipo, por lo que no es necesario definir una nueva.

ID de la aplicación: al valor se le asigna el nombre del paquete (Android) o el ID del conjunto (iOS). En los contenedores de la aplicación móvil se proporciona una variable integrada de este tipo, por lo que no es necesario definir una nueva.

Nombre de la aplicación: al valor se le asigna el nombre de la aplicación que se encuentra en ejecución. En los contenedores de la aplicación móvil se proporciona una variable integrada de este tipo, por lo que no es necesario definir una nueva.

Código de versión de aplicación: al valor se le asigna la versión de la aplicación que se encuentra en ejecución. En los contenedores de la aplicación móvil se proporciona una variable integrada de este tipo, por lo que no es necesario definir una nueva.

Constante: al valor se le asigna la cadena que proporcione.

ID de contenedor: el valor es el ID público del contenedor (p. ej., GTM-ABC42). En los contenedores de la aplicación móvil se proporciona una variable integrada de este tipo, por lo que no es necesario definir una nueva.

Número de versión del contenedor: cuando el contenedor está en el modo de vista previa, el valor de esta variable es el número de versión de la vista previa del contenedor. En caso contrario, corresponde al número de versión publicada del contenedor. En los contenedores de la aplicación móvil se proporciona una variable integrada de este tipo, por lo que no es necesario definir una nueva.

ID del dispositivo: en Android, se asigna el ID del dispositivo al valor, mientras que en los contenedores antiguos de iOS, se le asigna " (la cadena vacía). Esta variable no está disponible en los contenedores de Firebase de iOS. En los contenedores de la aplicación móvil se proporciona una variable integrada de este tipo, por lo que no es necesario definir una nueva.

Nombre del dispositivo: al valor se le asigna el nombre del dispositivo de la aplicación que se encuentra en ejecución (p. ej., "Samsung Android", "SDK de Android para x86"). En los contenedores de la aplicación móvil se proporciona una variable integrada de este tipo, por lo que no es necesario definir una nueva.

Nombre del evento: al valor se le asigna el parámetro "eventNameXYZ" cuando ejecuta el siguiente código en su aplicación.

Android:
FirebaseAnalytics.getInstance(mContext).logEvent("eventNameXYZ", null);

iOS:
[FIRAnalytics logEventWithName:@"eventNameXYZ" parameters:parameters];

En los contenedores de la aplicación móvil se proporciona una variable integrada de este tipo, por lo que no es necesario definir una nueva.

Parámetro de evento: al valor se le asigna el de un parámetro de evento de Firebase Analytics registrado de la clave en cuestión.

Propiedad de usuario de Firebase: al valor se le asigna el de la propiedad de usuario de Firebase Analytics de la clave en cuestión.

Llamada de la función: al valor se le asigna el valor devuelto de una llamada a una función registrada previamente. Para obtener más información, consulte la documentación del SDK (Android o iOS).

ID para publicidad: en Android, el valor que se le asigna es el ID de publicidad. Consulte más información en el Centro para Desarrolladores de Android. Las versiones del SDK anteriores a la 4 siempre devuelven '' (la cadena vacía). En iOS 6 y versiones superiores, se asigna el identificador de publicidad (IDFA) al valor. De lo contrario, se le asigna '' (la cadena vacía).

Idioma: al valor se le asigna el código de dos letras asociado al idioma configurado por el usuario en el dispositivo. En los contenedores de la aplicación móvil se proporciona una variable predefinida de este tipo, por lo que no es necesario definir una nueva.

Tabla de consulta: el valor se configura según las instrucciones de la tabla de consulta. Esta tabla contiene dos columnas (la tabla está vacía para ilustrar cómo se usan los datos más adelante):

Cuando [seleccionar variable] es igual a Establecer [esta variable] en
   

El tipo Tabla de consulta le permite crear una variable cuyo valor varía según el valor de otra variable. Esto es útil si su aplicación está configurada de tal manera que el valor adecuado (por ejemplo, un ID de seguimiento de conversiones) se pueda asignar al código de versión o a cualquier otro aspecto de la aplicación. En este ejemplo, se va a crear una variable denominada ID de conversión. Si el código de versión de la aplicación es 1.0, se asigna el parámetro "12345" al valor, mientras que si es 1.1, se le asigna "34567". No hay límite para el número de filas en la tabla de consulta. En los campos se distingue entre mayúsculas y minúsculas.

Cuando {{App Version Code}} sea igual a Establecer {{ID de conversión}} en
1.0 12345
1.1 34567
1.2 56789

Versión del sistema operativo: al valor se le asigna la versión del sistema operativo en el que está instalada la aplicación. En los contenedores de la aplicación móvil se proporciona una variable integrada de este tipo, por lo que no es necesario definir una nueva.

Plataforma: al valor se le asigna la plataforma de la aplicación que se encuentra en ejecución (p. ej., "Android"). En los contenedores de la aplicación móvil se proporciona una variable integrada de este tipo, por lo que no es necesario definir una nueva.

Número aleatorio: al valor se le asigna un número aleatorio comprendido entre 0 y 2147483647. En los contenedores de la aplicación móvil se proporciona una variable integrada de este tipo, por lo que no es necesario definir una nueva.

Resolución de pantalla: al valor se le asigna la resolución de pantalla del dispositivo de la aplicación que se encuentra en ejecución. El formato es "<ancho>x<alto>" (p. ej., "1024x768"). En los contenedores de la aplicación móvil se proporciona una variable integrada de este tipo, por lo que no es necesario definir una nueva.

Versión del SDK: al valor se le asigna la versión del SDK del sistema operativo en el que está instalada la aplicación. En los contenedores de la aplicación móvil se proporciona una variable integrada de este tipo, por lo que no es necesario definir una nueva.

Recopilaciones de valores antiguas

Recopilación de valores (solo en contenedores antiguos): esta variable contiene un conjunto de pares de clave-valor en formato JSON. Se utiliza para establecer los valores de configuración de la aplicación. Por ejemplo, en el caso de un juego de carreras de coches, podría definir una variable "Configuración de aplicación" del tipo Colección de valores con el siguiente código:

{
  "max-fuel": 200,
  "starting-fuel": 100,
  "fuel-burn-rate": 20
}

La aplicación para móviles puede recuperar un valor de la variable proporcionando la clave. Por ejemplo:

public class MainActivity {

  // Add your public container ID.
  private static final String CONTAINER_ID = "XXX-YYY";
  
  // Container configuration value keys, used later
  // for retrieving values.
  private static final String MAX_FUEL_KEY = "max-fuel";
  private static final String INIT_FUEL_KEY = "init-fuel";
  private static final String FUEL_BURN_KEY = "fuel-burn-rate";

  // Rest of your onCreate code.
  }
}

/*
* Method to update game configuration values using a
* Google Tag Manager container.
*/
public void updateConfigurationFromContainer(Container container) {

  // Get reference to the container.
  Container container = mFutureContainer.get();

  // Update game settings using Container 
  // configuration value keys.
  maxFuel = mContainer.getDoubleValue(MAX_FUEL_KEY);
  startingFuel = mContainer.getDoubleValue(INIT_FUEL_KEY);
  burnRate = mContainer.getDoubleValue(FUEL_BURN_KEY);
}

Una variable Colección de valores tiene activadores asociados. En el caso de los valores de configuración que se aplican a todas las instancias y versiones de la aplicación, establezca el activador de habilitación en el valor "Siempre" predefinido. Consulte la documentación para desarrolladores (Android o iOS) para obtener información sobre cómo usar la variable Recopilación de valores. 

¿Te ha sido útil este artículo?
¿Cómo podemos mejorar esta página?