Coincidencia de datos proporcionada por el usuario

Descripción general

La UPDM (coincidencia de datos proporcionada por el usuario) se une a los datos de origen que recopilaste sobre un usuario, como la información de tus sitios web, apps o tiendas físicas, con el mismo usuario que accedió a su cuenta en los datos de anuncios de Google, excepto Google Marketing Platform. Para poder usar la coincidencia de datos proporcionada por el usuario, el evento del anuncio debe estar vinculado a un usuario que haya accedido a su cuenta en los datos de anuncios de Google.

La coincidencia de datos proporcionada por el usuario ofrece algunas ventajas únicas en comparación con otras formas de Segmentación por clientes. Coincidencia de datos proporcionados por el usuario:

  • Es más resistente a los cambios de la industria que a los datos de terceros.
  • No se verá afectada por la baja de cookies de terceros, ya que la coincidencia de datos proporcionada por el usuario solo está disponible en el inventario administrado y propiedad de Google para los usuarios que accedieron a su cuenta.
  • Puede ofrecer experiencias del cliente más relevantes, lo que suele generar una mayor participación de los clientes.
  • Ofrece estadísticas más detalladas sobre los clientes

Resumen del proceso

Después de habilitar la coincidencia de datos proporcionada por el usuario en tu cuenta, hay dos etapas para el uso continuo de la función:

  1. Transferencia de datos de origen al Centro de Datos de Anuncios
    • formateas y subes los datos de origen a tu conjunto de datos de BigQuery. Puedes usar cualquier conjunto de datos de BigQuery que poseas, excepto el proyecto de administrador.
    • Para iniciar una solicitud de coincidencia de datos, crea una conexión y, luego, importa el programa.
    • Google une los datos de tu proyecto con los que son propiedad de Google y contienen el ID de usuario de Google y los datos proporcionados por el usuario con codificación hash para compilar y actualizar tablas *_match.
  2. Consultas en curso en Ads Data Hub, basadas en datos coincidentes
    • Ejecutas consultas en las tablas *_match de la misma manera en que ejecutas consultas regulares en Ads Data Hub.

Proyectos de origen y destino de datos

Las conexiones requieren que uses dos proyectos diferentes de Google Cloud: un proyecto de fuente de datos y un proyecto de destino.

  • Fuente de datos: este proyecto contiene sus datos publicitarios propios en su formato sin procesar.
  • Destino: Es el conjunto de datos de BigQuery en el que se escribe el Centro de Datos de Anuncios. Según la configuración predeterminada, este es tu proyecto de administrador. Para cambiarlo a otro proyecto de Google Cloud, consulta Configura cuentas de servicio.

Restricciones de privacidad

Recopilación de datos de los clientes

Cuando usa la coincidencia de datos proporcionada por el usuario, debe subir datos de origen. Puede ser información que recopilaste de tus sitios web, apps, tiendas físicas o cualquier información que un cliente haya compartido directamente contigo.

Tamaño de los datos

Para proteger la privacidad del usuario final, la coincidencia de datos proporcionada por el usuario aplica estos requisitos relacionados con el tamaño de tus datos:

  • Debe subir al menos 1.000 registros en su lista de usuarios.
  • Cada actualización exitosa de la tabla de coincidencias debe incluir una cantidad mínima de usuarios con coincidencias nuevas. Este comportamiento es similar a las verificaciones de diferencia.
  • La lista no debe superar la cantidad máxima de registros. Para obtener más información sobre el límite máximo de datos, comunícate con tu representante de Google.

Habilita la pestaña Conexiones

Antes de comenzar, configura tu cuenta del Centro de Datos de Anuncios para habilitar la pestaña Conexiones, que es donde establecerás la canalización de coincidencia de datos. Solo tendrás que realizar estos pasos una vez.

  1. Envíe a su representante de Google:
    1. El ID de la cuenta de Ads Data Hub que usarás para la coincidencia de datos proporcionada por el usuario.
    2. La dirección de correo electrónico del superusuario que tiene acceso a tu proyecto de destino.
    3. Confirma con tu representante de Google que la cuenta y el superusuario estén incluidos en la lista de entidades permitidas.
  2. Habilita la API del conector de datos de anuncios en el proyecto de Google Cloud designado. Este es tu proyecto de administrador de forma predeterminada. Para usar un proyecto diferente, sigue estos pasos con el proyecto alternativo de Google Cloud como el proyecto de fuente de datos. Estos pasos deben realizarse mientras accedes como el superusuario incluido en la lista de entidades permitidas.

    1. Ve a la Biblioteca de API de Cloud Console.
    2. Selecciona tu proyecto de Fuente de datos de la lista.
    3. Busque la API de Ads Data Connector. Si la API del conector de datos de anuncios no aparece en los resultados de la búsqueda, puede indicar que la Cuenta de Google a la que se accedió no es el superusuario que se incluyó en la lista de entidades permitidas.
    4. En la página de API, haz clic en HABILITAR.
    5. Confirme con su representante de Google que la API está habilitada.
  3. Tu representante de Google te enviará tres direcciones de correo electrónico, designadas como cuentas de servicio de Datafusion, Dataproc y UPDM.

    También aparecerá una nueva sección Conexiones en su cuenta del Centro de Datos de Anuncios, que contiene pestañas llamadas Sus datos de origen y Coincidencia de datos. Obtén más información acerca de los casos de uso de cada pestaña.

  4. Otorga los permisos adecuados a las cuentas de servicio. Para obtener una explicación de las diferentes cuentas de servicio y sus permisos obligatorios, selecciona tu fuente de datos en la tabla:

    BigQuery

    Cuenta de servicio de DataFusion
    Objetivo La cuenta de servicio de DataFusion se usa para mostrar una lista de campos de origen en la IU del Centro de Datos de Anuncios.
    Formato service-some-number@gcp-sa-datafusion.iam.gserviceaccount.com
    Acceso obligatorio
    BigQuery Data Viewer
    roles/bigquery.dataViewer
    para conjuntos de datos específicos en proyectos de fuente de datos y destino
    Storage Admin
    roles/storage.admin
    para el proyecto de fuente de datos o un depósito de almacenamiento dedicado
    Cuenta de servicio de Dataproc
    Objetivo La cuenta de servicio de Dataproc es responsable de ejecutar las canalizaciones de datos en segundo plano.
    Formato some-number-compute@developer.gserviceaccount.com
    Acceso obligatorio
    BigQuery Data Viewer
    roles/bigquery.dataViewer
    para conjuntos de datos específicos en proyectos de fuente de datos y destino
    BigQuery Data Editor
    roles/bigquery.dataEditor
    para conjuntos de datos específicos en el proyecto Destination
    BigQuery Job User
    roles/bigquery.jobUser
    para los proyectos Fuente de datos y Destino
    Storage Admin
    roles/storage.admin
    para proyectos de fuente de datos y destino, o para un bucket de almacenamiento dedicado
    Cuenta de servicio de UPDM
    Objetivo La cuenta de servicio UPDM se usa para ejecutar el trabajo coincidente.
    Formato service-some-number@gcp-sa-adsdataconnector.iam.gserviceaccount.com
    Acceso obligatorio
    BigQuery Data Viewer
    roles/bigquery.dataViewer
    para el proyecto Destination
    BigQuery Job User
    roles/bigquery.jobUser
    para el proyecto Destination

    Cloud Storage

    Cuenta de servicio de DataFusion
    Objetivo La cuenta de servicio de DataFusion se usa para mostrar una lista de campos de origen en la IU del Centro de Datos de Anuncios.
    Formato service-some-number@gcp-sa-datafusion.iam.gserviceaccount.com
    Acceso obligatorio
    Storage Object Viewer
    roles/storage.objectViewer
    para depósitos de almacenamiento específicos en el proyecto fuente de datos
    BigQuery Data Viewer
    roles/bigquery.dataViewer
    para el proyecto de fuente de datos o un depósito de almacenamiento dedicado
    Storage Admin
    roles/storage.admin
    para el proyecto de fuente de datos o un depósito de almacenamiento dedicado
    Cuenta de servicio de Dataproc
    Objetivo La cuenta de servicio de Dataproc es responsable de ejecutar las canalizaciones de datos en segundo plano.
    Formato some-number-compute@developer.gserviceaccount.com
    Acceso obligatorio
    Storage Admin
    roles/storage.admin
    para proyectos de fuente de datos y destino, o para un bucket de almacenamiento dedicado
    BigQuery Job User
    roles/bigquery.jobUser
    para el proyecto Destination
    Cuenta de servicio de UPDM
    Objetivo La cuenta de servicio UPDM se usa para ejecutar el trabajo coincidente.
    Formato service-some-number@gcp-sa-adsdataconnector.iam.gserviceaccount.com
    Acceso obligatorio
    BigQuery Data Viewer
    roles/bigquery.dataViewer
    para el proyecto Destination
    BigQuery Job User
    roles/bigquery.jobUser
    para el proyecto Destination

    Salesforce

    Próximamente

Transfiera datos de origen

Formato de datos para entrada

Sus datos deben cumplir con los siguientes requisitos de formato para que coincidan correctamente:

  • Cuando se indique, debes subir con el hash SHA256 codificado como una string Base16. Si bien UPDM admite Base64, difiere de los lineamientos de la Segmentación por clientes de Google Ads.
  • Los campos de entrada deben tener el formato de strings. Si usas la función de hash SHA256 de BigQuery y la función de codificación Base16 (TO_HEX), usa la siguiente transformación: TO_HEX(SHA256(user_data)).

ID de usuario

  • Texto sin formato
  • Hash: Ninguno

Correo electrónico

  • Quitar espacio en blanco
  • Escriba todos los caracteres en minúscula.
  • Incluya un nombre de dominio para todas las direcciones de correo electrónico, como gmail.com o hotmail.co.jp
  • Quita los acentos (por ejemplo, cambia è, é, ê o ë por e)
  • Hash: Base 16 con codificación SHA256

Válido: TO_HEX(SHA256("jeffersonloveshiking@gmail.com"))

No válido: TO_HEX(SHA256("JéffersonLôvesHiking@gmail.com"))

Phone

  • Quitar espacio en blanco
  • Formato en formato E.164 (por ejemplo, EE.UU. +14155552671, Reino Unido +442071838750)
  • Incluir código de país (incluido EE. UU.)
  • Quite todos los caracteres especiales, excepto el signo &+&antes del código de país.
  • Hash: Base 16 con codificación SHA256

Válido: TO_HEX(SHA256("+18005550101"))

No válido: TO_HEX(SHA256("(800) 555-0101"))

Nombre

  • Quitar espacio en blanco
  • Escriba todos los caracteres en minúscula.
  • Quite todos los prefijos, como Sra.
  • No quites los acentos (por ejemplo, è, é, ê o ë)
  • Hash: Base 16 con codificación SHA256

Válido: TO_HEX(SHA256("daní"))

No válido: TO_HEX(SHA256("Daní"))

Apellido

  • Quitar espacio en blanco
  • Escriba todos los caracteres en minúscula.
  • Quita todos los prefijos, como Jr.
  • No quites los acentos (por ejemplo, è, é, ê o ë)
  • Hash: Base 16 con codificación SHA256

Válido: TO_HEX(SHA256("delacruz"))

No válido: TO_HEX(SHA256("de la Cruz, Jr."))

País

  • Incluya el código del país, aun cuando todos los datos de sus clientes correspondan al mismo país.
  • No aplicar la codificación hash a los datos de país
  • Utilice los códigos de país ISO 3166-1 alpha-2.
  • Hash: Ninguno

Válido: US

No válido: United States of America o USA

Código postal

  • Datos de código postal de hash
  • Se permite el uso tanto de códigos postales estadounidenses como internacionales
  • Para EE.UU.:
    • Se permiten códigos de 5 dígitos, por ejemplo, 94043
    • También se permiten 5 dígitos seguidos de una extensión de 4 dígitos. Por ejemplo, 94043-1351 o 940431351
  • Para todos los demás países:
    • No se requiere formato (no es necesario usar minúsculas ni quitar los espacios y caracteres especiales).
    • Omita las extensiones de código postal
  • Hash: Ninguno

Validación de hash y codificación de datos

Puedes usar las siguientes secuencias de comandos de validación de hash para asegurarte de que tus datos tengan el formato correcto.

JavaScript

Base16

/**
 * @fileoverview Provides the hashing algorithm for User-Provided Data Match, as
 * well as some valid hashes of sample data for testing.
*/

async function hash(token) {
  const formattedToken = token.trim().toLowerCase();
  const hashArrayBuffer = await crypto.subtle.digest(
      'SHA-256', (new TextEncoder()).encode(formattedToken));
  return Array.from(new Uint8Array(hashArrayBuffer))
      .map((b) => b.toString(16).padStart(2, '0'))
      .join('');
}

function main() {
  // Expected hash for test@gmail.com:
  // 87924606b4131a8aceeeae8868531fbb9712aaa07a5d3a756b26ce0f5d6ca674
  hash('test@gmail.com').then(result => console.log(result));

  // Expected hash for +18005551212:
  // 61d9111bed3e6d9cfc1bc3b5cb35a402687c4f1546bee061a2bd444fbdd64c44
  hash('+18005551212').then(result => console.log(result));

  // Expected hash for John:
  // 96d9632f363564cc3032521409cf22a852f2032eec099ed5967c0d000cec607a
  hash('John').then(result => console.log(result));

  // Expected hash for Doe:
  // 799ef92a11af918e3fb741df42934f3b568ed2d93ac1df74f1b8d41a27932a6f
  hash('Doe').then(result => console.log(result));
}

main()

Base64

/**
 * @fileoverview Provides the hashing algorithm, as well as some valid hashes of
 * sample data for testing.
*/

async function hash(token) {
  const formattedToken = token.trim().toLowerCase();
  const hashBuffer = await crypto.subtle.digest(
      'SHA-256', (new TextEncoder()).encode(formattedToken));
  const base64Str = btoa(String.fromCharCode(...new Uint8Array(hashBuffer)));
  return base64Str;
}

function main() {
  // Expected hash for test@gmail.com:
  // h5JGBrQTGorO7q6IaFMfu5cSqqB6XTp1aybOD11spnQ=
  hash('test@gmail.com').then(result => console.log(result));

  // Expected hash for +18005551212:
  // YdkRG+0+bZz8G8O1yzWkAmh8TxVGvuBhor1ET73WTEQ=
  hash('+18005551212').then(result => console.log(result));

  // Expected hash for John: ltljLzY1ZMwwMlIUCc8iqFLyAy7sCZ7VlnwNAAzsYHo=
  hash('John').then(result => console.log(result));

  // Expected hash for Doe: eZ75KhGvkY4/t0HfQpNPO1aO0tk6wd908bjUGieTKm8=
  hash('Doe').then(result => console.log(result));
}

main()

Python

Base16

"""Provides the hashing algorithm, as well as some valid hashes of sample data for testing.

Supports: Python 2, Python 3

Sample hashes:

  - Email 'test@gmail.com': 87924606b4131a8aceeeae8868531fbb9712aaa07a5d3a756b26ce0f5d6ca674
  - Phone '+18005551212':   61d9111bed3e6d9cfc1bc3b5cb35a402687c4f1546bee061a2bd444fbdd64c44
  - First name 'John':      96d9632f363564cc3032521409cf22a852f2032eec099ed5967c0d000cec607a
  - Last name 'Doe':        799ef92a11af918e3fb741df42934f3b568ed2d93ac1df74f1b8d41a27932a6f
"""

import base64
import hashlib

def updm_hash(token):
  return hashlib.sha256(token.strip().lower().encode('utf-8')).hexdigest()

def print_updm_hash(token):
  print('Hash: "{}"\t(Token: {})'.format(updm_hash(token), token))

def main():
  print_updm_hash('test@gmail.com')
  print_updm_hash('+18005551212')
  print_updm_hash('John')
  print_updm_hash('Doe')

if __name__ == '__main__':
  main()

Base64

"""Provides the hashing algorithm, as well as some valid hashes of sample data for testing.

Supports: Python 2, Python 3

Sample hashes:

  - Email 'test@gmail.com': h5JGBrQTGorO7q6IaFMfu5cSqqB6XTp1aybOD11spnQ=
  - Phone '+18005551212':   YdkRG+0+bZz8G8O1yzWkAmh8TxVGvuBhor1ET73WTEQ=
  - First name 'John':      ltljLzY1ZMwwMlIUCc8iqFLyAy7sCZ7VlnwNAAzsYHo=
  - Last name 'Doe':        eZ75KhGvkY4/t0HfQpNPO1aO0tk6wd908bjUGieTKm8=
"""

import base64
import hashlib

def hash(token):
  return base64.b64encode(
      hashlib.sha256(
          token.strip().lower().encode('utf-8')).digest()).decode('utf-8')

def print_hash(token, expected=None):
  hashed = hash(token)

  if expected is not None and hashed != expected:
    print(
        'ERROR: Incorrect hash for token "{}". Expected "{}", got "{}"'.format(
            token, expected, hashed))
    return

  print('Hash: "{}"\t(Token: {})'.format(hashed, token))

def main():
  print_hash(
      'test@gmail.com', expected='h5JGBrQTGorO7q6IaFMfu5cSqqB6XTp1aybOD11spnQ=')
  print_hash(
      '+18005551212', expected='YdkRG+0+bZz8G8O1yzWkAmh8TxVGvuBhor1ET73WTEQ=')
  print_hash('John', expected='ltljLzY1ZMwwMlIUCc8iqFLyAy7sCZ7VlnwNAAzsYHo=')
  print_hash('Doe', expected='eZ75KhGvkY4/t0HfQpNPO1aO0tk6wd908bjUGieTKm8=')

if __name__ == '__main__':
  main()

Go

Base16

/*
Provides the hashing algorithm, as well as some valid hashes of sample data for testing.

Sample hashes:

  - Email 'test@gmail.com': 87924606b4131a8aceeeae8868531fbb9712aaa07a5d3a756b26ce0f5d6ca674
  - Phone '+18005551212':   61d9111bed3e6d9cfc1bc3b5cb35a402687c4f1546bee061a2bd444fbdd64c44
  - First name 'John':      96d9632f363564cc3032521409cf22a852f2032eec099ed5967c0d000cec607a
  - Last name 'Doe':        799ef92a11af918e3fb741df42934f3b568ed2d93ac1df74f1b8d41a27932a6f
*/
package main

import (
  "crypto/sha256"
  "fmt"
  "strings"
)

// Hash hashes an email, phone, first name, or last name into the correct format.
func Hash(token string) string {
  formatted := strings.TrimSpace(strings.ToLower(token))
  hashed := sha256.Sum256([]byte(formatted))
  encoded := fmt.Sprintf("%x", hashed[:])
  return encoded
}

// PrintHash prints the hash for a token.
func PrintHash(token string) {
  fmt.Printf("Hash: \"%s\"\t(Token: %s)\n", Hash(token), token)

}

func main() {
  PrintHash("test@gmail.com")
  PrintHash("+18005551212")
  PrintHash("John")
  PrintHash("Doe")
}

Base64

/*
Provides the hashing algorithm, as well as some valid hashes of sample data for testing.

Sample hashes:

  - Email 'test@gmail.com': h5JGBrQTGorO7q6IaFMfu5cSqqB6XTp1aybOD11spnQ=
  - Phone '+18005551212':   YdkRG+0+bZz8G8O1yzWkAmh8TxVGvuBhor1ET73WTEQ=
  - First name 'John':      ltljLzY1ZMwwMlIUCc8iqFLyAy7sCZ7VlnwNAAzsYHo=
  - Last name 'Doe':        eZ75KhGvkY4/t0HfQpNPO1aO0tk6wd908bjUGieTKm8=
*/
package main

import (
  "crypto/sha256"
  "encoding/base64"
  "fmt"
  "strings"
)

// Hash hashes an email, phone, first name, or last name into the correct format.
func Hash(token string) string {
  formatted := strings.TrimSpace(strings.ToLower(token))
  hashed := sha256.Sum256([]byte(formatted))
  encoded := base64.StdEncoding.EncodeToString(hashed[:])
  return encoded
}

// PrintHash prints the hash for a token.
func PrintHash(token string) {
  fmt.Printf("Hash: \"%s\"\t(Token: %s)\n", Hash(token), token)

}

func main() {
  PrintHash("test@gmail.com")
  PrintHash("+18005551212")
  PrintHash("John")
  PrintHash("Doe")
}

Java

Base16

package updm.hashing;

import static java.nio.charset.StandardCharsets.UTF_8;

import com.google.common.base.Ascii;
import com.google.common.hash.Hashing;

/**
 * Example of the UPDM hashing algorithm using hex-encoded SHA-256.
*
* <p>This uses the Guava Hashing to generate the hash: https://github.com/google/guava
*
* <p>Sample valid hashes:
*
* <ul>
*   <li>Email "test@gmail.com": "87924606b4131a8aceeeae8868531fbb9712aaa07a5d3a756b26ce0f5d6ca674"
*   <li>Phone "+18005551212": "61d9111bed3e6d9cfc1bc3b5cb35a402687c4f1546bee061a2bd444fbdd64c44"
*   <li>First name "John": "96d9632f363564cc3032521409cf22a852f2032eec099ed5967c0d000cec607a"
*   <li>Last name "Doe": "799ef92a11af918e3fb741df42934f3b568ed2d93ac1df74f1b8d41a27932a6f"
* </ul>
*/
public final class HashExample {

  private HashExample() {}

  public static String hash(String token) {
    String formattedToken = Ascii.toLowerCase(token).strip();
    return Hashing.sha256().hashString(formattedToken, UTF_8).toString();
  }

  public static void printHash(String token) {
    System.out.printf("Hash: \"%s\"\t(Token: %s)\n", hash(token), token);
  }

  public static void main(String[] args) {
    printHash("test@gmail.com");
    printHash("+18005551212");
    printHash("John");
    printHash("Doe");
  }
}

Base64

package updm.hashing;

import static java.nio.charset.StandardCharsets.UTF_8;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Base64;

/**
* Example of the hashing algorithm.
*
* <p>Sample hashes:
*
* <ul>
*   <li>Email 'test@gmail.com': h5JGBrQTGorO7q6IaFMfu5cSqqB6XTp1aybOD11spnQ=
*   <li>Phone '+18005551212': YdkRG+0+bZz8G8O1yzWkAmh8TxVGvuBhor1ET73WTEQ=
*   <li>First name 'John': ltljLzY1ZMwwMlIUCc8iqFLyAy7sCZ7VlnwNAAzsYHo=
*   <li>Last name 'Doe': eZ75KhGvkY4/t0HfQpNPO1aO0tk6wd908bjUGieTKm8=
* </ul>
*/
public final class HashExample {

private HashExample() {}

public static String hash(String token) {
  String formattedToken = token.toLowerCase().strip();

  byte[] hash;
  try {
    hash = MessageDigest.getInstance("SHA-256").digest(formattedToken.getBytes(UTF_8));
  } catch (NoSuchAlgorithmException e) {
    throw new IllegalStateException("SHA-256 not supported", e);
  }

  return Base64.getEncoder().encodeToString(hash);
}

public static void printHash(String token) {
  System.out.printf("Hash: \"%s\"\t(Token: %s)\n", hash(token), token);
}

public static void main(String[] args) {
  printHash("test@gmail.com");
  printHash("+18005551212");
  printHash("John");
  printHash("Doe");
}
}

SQL

Base16

/*
Provides the hashing algorithm, as well as some valid hashes of sample data for testing.

The following code uses Google Standard SQL and can be run on BigQuery to generate match tables from unhashed data.

Sample hashes:

  - Email 'test@gmail.com': 87924606b4131a8aceeeae8868531fbb9712aaa07a5d3a756b26ce0f5d6ca674
  - Phone '+18005551212':   61d9111bed3e6d9cfc1bc3b5cb35a402687c4f1546bee061a2bd444fbdd64c44
  - First name 'John':      96d9632f363564cc3032521409cf22a852f2032eec099ed5967c0d000cec607a
  - Last name 'Doe':        799ef92a11af918e3fb741df42934f3b568ed2d93ac1df74f1b8d41a27932a6f

The unhashed input table schema is assumed to be:

- Column name: UserID, Type: String
- Column name: Email, Type: String
- Column name: Phone, Type: String
- Column name: FirstName, Type: String
- Column name: LastName, Type: String
- Column name: PostalCode, Type: String
- Column name: CountryCode, Type: String
*/

CREATE TABLE `your_project_name.your_dataset_name.output_hashed_table_name`
AS
SELECT
  UserID,
  TO_HEX(SHA256(LOWER(Email))) AS Email,
  TO_HEX(SHA256(Phone)) AS Phone,
  TO_HEX(SHA256(LOWER(FirstName))) AS FirstName,
  TO_HEX(SHA256(LOWER(LastName))) AS LastName,
  PostalCode,
  CountryCode,
FROM
  `your_project_name.your_dataset_name.input_unhashed_table_name`;

Base64

/*
Provides the hashing algorithm, as well as some valid hashes of sample data for testing.

The following code uses Google Standard SQL and can be run on BigQuery to generate match tables from unhashed data.

Sample hashes:

  - Email 'test@gmail.com': h5JGBrQTGorO7q6IaFMfu5cSqqB6XTp1aybOD11spnQ=
  - Phone '+18005551212':   YdkRG+0+bZz8G8O1yzWkAmh8TxVGvuBhor1ET73WTEQ=
  - First name 'John':      ltljLzY1ZMwwMlIUCc8iqFLyAy7sCZ7VlnwNAAzsYHo=
  - Last name 'Doe':        eZ75KhGvkY4/t0HfQpNPO1aO0tk6wd908bjUGieTKm8=

The unhashed input table schema is assumed to be:

- Column name: UserID, Type: String
- Column name: Email, Type: String
- Column name: Phone, Type: String
- Column name: FirstName, Type: String
- Column name: LastName, Type: String
- Column name: PostalCode, Type: String
- Column name: CountryCode, Type: String
*/

CREATE TABLE `your_project_name.your_dataset_name.output_hashed_table_name`
AS
SELECT
  UserID,
  TO_BASE64(SHA256(LOWER(Email))) AS Email,
  TO_BASE64(SHA256(Phone)) AS Phone,
  TO_BASE64(SHA256(LOWER(FirstName))) AS FirstName,
  TO_BASE64(SHA256(LOWER(LastName))) AS LastName,
  PostalCode,
  CountryCode,
FROM
  `your_project_name.your_dataset_name.input_unhashed_table_name`;

Claves de combinación

Algunas combinaciones de datos que proporcionan los usuarios son más eficaces que otras. A continuación, se muestra una lista de diferentes combinaciones de datos proporcionadas por el usuario, ordenadas según su fuerza relativa:

  1. Correo electrónico, teléfono, dirección (la más alta)
  2. Teléfono, dirección
  3. Correo electrónico, dirección
  4. Correo electrónico, teléfono
  5. Dirección
  6. Phone
  7. Correo electrónico (el más débil)

Crear una tabla de coincidencias

  1. Haz clic en Connections > Data matching (Crear conexión).
  2. Elige una fuente de datos y, luego, haz clic en Conectar. Autenticar, si se te solicita, haz clic en Siguiente.
  3. Configura tu fuente de datos y, luego, haz clic en Siguiente:

    BigQuery

    Selecciona la tabla de BigQuery que deseas importar.

    Cloud Storage

    Ingresa la ruta del archivo gsutil, como gs://my-bucket/folder/, y selecciona el formato del archivo.

    Salesforce

    Próximamente

  4. Configure destination y haga clic en Next:
    1. Selecciona un nuevo conjunto de datos de BigQuery para usar como destino intermedio de los datos. Este paso garantiza que sus datos tengan el formato correcto.
  5. Opcional: Modifica el formato de tus datos. Las transformaciones incluyen el hash de procesamiento, el formato de mayúsculas y minúsculas, y la combinación o división de campos.
    1. Haz clic en Acción > > Transform.
    2. En el panel emergente, haz clic en Agregar transformación o Agregar otra transformación.
    3. Elija un tipo de transformación en el menú desplegable y, luego, ingrese los requisitos.
    4. Haga clic en Guardar.
  6. Elige al menos una clave de unión para asignar los campos que usarás y haz clic en Next.
  7. Establece un programa:
    1. Asigna un nombre a la conexión.
    2. Establece una frecuencia y determina la frecuencia con la que se importarán los datos al conjunto de datos que seleccionaste en el paso anterior. Cada ejecución reemplazará los datos en la tabla destination.
    3. Especifique cómo desea que se manejen las colisiones de ID de usuario. Puedes elegir entre conservar la coincidencia existente o reemplazarla con datos nuevos.
  8. Haz clic en Finish.

Ver detalles de conexión

La página de detalles de la conexión te brinda información sobre las ejecuciones y los errores recientes de una conexión determinada. Para ver los detalles de una conexión específica, sigue estos pasos:

  1. Haz clic en Connections > Data matching.
  2. Haz clic en el nombre de la conexión para ver los detalles.
  3. Ahora puedes ver los detalles de la conexión y las ejecuciones recientes. Cada una muestra dos tipos posibles de errores: a nivel de la conexión (no se ejecutó la conexión) y a nivel de la fila (no se importó una fila).
    1. El estado Con errores indica que no se pudo ejecutar toda la conexión (p.ej., un problema de permisos de la cuenta de servicio). Haz clic en el estado del error para ver qué errores afectaron la conexión.
    2. El estado Completado indica que la conexión se ejecutó correctamente. Sin embargo, aún puede haber errores a nivel de fila, indicados por un valor distinto de cero en la columna "Filas con errores". Haz clic en el valor para obtener más información sobre los registros que fallaron.

Edita una conexión

Todavía no se admite la edición de conexiones. Para cambiar una conexión, crea una nueva y, luego, borra la anterior.

Consulta los datos en el Centro de Datos de Anuncios

Consulta las tablas de coincidencias

Cuando las tablas de coincidencia contienen datos suficientes para cumplir con las verificaciones de privacidad, estás listo para ejecutar consultas en las tablas. Cada tabla del esquema del Centro de Datos de Anuncios que contiene un campo user_id está acompañada por una tabla *_match. Por ejemplo, para la tabla adh.google_ads_impressions, el Centro de Datos de Anuncios también genera una tabla de coincidencias llamada adh.google_ads_impressions_match que contiene solo ID de usuario. Estas tablas contienen un subconjunto de los usuarios disponibles en las tablas originales, en los que hay una coincidencia en user_id. Por ejemplo, si la tabla original contiene datos de los usuarios A y B, pero solo coincide el usuario A, el usuario B no estará en la tabla de coincidencias.

Las tablas de coincidencias contienen una columna adicional llamada external_cookie, que almacena la cookie como BYTES.

El campo external_cookie contiene su ID como BYTES. Debes convertir la clave de combinación en BYTES para que las coincidencias sean correctas.

JOIN ON 
  google_data_imp.external_cookie = CAST(my_data.user_id AS BYTES)

Para usar las tablas de coincidencias, consulte las vistas *_match de las tablas de eventos de anuncios. Si también usas la concordancia de cookies, puedes filtrar por un tipo de concordancia en tus consultas. Usar:

  • match_type = 1 para la concordancia de cookies
  • match_type = 2 para la coincidencia de datos proporcionada por el usuario

Si bien match_type está permitido en las consultas, este campo no se puede mostrar en los resultados, por lo que no debes incluirlo en la declaración SELECT final.

Consultas de muestra

Recuento de usuarios coincidentes

Esta consulta cuenta la cantidad de usuarios que coinciden en su tabla de impresiones de Google Ads.

/* Count matched users in Google Ads impressions table */

SELECT COUNT(DISTINCT user_id)
FROM adh.google_ads_impressions_match

Recuento de usuarios coincidentes con los datos proporcionados por los usuarios

Esta consulta cuenta la cantidad de usuarios coincidentes por tipo de concordancia. Debido a que las tablas de eventos de anuncios contienen eventos de usuarios que accedieron y no accedieron a sus cuentas, el filtrado de la coincidencia de datos proporcionada por el usuario solo hará coincidir a los usuarios que accedieron.

/* Count user-provided data matched users by match type.
match_type = 1 for cookie matching
match_type = 2 for user-provided data matching */

SELECT
  match_type AS match_type,
  COUNT(DISTINCT user_id) AS user_cnt,
FROM 
  adh.google_ads_impressions_match
GROUP BY
  match_type

Esta consulta muestra cómo unir los datos de origen con los datos de Google Ads:

/* Join first-party data with Google Ads data. The external_cookie field 
contains your ID as BYTES. You need to cast your join key into BYTES for 
successful matches. */

SELECT
  inventory_type,
  COUNT(*) AS impressions
FROM
  adh.yt_reserve_impressions_match AS google_data_imp
LEFT JOIN
  `my_data`
ON 
  google_data_imp.external_cookie = CAST(my_data.user_id AS BYTES)
-- Uncomment the following line if cookie matching is enabled as well.
-- WHERE google_data_imp.match_type = 2
GROUP BY
  inventory_type

Esta consulta cuenta la cantidad de usuarios que coinciden con los datos proporcionados por los usuarios, sin incluir los usuarios con concordancia de cookies. Ten en cuenta que las tablas de eventos de anuncios contienen eventos de los usuarios que acceden y de los que no. Por lo tanto, si filtras solo los datos coincidentes proporcionados por los usuarios, solo se buscarán coincidencias.

/* Count user-provided data matched users, excluding cookie matched users. */

SELECT 
  COUNT(DISTINCT user_id)
FROM 
  adh.google_ads_impressions_match
WHERE 
  match_type = 2

Conexiones

Para obtener estadísticas publicitarias valiosas, a menudo se requieren la unión de datos de varias fuentes. Compilar tu propia solución para este problema de canalización de datos requiere una inversión de tiempo y de ingeniería significativas. Las conexiones optimizan este proceso, ya que proporcionan una interfaz guiada paso a paso para importar, transformar y escribir datos en BigQuery. Después de escribir tus datos, puedes usarlos en tus consultas del Centro de Datos de Anuncios o en cualquier otro producto que se lea desde BigQuery. Enriquecer tus consultas con datos de origen puede ofrecer experiencias más enriquecidas a los clientes y es más resistente a los cambios en el seguimiento de anuncios en toda la industria.

Además, las conexiones se crean con herramientas que te permiten encriptar y compartir información de identificación personal (PII) con socios de una manera centrada en la privacidad. Después de seleccionar las columnas que contienen PII, las conexiones encriptan los datos, lo que garantiza que solo las personas con permiso puedan exportar o leer tus datos de origen.

Puedes usar conexiones para importar datos desde:

Saber qué datos de origen son necesarios para tu caso práctico de medición o activación puede ser difícil, por lo que Connections proporciona una lista completa de casos de uso predefinidos y, luego, te guía por toda la experiencia de extracción, transformación y carga de datos.

Diferencias entre los datos de origen y la coincidencia de datos

El flujo de trabajo para configurar una tabla de coincidencias proporcionada por el usuario es similar a crear una conexión de datos de origen normal a través de conexiones. Sin embargo, el requisito de dos proyectos supone que estás configurando conexiones antes de usar la coincidencia de datos proporcionada por el usuario. Si solo usas conexiones como herramienta de preparación de datos, puedes usar un solo proyecto de Google Cloud.

Requisitos adicionales para la coincidencia de datos proporcionada por el usuario:

  • Debes usar correo electrónico, teléfono, dirección o cualquier combinación como clave para unirse.
  • Debe especificar cómo se resuelven las colisiones de user_id. Puedes optar por mantener la coincidencia existente o reemplazar por datos nuevos.
  • Debes usar una cuenta de servicio UPDM además de las cuentas de fusión de datos y de Dataproc.

Flujo de trabajo de datos de origen

Crear una conexión

  1. Haga clic en Conexiones > Datos de origen > Crear conexión.
  2. Conéctate a una fuente de datos. Se te solicitará que te autentiques.

    BigQuery

    Los permisos se basan en tu Cuenta de Google, por lo que no se requiere autenticación adicional. Asegúrate de que las cuentas de servicio de conexiones tengan acceso de lectura a la tabla.

    Cloud Storage

    Los permisos se basan en tu Cuenta de Google, por lo que no se requiere autenticación adicional. Asegúrate de que las cuentas de servicio de Connections tengan acceso de lectura al bucket de almacenamiento.

    Salesforce

    (Disponible próximamente)

    Usa las credenciales de Salesforce de tu organización para acceder. Google no almacena sus credenciales, por lo que cada nueva conexión de Salesforce requerirá una reautenticación.

  3. Elige un caso de uso y una clave de unión y, luego, haz clic en Seleccionar caso de uso. Si no deseas seleccionar un caso práctico, haz clic en Omitir. No podrás seleccionar un caso práctico más adelante.
  4. Configura tu fuente de datos.

    BigQuery

    Selecciona la tabla de BigQuery que deseas importar.

    Cloud Storage

    Ingresa la ruta del archivo gsutil, como gs://my-bucket/folder/, y selecciona el formato del archivo.

    Salesforce

    Próximamente

  5. Configura tus campos de destino y mapa.
    • Selecciona el proyecto, el conjunto de datos y la tabla de Google Cloud en la que deseas escribir los resultados. Asegúrate de que las cuentas de servicio de Connections tengan acceso de escritura al conjunto de datos en el que escribirás.
    • Cada conexión creará una tabla nueva para escribir. Si seleccionas una tabla que ya existe, verás un error.
    • Asigna los campos de destino (campos que aparecerán en la tabla que estás creando) a los campos de origen en tus datos de origen.
  6. Establecer un programa.
    1. Asigna un nombre a la conexión.
    2. Establece una frecuencia y determina la frecuencia con la que se importarán los datos al conjunto de datos que seleccionaste en el paso anterior. Cada ejecución reemplazará los datos en la tabla destination.
  7. Haga clic en Listo. Las conexiones que procesan grandes cantidades de datos pueden tardar varias horas en ejecutarse.

Ver detalles de conexión

La página de detalles de la conexión te brinda información sobre las ejecuciones y los errores recientes de una conexión determinada. Para ver los detalles de una conexión específica, sigue estos pasos:

  1. Haz clic en Connections > Your 1P Data.
  2. Haz clic en el nombre de la conexión para ver los detalles.
  3. Ahora puedes ver los detalles de la conexión y las ejecuciones recientes. Cada una muestra dos tipos posibles de errores: a nivel de la conexión (no se ejecutó la conexión) y a nivel de la fila (no se importó una fila).
    1. El estado Con errores indica que no se pudo ejecutar toda la conexión (p.ej., un problema de permisos de la cuenta de servicio). Haz clic en el estado del error para ver qué errores afectaron la conexión.
    2. El estado Completado indica que la conexión se ejecutó correctamente. Sin embargo, aún puede haber errores a nivel de fila, indicados por un valor distinto de cero en la columna "Filas con errores". Haz clic en el valor para obtener más información sobre los registros que fallaron.

Edita una conexión

Todavía no se admite la edición de conexiones. Para cambiar una conexión, crea una nueva y borra la anterior.

Casos de uso

El caso práctico que selecciones afecta el esquema de la tabla de destino y los campos de clave de unión importados. Expande los siguientes casos prácticos para aprender cómo afectan el esquema y las claves de unión:

Alcance y frecuencia

Mida el alcance y la frecuencia de la campaña en todos los canales y dispositivos, desglosados según sus segmentos de usuarios propios.

Nombre del campo Descripción Tipo Obligatorio/opcional
clave de unión Cambios según la clave de combinación que uses string Obligatorio
género Género string Opcional
edad Edad int Opcional
city Ciudad string Opcional
country País string Opcional
ciclo_ciclo de vida Estado del embudo de clientes: desconocido, integración, participación, inactividad, etcétera string Opcional
estado_de_lealtad Plata, oro, platino, diamante, etc. string Opcional
fecha_compra_última Fecha de la última compra (marca de tiempo de época Unix) int Opcional
último_compra_producto Última compra o consumo del producto string Opcional
fecha_último_contacto Fecha del último contacto o la participación (marca de tiempo de época Unix) int Opcional
LTV LTV del cliente int Opcional
tipo_suscripción Subproducto / tipo de suscripción que tiene un cliente: p.ej., plan familiar de lujo string Opcional
transaction_id ID único para esta transacción string Opcional
transaction_date Fecha de la transacción (marca de tiempo de época Unix) int Opcional
ingresos_transacción Ingresos de la transacción int Opcional
currency Tipo de moneda de la transacción string Opcional
cantidad Cantidad de artículos en la transacción string Opcional
precio Precio por elemento en la transacción int Opcional
costo_transacción Costo de bienes o servicios de la transacción int Opcional
ganancia_transacción Ganancia bruta por la transacción int Opcional
product_id SKU / ID de los productos de la transacción string Opcional
descripción_transacción Otra descripción, metadatos o parámetros sobre la transacción string Opcional
tipo_evento P. ej., impresión de anuncios de TV, correo electrónico de marketing, visita al sitio web, visita a tienda, etcétera string Opcional
ID del evento ID único del evento anterior string Opcional
event_timestamp Fecha del evento (marca de tiempo de época Unix) int Opcional
metadatos_del_canal Información o metadatos adicionales sobre este canal de punto de contacto string Opcional

Atribución de múltiples puntos de contacto

Mida la atribución mediante la combinación de sus puntos de contacto propios con los de Google.

Nombre del campo Descripción Tipo Obligatorio/opcional
clave de unión Cambios según la clave de combinación que uses string Obligatorio
tipo_evento P. ej., impresión de anuncios de TV, correo electrónico de marketing, visita al sitio web, visita a tienda, etcétera string Obligatorio
ID del evento ID único del evento anterior string Obligatorio
event_timestamp Fecha del evento (marca de tiempo de época Unix) int Obligatorio
crédito Valor de crédito (utilizado para la atribución): p.ej., cantidad de conversiones int Opcional
metadatos_del_canal Información o metadatos adicionales sobre este canal de punto de contacto string Opcional

Métricas de rendimiento

Mida el rendimiento de la campaña dividido por segmentos demográficos, afines o propios.

Nombre del campo Descripción Tipo Obligatorio/opcional
clave de unión Cambios según la clave de combinación que uses string Obligatorio
género Género string Opcional
edad Edad int Opcional
city Ciudad string Opcional
country País string Opcional
ciclo_ciclo de vida Estado del embudo de clientes: desconocido, integración, participación, inactividad, etcétera string Opcional
estado_de_lealtad Plata, oro, platino, diamante, etc. string Opcional
fecha_compra_última Fecha de la última compra (marca de tiempo de época Unix) int Opcional
último_compra_producto Última compra o consumo del producto string Opcional
fecha_último_contacto Fecha del último contacto o la participación (marca de tiempo de época Unix) int Opcional
LTV LTV del cliente int Opcional
tipo_suscripción Subproducto / tipo de suscripción que tiene un cliente: p.ej., plan familiar de lujo string Opcional

Ruta hacia la atribución de conversiones

Analice el rendimiento de las rutas de conversión con puntos de contacto personalizados, incluidos los propios.

Nombre del campo Descripción Tipo Obligatorio/opcional
clave de unión Cambios según la clave de combinación que uses string Obligatorio
tipo_evento P. ej., impresión de anuncios de TV, correo electrónico de marketing, visita al sitio web, visita a tienda, etcétera string Obligatorio
ID del evento ID único del evento anterior string Obligatorio
event_timestamp Fecha del evento (marca de tiempo de época Unix) int Obligatorio
crédito Valor de crédito (utilizado para la atribución): p.ej., cantidad de conversiones int Opcional
metadatos_del_canal Información o metadatos adicionales sobre este canal de punto de contacto string Opcional

Superposición entre publicadores

Analice el alcance y la frecuencia de las campañas de los publicadores, segmentadas según sus segmentos de usuarios propios.

Nombre del campo Descripción Tipo Obligatorio/opcional
clave de unión Cambios según la clave de combinación que uses string Obligatorio
género Género string Opcional
edad Edad int Opcional
city Ciudad string Opcional
country País string Opcional
ciclo_ciclo de vida Estado del embudo de clientes: desconocido, integración, participación, inactividad, etcétera string Opcional
estado_de_lealtad Plata, oro, platino, diamante, etc. string Opcional
fecha_compra_última Fecha de la última compra (marca de tiempo de época Unix) int Opcional
último_compra_producto Última compra o consumo del producto string Opcional
fecha_último_contacto Fecha del último contacto o la participación (marca de tiempo de época Unix) int Opcional
LTV LTV del cliente int Opcional
tipo_suscripción Subproducto / tipo de suscripción que tiene un cliente: p.ej., plan familiar de lujo string Opcional

Rendimiento de campaña simultáneo

Mida el impacto en el rendimiento de la exposición a las campañas paralelas, dividido por sus segmentos de usuarios propios.

Nombre del campo Descripción Tipo Obligatorio/opcional
clave de unión Cambios según la clave de combinación que uses string Obligatorio
género Género string Opcional
edad Edad int Opcional
city Ciudad string Opcional
country País string Opcional
ciclo_ciclo de vida Estado del embudo de clientes: desconocido, integración, participación, inactividad, etcétera string Opcional
estado_de_lealtad Plata, oro, platino, diamante, etc. string Opcional
fecha_compra_última Fecha de la última compra (marca de tiempo de época Unix) int Opcional
último_compra_producto Última compra o consumo del producto string Opcional
fecha_último_contacto Fecha del último contacto o la participación (marca de tiempo de época Unix) int Opcional
LTV LTV del cliente int Opcional
tipo_suscripción Subproducto / tipo de suscripción que tiene un cliente: p.ej., plan familiar de lujo string Opcional
transaction_id ID único para esta transacción string Opcional
transaction_date Fecha de la transacción (marca de tiempo de época Unix) int Opcional
ingresos_transacción Ingresos de la transacción int Opcional
currency Tipo de moneda de la transacción string Opcional
cantidad Cantidad de artículos en la transacción string Opcional
precio Precio por elemento en la transacción int Opcional
costo_transacción Costo de bienes o servicios de la transacción int Opcional
ganancia_transacción Ganancia bruta por la transacción int Opcional
product_id SKU / ID de los productos de la transacción string Opcional
descripción_transacción Otra descripción, metadatos o parámetros sobre la transacción string Opcional
tipo_evento P. ej., impresión de anuncios de TV, correo electrónico de marketing, visita al sitio web, visita a tienda, etcétera string Opcional
ID del evento ID único del evento anterior string Opcional
event_timestamp Fecha del evento (marca de tiempo de época Unix) int Opcional
metadatos_del_canal Información o metadatos adicionales sobre este canal de punto de contacto string Opcional

Comparación de campañas

Comparar el rendimiento de las campañas de Google con el de otras campañas de otros editores

Nombre del campo Descripción Tipo Obligatorio/opcional
clave de unión Cambios según la clave de combinación que uses string Obligatorio
canal Canal en el que se publicó esta campaña (p. ej., Facebook, TV, etcétera) string Obligatorio
socio Nombre del socio, si participa string Opcional
táctica Nombre de la táctica específica string Opcional
metadatos de la campaña Información o metadatos adicionales sobre esta campaña string Opcional
fecha Fecha de la actividad de la campaña (marca de tiempo de época Unix) int Obligatorio
impressions Cantidad de impresiones de esta campaña en esta fecha int Obligatorio
clicks Número de clics de esta campaña en esta fecha int Obligatorio
conversiones Cantidad de conversiones de esta campaña en esta fecha int Obligatorio
cost Costo total de esta campaña en esta fecha int Obligatorio

Comparación de afinidad y etiqueta

Encuentre la superposición entre sus segmentos de usuarios propios y los segmentos de públicos afines y de público en el mercado de Google.

Nombre del campo Descripción Tipo Obligatorio/opcional
clave de unión Cambios según la clave de combinación que uses string Obligatorio
género Género string Opcional
edad Edad int Opcional
city Ciudad string Opcional
country País string Opcional
ciclo_ciclo de vida Estado del embudo de clientes: desconocido, integración, participación, inactividad, etcétera string Opcional
estado_de_lealtad Plata, oro, platino, diamante, etc. string Opcional
fecha_compra_última Fecha de la última compra (marca de tiempo de época Unix) int Opcional
último_compra_producto Última compra o consumo del producto string Opcional
fecha_último_contacto Fecha del último contacto o la participación (marca de tiempo de época Unix) int Opcional
LTV LTV del cliente int Opcional
tipo_suscripción Subproducto / tipo de suscripción que tiene un cliente: p.ej., plan familiar de lujo string Opcional

Análisis de conversiones de aplicaciones

Mida el impacto de la campaña en el comportamiento en la aplicación.

Nombre del campo Descripción Tipo Obligatorio/opcional
clave de unión Cambios según la clave de combinación que uses string Obligatorio
fecha Fecha de la actividad en aplicaciones para dispositivos móviles (marca de tiempo de época Unix) int Obligatorio
Instalar Booleano que representa si se registró un evento de instalación este día boolean Obligatorio
registro Booleano que representa si se registró un evento de registro este día boolean Obligatorio
acceder Booleano que representa si se registró un evento de acceso este día boolean Obligatorio
compras_in_app Importe total de compras directas desde la aplicación de este día int Obligatorio

Cálculo del ROI

Mida los retornos incrementales en función de sus datos de conversiones de origen.

Nombre del campo Descripción Tipo Obligatorio/opcional
clave de unión Cambios según la clave de combinación que uses string Obligatorio
transaction_id ID único para esta transacción string Obligatorio
transaction_date Fecha de la transacción (marca de tiempo de época Unix) int Obligatorio
ingresos_transacción Ingresos de la transacción int Obligatorio
currency Tipo de moneda de la transacción string Opcional
cantidad Cantidad de artículos en la transacción string Opcional
precio Precio por elemento en la transacción int Opcional
costo_transacción Costo de bienes o servicios de la transacción int Opcional
ganancia_transacción Ganancia bruta por la transacción int Opcional
product_id SKU / ID de los productos de la transacción string Opcional
descripción_transacción Otra descripción, metadatos o parámetros sobre la transacción string Opcional

Activación de públicos personalizados

Cree y active segmentos de usuarios personalizados en función de sus datos de origen y de Google

Nombre del campo Descripción Tipo Obligatorio/opcional
clave de unión Cambios según la clave de combinación que uses string Obligatorio
género Género string Opcional
edad Edad int Opcional
city Ciudad string Opcional
country País string Opcional
ciclo_ciclo de vida Estado del embudo de clientes: desconocido, integración, participación, inactividad, etcétera string Opcional
estado_de_lealtad Plata, oro, platino, diamante, etc. string Opcional
fecha_compra_última Fecha de la última compra (marca de tiempo de época Unix) int Opcional
último_compra_producto Última compra o consumo del producto string Opcional
fecha_último_contacto Fecha del último contacto o la participación (marca de tiempo de época Unix) int Opcional
LTV LTV del cliente int Opcional
tipo_suscripción Subproducto / tipo de suscripción que tiene un cliente: p.ej., plan familiar de lujo string Opcional

Ofertas personalizada

Optimice las estrategias de oferta de Display &Video 360 en función de sus datos de origen y de Google

Nombre del campo Descripción Tipo Obligatorio/opcional
clave de unión Cambios según la clave de combinación que uses string Obligatorio
género Género string Opcional
edad Edad int Opcional
city Ciudad string Opcional
country País string Opcional
ciclo_ciclo de vida Estado del embudo de clientes: desconocido, integración, participación, inactividad, etcétera string Opcional
estado_de_lealtad Plata, oro, platino, diamante, etc. string Opcional
fecha_compra_última Fecha de la última compra (marca de tiempo de época Unix) int Opcional
último_compra_producto Última compra o consumo del producto string Opcional
fecha_último_contacto Fecha del último contacto o la participación (marca de tiempo de época Unix) int Opcional
LTV LTV del cliente int Opcional
tipo_suscripción Subproducto / tipo de suscripción que tiene un cliente: p.ej., plan familiar de lujo string Opcional

Rendimiento de varios publicadores

Mida las métricas de rendimiento desglosadas por editor o por segmento y por sus segmentos de usuarios propios

Nombre del campo Descripción Tipo Obligatorio/opcional
clave de unión Cambios según la clave de combinación que uses string Obligatorio
género Género string Opcional
edad Edad int Opcional
city Ciudad string Opcional
country País string Opcional
ciclo_ciclo de vida Estado del embudo de clientes: desconocido, integración, participación, inactividad, etcétera string Opcional
estado_de_lealtad Plata, oro, platino, diamante, etc. string Opcional
fecha_compra_última Fecha de la última compra (marca de tiempo de época Unix) int Opcional
último_compra_producto Última compra o consumo del producto string Opcional
fecha_último_contacto Fecha del último contacto o la participación (marca de tiempo de época Unix) int Opcional
LTV LTV del cliente int Opcional
tipo_suscripción Subproducto / tipo de suscripción que tiene un cliente: p.ej., plan familiar de lujo string Opcional