Обзор
UPDM (сопоставление данных, предоставленных пользователями) объединяет собственные данные, которые вы собрали о пользователе, например информацию с ваших веб-сайтов, приложений или физических магазинов, с действиями того же пользователя при входе в систему в рекламных данных Google, за исключением Google. Маркетинговая платформа. Чтобы иметь право на сопоставление предоставленных пользователем данных, рекламное событие должно быть связано с вошедшим в систему пользователем в рекламных данных Google.
Сопоставление данных, предоставленное пользователями, предлагает некоторые уникальные преимущества по сравнению с другими формами сопоставления клиентов. Сопоставление предоставленных пользователем данных:
- Более устойчив к отраслевым изменениям, чем сторонние данные
- На него не повлияет предстоящее прекращение поддержки сторонних файлов cookie, поскольку сопоставление данных, предоставленных пользователями, доступно только для инвентаря, принадлежащего и управляемого Google, для вошедших пользователей.
- Может обеспечить более релевантное обслуживание клиентов, что часто приводит к более высокому вовлечению клиентов.
- Предлагает более полную информацию о клиентах
Краткое описание процесса
После включения сопоставления предоставленных пользователем данных в вашей учетной записи существует два этапа дальнейшего использования этой функции:
- Получение собственных данных в Ads Data Hub
- Вы форматируете и загружаете собственные данные в свой набор данных BigQuery. Вы можете использовать любой принадлежащий вам набор данных BigQuery, кроме вашего административного проекта .
- Вы инициируете запрос на сопоставление данных, создавая подключение и расписание импорта.
- Google объединяет данные между вашим проектом и принадлежащими Google данными, содержащими идентификатор пользователя Google и хешированные данные, предоставленные пользователями, для создания и обновления таблиц
*_match
.
- Текущие запросы в Ads Data Hub на основе сопоставленных данных
- Вы выполняете запросы к таблицам
*_match
так же, как и обычные запросы в Ads Data Hub.
- Вы выполняете запросы к таблицам
Источник данных и целевые проекты
Connections требует, чтобы вы использовали два разных проекта Google Cloud: проект источника данных и проект назначения.
- Источник данных: этот проект содержит ваши собственные рекламные данные в необработанном формате.
- Назначение: это набор данных BigQuery, в который Ads Data Hub записывает данные. По умолчанию это ваш административный проект . Чтобы изменить его на другой проект Google Cloud, см. раздел Настройка сервисных аккаунтов .
Ограничения конфиденциальности
Сбор данных о клиентах
При использовании сопоставления данных, предоставленных пользователями, необходимо загружать собственные данные. Это может быть информация, которую вы собрали со своих веб-сайтов, приложений, физических магазинов или любая информация, которой клиент поделился с вами напрямую.
Размер данных
Чтобы защитить конфиденциальность конечных пользователей, при сопоставлении предоставленных пользователями данных применяются следующие требования в отношении размера ваших данных:
- Вы должны загрузить не менее 1000 записей в свой список пользователей.
- Каждое успешное обновление вашей таблицы совпадений должно включать минимальное количество новых сопоставленных пользователей. Это поведение похоже на проверку различий .
- Ваш список не должен превышать максимальное количество записей. Чтобы узнать о максимальном лимите данных, обратитесь к представителю Google.
Включить вкладку «Подключения»
Прежде чем начать, настройте свою учетную запись Ads Data Hub, чтобы активировать вкладку « Подключения », где вы создадите конвейер сопоставления данных. Вам нужно будет выполнить эти шаги только один раз.
- Отправьте своему представителю Google:
- Идентификатор аккаунта Ads Data Hub, который вы будете использовать для сопоставления предоставленных пользователем данных.
- Адрес электронной почты суперпользователя, у которого есть доступ к вашему целевому проекту.
- Подтвердите у представителя Google, что учетная запись и суперпользователь находятся в белом списке.
Включите Ads Data Connector API в указанном проекте Google Cloud. По умолчанию это ваш административный проект. Чтобы использовать другой проект, выполните следующие действия с альтернативным проектом Google Cloud в качестве проекта источника данных . Эти шаги необходимо выполнить, войдя в систему как суперпользователь из белого списка.
- Перейдите в библиотеку API Cloud Console .
- Выберите проект источника данных из списка.
- Найдите «API Ads Data Connector». Если Ads Data Connector API не отображается в результатах поиска, это может означать, что учетная запись Google, в которую выполнен вход, не является суперпользователем, внесенным в белый список.
- На странице API нажмите ВКЛЮЧИТЬ .
- Подтвердите у представителя Google, что API включен.
Ваш представитель Google отправит вам три адреса электронной почты, обозначенные как сервисные аккаунты Datafusion , Dataproc и UPDM .
В вашей учетной записи Ads Data Hub также появится новый раздел « Подключения », содержащий вкладки « Ваши данные 1P » и « Сопоставление данных» . Узнайте о вариантах использования каждой вкладки.
Предоставьте соответствующие разрешения учетным записям службы. Чтобы узнать о различных учетных записях служб и требуемых для них разрешениях, выберите источник данных в таблице:
Большой запрос
Учетная запись службы слияния данных Цель Учетная запись службы объединения данных используется для отображения списка исходных полей в пользовательском интерфейсе Ads Data Hub. Формат service- some-number @gcp-sa-datafusion.iam.gserviceaccount.com
Требуемый доступ BigQuery Data Viewer
roles/bigquery.dataViewer
для конкретных наборов данных в проектах источника и назначения данных Storage Admin
roles/storage.admin
для проекта источника данных или выделенного сегмента хранилища Учетная запись службы Dataproc Цель Учетная запись службы dataproc отвечает за запуск конвейеров данных в фоновом режиме. Формат some-number -compute@developer.gserviceaccount.com
Требуемый доступ BigQuery Data Viewer
roles/bigquery.dataViewer
для конкретных наборов данных в проектах источника и назначения данных BigQuery Data Editor
roles/bigquery.dataEditor
для конкретных наборов данных в целевом проекте BigQuery Job User
roles/bigquery.jobUser
как для источников данных , так и для проектов назначения Storage Admin
roles/storage.admin
как для проектов источника данных , так и для проектов назначения или выделенного сегмента хранилища Учетная запись службы UPDM Цель Учетная запись службы UPDM используется для запуска соответствующего задания. Формат service- some-number @gcp-sa-adsdataconnector.iam.gserviceaccount.com
Требуемый доступ BigQuery Data Viewer
roles/bigquery.dataViewer
для проекта « Назначение » BigQuery Job User
roles/bigquery.jobUser
для проекта « Назначение » Облачное хранилище
Учетная запись службы слияния данных Цель Учетная запись службы объединения данных используется для отображения списка исходных полей в пользовательском интерфейсе Ads Data Hub. Формат service- some-number @gcp-sa-datafusion.iam.gserviceaccount.com
Требуемый доступ Storage Object Viewer
roles/storage.objectViewer
для конкретных сегментов хранилища в проекте источника данных BigQuery Data Viewer
roles/bigquery.dataViewer
для проекта источника данных или выделенного сегмента хранилища Storage Admin
roles/storage.admin
для проекта источника данных или выделенного сегмента хранилища Учетная запись службы Dataproc Цель Учетная запись службы dataproc отвечает за запуск конвейеров данных в фоновом режиме. Формат some-number -compute@developer.gserviceaccount.com
Требуемый доступ Storage Admin
roles/storage.admin
как для проектов источника данных , так и для проектов назначения или выделенного сегмента хранилища BigQuery Job User
roles/bigquery.jobUser
для проекта « Назначение » Учетная запись службы UPDM Цель Учетная запись службы UPDM используется для запуска соответствующего задания. Формат service- some-number @gcp-sa-adsdataconnector.iam.gserviceaccount.com
Требуемый доступ BigQuery Data Viewer
roles/bigquery.dataViewer
для проекта « Назначение » BigQuery Job User
roles/bigquery.jobUser
для проекта « Назначение » отдел продаж
Вскоре
Принимать собственные данные
Форматировать данные для ввода
Ваши данные должны соответствовать этим требованиям к форматированию для правильного сопоставления:
- Если указано, вы должны загружать с использованием хеширования SHA256, закодированного в виде строки Base16. Хотя UPDM поддерживает Base64, это отличается от рекомендаций Google Ads Customer Match .
- Поля ввода должны быть отформатированы как строки. Если вы используете хэш-функцию BigQuery SHA256 и функцию кодирования Base16 ( TO_HEX ), используйте следующее преобразование:
TO_HEX(SHA256(user_data))
.
ID пользователя
- Простой текст
- Хэширование: нет
Эл. адрес
- Удалить пробелы
- Все символы в нижнем регистре
- Включите доменное имя для всех адресов электронной почты, например gmail.com или hotmail.co.jp.
- Удалите ударения, например, замените è, é, ê или ë на e
- Хэширование: SHA256 в кодировке Base16
Допустимо: TO_HEX(SHA256("jeffersonloveshiking@gmail.com"))
Неверный: TO_HEX(SHA256("JéffersonLôvesHiking@gmail.com"))
Телефон
- Удалить пробелы
- Отформатируйте в формате E.164 — например, США +14155552671, Великобритания +442071838750)
- Включить код страны (включая США)
- Удалите все специальные символы, кроме «+» перед кодом страны.
- Хэширование: SHA256 в кодировке Base16
Допустимо: TO_HEX(SHA256("+18005550101"))
Неверно: TO_HEX(SHA256("(800) 555-0101"))
Имя
- Удалить пробелы
- Все символы в нижнем регистре
- Удалите все префиксы, такие как Mrs.
- Не удаляйте акценты, например è, é, ê или ë
- Хэширование: SHA256 в кодировке Base16
Допустимо: TO_HEX(SHA256("daní"))
Неверно: TO_HEX(SHA256("Daní"))
Фамилия
- Удалить пробелы
- Все символы в нижнем регистре
- Удалите все префиксы, такие как Jr.
- Не удаляйте акценты, например è, é, ê или ë
- Хэширование: SHA256 в кодировке Base16
Допустимо: TO_HEX(SHA256("delacruz"))
Неверно: TO_HEX(SHA256("de la Cruz, Jr."))
Страна
- Включите код страны, даже если все ваши данные о клиентах из одной и той же страны.
- Не хешировать данные о стране
- Используйте коды стран ISO 3166-1 alpha-2 .
- Хэширование: нет
Действительно: US
Недействительно: United States of America
или USA
.
Почтовый индекс
- Не хешируйте данные почтового индекса
- Допускаются как американские, так и международные почтовые индексы и почтовые индексы.
- Для нас:
- Допускаются 5-значные коды, например, 94043.
- Допускается также 5 цифр, за которыми следует 4-значный добавочный номер, например, 94043-1351 или 940431351.
- Для всех остальных стран:
- Форматирование не требуется (не нужно использовать строчные буквы или удалять пробелы и специальные символы)
- Не указывать расширения почтовых индексов
- Хэширование: нет
Проверка хэшей и кодирование данных
Вы можете использовать следующие сценарии проверки хэша, чтобы убедиться, что ваши данные правильно отформатированы.
JavaScript
База 16
/**
* @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()
питон
База 16
"""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()
Идти
База 16
/*
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")
}
Ява
База 16
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
База 16
/*
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`;
Присоединить ключи
Некоторые комбинации предоставленных пользователями данных более эффективны, чем другие. Вот список различных комбинаций данных, предоставленных пользователями, ранжированных по относительной силе:
- Электронная почта, телефон, адрес (самый сильный)
- Телефон, Адрес
- Адрес электронной почты
- электронная почта, телефон
- Адрес
- Телефон
- Электронная почта (самая слабая)
Создайте таблицу соответствий
- Щелкните Соединения > Сопоставление данных > Создать соединение .
- Выберите источник данных, затем нажмите Подключить . Выполните аутентификацию, если будет предложено, затем нажмите «Далее ».
- Настройте источник данных, затем нажмите «Далее »:
Большой запрос
Выберите таблицу BigQuery для импорта.
Облачное хранилище
Введите путь к файлу gsutil, например
gs://my-bucket/folder/
, и выберите форматирование файла.отдел продаж
Вскоре
- Укажите пункт назначения , затем нажмите «Далее »:
- Выберите новый набор данных BigQuery, который будет использоваться в качестве промежуточного назначения для данных. Этот шаг гарантирует, что ваши данные правильно отформатированы .
- Необязательно: измените формат ваших данных. Преобразования включают вычисление хэша, форматирование нижнего/верхнего регистра и слияние/разделение полей.
- Нажмите «Действие» > > «Преобразовать» .
- На появившейся панели нажмите « Добавить преобразование » или « Добавить другое преобразование ».
- Выберите тип преобразования из раскрывающегося меню и введите требования.
- Нажмите Сохранить .
- Выберите хотя бы один ключ объединения для сопоставления полей, которые вы будете использовать, затем нажмите « Далее » .
- Установите расписание:
- Назовите свое соединение.
- Установите частоту, определяющую, как часто данные будут импортироваться в набор данных, который вы выбрали на предыдущем шаге. Каждый запуск перезаписывает данные в целевой таблице.
- Укажите, как вы хотите обрабатывать конфликты идентификаторов пользователей. Вы можете выбрать между сохранением существующего совпадения или перезаписью новых данных.
- Нажмите Готово .
Просмотр сведений о подключении
Страница сведений о подключении предоставляет информацию о последних запусках и ошибках данного подключения. Чтобы просмотреть сведения о конкретном подключении:
- Щелкните Подключения > Сопоставление данных .
- Щелкните имя подключения, чтобы просмотреть сведения о нем.
- Теперь вы можете просмотреть сведения о подключении и недавние запуски. Каждый показывает два возможных типа ошибок: ошибки уровня соединения (соединение не установлено) и ошибки уровня строки (строка не была импортирована).
- Статус Failed указывает на то, что не удалось запустить все подключение (например, проблема с разрешением учетной записи службы). Нажмите на статус ошибки, чтобы увидеть, какие ошибки повлияли на соединение.
- Статус « Завершено » указывает на то, что соединение установлено успешно. Однако по-прежнему могут быть ошибки на уровне строк, на что указывает ненулевое значение в столбце «Строки с ошибками». Щелкните значение, чтобы узнать больше о том, какие записи не удалось выполнить.
Изменить подключение
Редактирование подключений пока не поддерживается. Чтобы изменить соединение, создайте новое, а затем удалите старое.
Запрос данных в Ads Data Hub
Запросите таблицы соответствий
Когда ваши таблицы соответствий содержат достаточно данных для проверки конфиденциальности, вы готовы выполнять запросы к таблицам. Каждая таблица в схеме Ads Data Hub, содержащая поле user_id
, сопровождается таблицей *_match
. Например, для таблицы adh.google_ads_impressions
Ads Data Hub также создает таблицу соответствия adh.google_ads_impressions_match
, содержащую только идентификаторы пользователей. Эти таблицы содержат подмножество пользователей, доступных в исходных таблицах, где есть совпадение по user_id
. Например, если исходная таблица содержит данные для пользователя А и пользователя Б, но сопоставлен только пользователь А, то пользователь Б не будет в таблице соответствия.
Таблицы соответствий содержат дополнительный столбец с именем external_cookie
, который хранит ваш файл cookie в формате BYTES.
Поле external_cookie содержит ваш идентификатор в виде BYTES. Вам нужно преобразовать свой ключ соединения в BYTES для успешных совпадений.
JOIN ON
google_data_imp.external_cookie = CAST(my_data.user_id AS BYTES)
Используйте таблицы соответствия, запрашивая представления *_match
таблиц рекламных событий. Если вы также используете сопоставление файлов cookie , вы можете фильтровать запросы по типу соответствия. Использовать:
-
match_type = 1
для сопоставления файлов cookie -
match_type = 2
для сопоставления данных, предоставленных пользователем
Хотя match_type
разрешен в запросах, это поле не может быть возвращено в результатах, поэтому вам не следует включать его в окончательный SELECT
.
Примеры запросов
Подсчитать подходящих пользователей
Этот запрос подсчитывает количество соответствующих пользователей в таблице показов Google Рекламы.
/* Count matched users in Google Ads impressions table */
SELECT COUNT(DISTINCT user_id)
FROM adh.google_ads_impressions_match
Подсчет предоставленных пользователем данных соответствует пользователям
Этот запрос подсчитывает количество сопоставленных пользователей по типу соответствия. Поскольку таблицы рекламных событий содержат события как от вошедших, так и не вошедших пользователей, фильтрация сопоставления данных, предоставленных пользователями, приведет к сопоставлению только вошедших пользователей.
/* 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
Этот запрос показывает, как объединить собственные данные с данными Google Рекламы:
/* 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
Этот запрос подсчитывает количество пользователей, сопоставленных с предоставленными пользователями данными, за исключением пользователей с сопоставленными файлами cookie. Имейте в виду, что таблицы рекламных событий содержат события как от вошедших, так и не вошедших пользователей, поэтому фильтрация по совпадению данных, предоставленных пользователями, приведет к сопоставлению только вошедших пользователей.
/* 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
Соединения
Для получения ценной информации о рекламе часто требуется объединение данных из нескольких источников. Создание собственного решения этой проблемы конвейера данных требует значительных временных и инженерных затрат. Connections упрощает этот процесс, предоставляя пошаговый управляемый интерфейс для импорта, преобразования и записи данных в BigQuery. После записи данных вы можете использовать их в запросах Ads Data Hub или любом другом продукте, который считывает данные из BigQuery. Обогащение ваших запросов данными из первых рук может повысить качество обслуживания клиентов и повысить устойчивость к общеотраслевым изменениям в отслеживании рекламы.
Кроме того, в Connections встроены инструменты, которые позволяют вам шифровать и передавать личную информацию (PII) партнерам, ориентируясь на конфиденциальность. После выбора столбцов, содержащих PII, Connections шифрует данные, гарантируя, что ваши собственные данные могут быть экспортированы или прочитаны только людьми, у которых есть на это разрешение.
Вы можете использовать Connections для импорта данных из:
Узнать, какие исходные данные необходимы для вашего варианта использования для измерения или активации, может быть сложно, поэтому Connections предоставляет исчерпывающий список предопределенных вариантов использования , а затем проведет вас через весь процесс извлечения, преобразования и загрузки ваших данных.
Различия между вашими данными 1P и сопоставлением данных
Рабочий процесс настройки предоставленной пользователем таблицы соответствий аналогичен созданию обычного основного подключения к данным через Connections. Однако требование двух проектов предполагает, что вы настраиваете Connections перед использованием сопоставления данных, предоставленных пользователем. Если вы используете Connections только как инструмент подготовки данных, вы можете использовать один проект Google Cloud.
Дополнительные требования для сопоставления предоставленных пользователем данных:
- Вы должны использовать электронную почту, телефон, адрес или любую комбинацию в качестве ключа присоединения.
- Вы должны указать, как разрешаются коллизии user_id. Вы можете выбрать между сохранением существующего совпадения или перезаписью новых данных.
- Вы должны использовать учетную запись службы UPDM в дополнение к учетным записям datafusion и dataproc.
Ваш рабочий процесс данных 1P
Создать соединение
- Нажмите « Подключения »> «Ваши данные 1P »> « Создать подключение ».
- Подключиться к источнику данных. Вам будет предложено пройти аутентификацию.
Большой запрос
Разрешения основаны на вашей учетной записи Google, поэтому дополнительная аутентификация не требуется. Убедитесь, что учетные записи службы Connections имеют доступ для чтения к таблице.
Облачное хранилище
Разрешения основаны на вашей учетной записи Google, поэтому дополнительная аутентификация не требуется. Убедитесь, что учетные записи службы Connections имеют доступ на чтение к сегменту хранилища.
отдел продаж
(Вскоре)
Для входа используйте учетные данные Salesforce вашей организации. Google не хранит ваши учетные данные, поэтому для каждого нового подключения Salesforce потребуется повторная аутентификация.
- Выберите вариант использования и ключ соединения , затем нажмите « Выбрать вариант использования» . Если вы не хотите выбирать вариант использования, нажмите « Пропустить » . Позже вы не сможете выбрать вариант использования.
- Настройте источник данных .
Большой запрос
Выберите таблицу BigQuery для импорта.
Облачное хранилище
Введите путь к файлу gsutil, например
gs://my-bucket/folder/
, и выберите форматирование файла.отдел продаж
Вскоре
- Настройте пункт назначения и поля карты.
- Выберите проект Google Cloud, набор данных и таблицу, в которую вы хотите записать результаты. Убедитесь, что учетные записи службы Connections имеют доступ на запись к набору данных, в который вы будете записывать данные.
- Каждое соединение будет создавать новую таблицу для записи. Если вы выберете уже существующую таблицу, вы увидите ошибку.
- Сопоставьте поля назначения (поля, которые появятся в создаваемой таблице) с исходными полями в ваших исходных данных.
- Установите расписание.
- Назовите свое соединение.
- Установите частоту, определяющую, как часто данные будут импортироваться в набор данных, который вы выбрали на предыдущем шаге. Каждый запуск перезаписывает данные в целевой таблице.
- Щелкните Готово . Соединения, которые обрабатывают большие объемы данных, могут выполняться несколько часов.
Просмотр сведений о подключении
Страница сведений о подключении предоставляет информацию о последних запусках и ошибках данного подключения. Чтобы просмотреть сведения о конкретном подключении:
- Щелкните Подключения > Ваши данные 1P .
- Щелкните имя подключения, чтобы просмотреть сведения о нем.
- Теперь вы можете просмотреть сведения о подключении и недавние запуски. Каждый показывает два возможных типа ошибок: ошибки уровня соединения (соединение не установлено) и ошибки уровня строки (строка не была импортирована).
- Статус Failed указывает на то, что не удалось запустить все подключение (например, проблема с разрешением учетной записи службы). Нажмите на статус ошибки, чтобы увидеть, какие ошибки повлияли на соединение.
- Статус « Завершено » указывает на то, что соединение установлено успешно. Однако по-прежнему могут быть ошибки на уровне строк, на что указывает ненулевое значение в столбце «Строки с ошибками». Щелкните значение, чтобы узнать больше о том, какие записи не удалось выполнить.
Изменить подключение
Редактирование подключений пока не поддерживается. Чтобы изменить подключение, создайте новое и удалите старое.
Сценарии использования
Выбранный вариант использования влияет на схему целевой таблицы и импортированные ключевые поля объединения. Разверните примеры использования ниже, чтобы узнать, как они влияют на схему и ключи соединения:
Охват и частота
Измеряйте охват и частоту кампаний по каналам и устройствам с разбивкой по пользовательским сегментам 1P.
Имя поля | Описание | Тип | Обязательный/необязательный |
---|---|---|---|
ключ присоединения | Изменения в зависимости от того, какой ключ присоединения вы используете | нить | Необходимый |
Пол | Пол | нить | По желанию |
возраст | Возраст | инт | По желанию |
город | Город | нить | По желанию |
страна | Страна | нить | По желанию |
lifecycle_state | Состояние клиентской воронки: неизвестно, онбординг, вовлеченность, истек срок действия и т. д. | нить | По желанию |
лояльность_статус | Серебро, золото, платина, бриллиант и т.д. | нить | По желанию |
last_purchase_date | Дата последней покупки (временная метка эпохи Unix) | инт | По желанию |
last_purchase_product | Последний купленный/использованный продукт | нить | По желанию |
last_contacted_date | Дата последнего контакта/помолвки (временная метка эпохи Unix) | инт | По желанию |
LTV | LTV клиента | инт | По желанию |
тип_подписки | Подпродукт / тип подписки, который есть у клиента — например, люкс, семейный план | нить | По желанию |
ID транзакции | Уникальный идентификатор для этой транзакции | нить | По желанию |
Дата сделки | Дата транзакции (временная метка эпохи Unix) | инт | По желанию |
transaction_revenue | Доход от сделки | инт | По желанию |
валюта | Тип валюты транзакции | нить | По желанию |
количество | Количество товаров в сделке | нить | По желанию |
цена | Цена за товар в сделке | инт | По желанию |
Стоимость сделки | Стоимость товаров/услуг от сделки | инт | По желанию |
transaction_profit | Валовая прибыль от сделки | инт | По желанию |
Код товара | SKU/ID товара(ов) в транзакции | нить | По желанию |
описание_транзакции | Другое описание/метаданные/параметры о транзакции | нить | По желанию |
тип события | Например, показ телевизионной рекламы, маркетинговая электронная почта, посещение веб-сайта, посещение магазина и т. д. | нить | По желанию |
event_id | Уникальный идентификатор события выше | нить | По желанию |
event_timestamp | Дата события (отметка времени эпохи Unix) | инт | По желанию |
channel_metadata | Дополнительные метаданные или информация об этом канале Touchpoint | нить | По желанию |
Мультисенсорная атрибуция
Измеряйте атрибуцию, объединяя точки взаимодействия 1P с точками взаимодействия из данных Google.
Имя поля | Описание | Тип | Обязательный/необязательный |
---|---|---|---|
ключ присоединения | Изменения в зависимости от того, какой ключ присоединения вы используете | нить | Необходимый |
тип события | Например, показ телевизионной рекламы, маркетинговая электронная почта, посещение веб-сайта, посещение магазина и т. д. | нить | Необходимый |
event_id | Уникальный идентификатор события выше | нить | Необходимый |
event_timestamp | Дата события (отметка времени эпохи Unix) | инт | Необходимый |
кредит | Значение кредита (используется для атрибуции) — например, количество конверсий. | инт | По желанию |
channel_metadata | Дополнительные метаданные или информация об этом канале Touchpoint | нить | По желанию |
Показатели эффективности
Измеряйте эффективность кампании с разбивкой по демографическим данным, интересам или пользовательским сегментам 1P.
Имя поля | Описание | Тип | Обязательный/необязательный |
---|---|---|---|
ключ присоединения | Изменения в зависимости от того, какой ключ присоединения вы используете | нить | Необходимый |
Пол | Пол | нить | По желанию |
возраст | Возраст | инт | По желанию |
город | Город | нить | По желанию |
страна | Страна | нить | По желанию |
lifecycle_state | Состояние клиентской воронки: неизвестно, онбординг, вовлеченность, истек срок действия и т. д. | нить | По желанию |
лояльность_статус | Серебро, золото, платина, бриллиант и т.д. | нить | По желанию |
last_purchase_date | Дата последней покупки (временная метка эпохи Unix) | инт | По желанию |
last_purchase_product | Последний купленный/использованный продукт | нить | По желанию |
last_contacted_date | Дата последнего контакта/помолвки (временная метка эпохи Unix) | инт | По желанию |
LTV | LTV клиента | инт | По желанию |
тип_подписки | Подпродукт / тип подписки, который есть у клиента — например, люкс, семейный план | нить | По желанию |
Путь к атрибуции конверсий
Анализируйте эффективность путей конверсии с помощью настраиваемых точек взаимодействия, включая точки взаимодействия 1P.
Имя поля | Описание | Тип | Обязательный/необязательный |
---|---|---|---|
ключ присоединения | Изменения в зависимости от того, какой ключ присоединения вы используете | нить | Необходимый |
тип события | Например, показ телевизионной рекламы, маркетинговая электронная почта, посещение веб-сайта, посещение магазина и т. д. | нить | Необходимый |
event_id | Уникальный идентификатор события выше | нить | Необходимый |
event_timestamp | Дата события (отметка времени эпохи Unix) | инт | Необходимый |
кредит | Значение кредита (используется для атрибуции) — например, количество конверсий. | инт | По желанию |
channel_metadata | Дополнительные метаданные или информация об этом канале Touchpoint | нить | По желанию |
Перекрытие между издателями
Анализируйте охват и частоту кампаний по издателям с разбивкой по пользовательским сегментам 1P.
Имя поля | Описание | Тип | Обязательный/необязательный |
---|---|---|---|
ключ присоединения | Изменения в зависимости от того, какой ключ присоединения вы используете | нить | Необходимый |
Пол | Пол | нить | По желанию |
возраст | Возраст | инт | По желанию |
город | Город | нить | По желанию |
страна | Страна | нить | По желанию |
lifecycle_state | Состояние клиентской воронки: неизвестно, онбординг, вовлеченность, истек срок действия и т. д. | нить | По желанию |
лояльность_статус | Серебро, золото, платина, бриллиант и т.д. | нить | По желанию |
last_purchase_date | Дата последней покупки (временная метка эпохи Unix) | инт | По желанию |
last_purchase_product | Последний купленный/использованный продукт | нить | По желанию |
last_contacted_date | Дата последнего контакта/помолвки (временная метка эпохи Unix) | инт | По желанию |
LTV | LTV клиента | инт | По желанию |
тип_подписки | Подпродукт / тип подписки, который есть у клиента — например, люкс, семейный план | нить | По желанию |
Одновременная работа кампании
Измеряйте влияние параллельных кампаний на производительность по сегментам пользователей 1P.
Имя поля | Описание | Тип | Обязательный/необязательный |
---|---|---|---|
ключ присоединения | Изменения в зависимости от того, какой ключ присоединения вы используете | нить | Необходимый |
Пол | Пол | нить | По желанию |
возраст | Возраст | инт | По желанию |
город | Город | нить | По желанию |
страна | Страна | нить | По желанию |
lifecycle_state | Состояние клиентской воронки: неизвестно, онбординг, вовлеченность, истек срок действия и т. д. | нить | По желанию |
лояльность_статус | Серебро, золото, платина, бриллиант и т.д. | нить | По желанию |
last_purchase_date | Дата последней покупки (временная метка эпохи Unix) | инт | По желанию |
last_purchase_product | Последний купленный/использованный продукт | нить | По желанию |
last_contacted_date | Дата последнего контакта/помолвки (временная метка эпохи Unix) | инт | По желанию |
LTV | LTV клиента | инт | По желанию |
тип_подписки | Подпродукт / тип подписки, который есть у клиента — например, люкс, семейный план | нить | По желанию |
ID транзакции | Уникальный идентификатор для этой транзакции | нить | По желанию |
Дата сделки | Дата транзакции (временная метка эпохи Unix) | инт | По желанию |
transaction_revenue | Доход от сделки | инт | По желанию |
валюта | Тип валюты транзакции | нить | По желанию |
количество | Количество товаров в сделке | нить | По желанию |
цена | Цена за товар в сделке | инт | По желанию |
Стоимость сделки | Стоимость товаров/услуг от сделки | инт | По желанию |
transaction_profit | Валовая прибыль от сделки | инт | По желанию |
Код товара | SKU/ID товара(ов) в транзакции | нить | По желанию |
описание_транзакции | Другое описание/метаданные/параметры о транзакции | нить | По желанию |
тип события | Например, показ телевизионной рекламы, маркетинговая электронная почта, посещение веб-сайта, посещение магазина и т. д. | нить | По желанию |
event_id | Уникальный идентификатор события выше | нить | По желанию |
event_timestamp | Дата события (отметка времени эпохи Unix) | инт | По желанию |
channel_metadata | Дополнительные метаданные или информация об этом канале Touchpoint | нить | По желанию |
Сравнение кампаний
Сравните эффективность кампаний Google и кампаний других издателей.
Имя поля | Описание | Тип | Обязательный/необязательный |
---|---|---|---|
ключ присоединения | Изменения в зависимости от того, какой ключ присоединения вы используете | нить | Необходимый |
канал | Канал, на котором проводилась эта кампания (например, Facebook, TV и т. д.) | нить | Необходимый |
партнер | Имя партнера, если участвует | нить | По желанию |
тактика | Название конкретной тактики | нить | По желанию |
кампания_метаданные | Дополнительные метаданные или информация об этой кампании | нить | По желанию |
свидание | Дата активности кампании (временная метка эпохи Unix) | инт | Необходимый |
впечатления | Количество показов из этой кампании в этот день | инт | Необходимый |
клики | Количество кликов из этой кампании в этот день | инт | Необходимый |
конверсии | Количество конверсий из этой кампании на эту дату | инт | Необходимый |
Стоимость | Общая стоимость этой кампании на эту дату | инт | Необходимый |
Сравнение сходства и меток
Найдите совпадения между вашими сегментами пользователей 1P и сегментами аудитории Google по интересам и аудитории заинтересованных покупателей.
Имя поля | Описание | Тип | Обязательный/необязательный |
---|---|---|---|
ключ присоединения | Изменения в зависимости от того, какой ключ присоединения вы используете | нить | Необходимый |
Пол | Пол | нить | По желанию |
возраст | Возраст | инт | По желанию |
город | Город | нить | По желанию |
страна | Страна | нить | По желанию |
lifecycle_state | Состояние клиентской воронки: неизвестно, онбординг, вовлеченность, истек срок действия и т. д. | нить | По желанию |
лояльность_статус | Серебро, золото, платина, бриллиант и т.д. | нить | По желанию |
last_purchase_date | Дата последней покупки (временная метка эпохи Unix) | инт | По желанию |
last_purchase_product | Последний купленный/использованный продукт | нить | По желанию |
last_contacted_date | Дата последнего контакта/помолвки (временная метка эпохи Unix) | инт | По желанию |
LTV | LTV клиента | инт | По желанию |
тип_подписки | Подпродукт / тип подписки, который есть у клиента — например, люкс, семейный план | нить | По желанию |
Анализ конверсий приложений
Измеряйте влияние кампании на поведение в приложении.
Имя поля | Описание | Тип | Обязательный/необязательный |
---|---|---|---|
ключ присоединения | Изменения в зависимости от того, какой ключ присоединения вы используете | нить | Необходимый |
свидание | Дата активности мобильного приложения (временная метка эпохи Unix) | инт | Необходимый |
установить | Логическое значение, указывающее, было ли в этот день зарегистрировано событие установки. | логический | Необходимый |
Регистрация | Логическое значение, указывающее, было ли в этот день зарегистрировано событие регистрации. | логический | Необходимый |
авторизоваться | Логическое значение, указывающее, было ли в этот день зарегистрировано событие входа в систему. | логический | Необходимый |
in_app_purchases | Общая сумма покупок в приложении в этот день | инт | Необходимый |
Расчет рентабельности инвестиций
Измеряйте дополнительную отдачу на основе данных о конверсиях 1P.
Имя поля | Описание | Тип | Обязательный/необязательный |
---|---|---|---|
ключ присоединения | Изменения в зависимости от того, какой ключ присоединения вы используете | нить | Необходимый |
ID транзакции | Уникальный идентификатор для этой транзакции | нить | Необходимый |
Дата сделки | Дата транзакции (временная метка эпохи Unix) | инт | Необходимый |
transaction_revenue | Доход от сделки | инт | Необходимый |
валюта | Тип валюты транзакции | нить | По желанию |
количество | Количество товаров в сделке | нить | По желанию |
цена | Цена за товар в сделке | инт | По желанию |
Стоимость сделки | Стоимость товаров/услуг от сделки | инт | По желанию |
transaction_profit | Валовая прибыль от сделки | инт | По желанию |
Код товара | SKU/ID товара(ов) в транзакции | нить | По желанию |
описание_транзакции | Другое описание/метаданные/параметры о транзакции | нить | По желанию |
Активация пользовательской аудитории
Создавайте и активируйте пользовательские сегменты на основе ваших данных 1P и данных Google.
Имя поля | Описание | Тип | Обязательный/необязательный |
---|---|---|---|
ключ присоединения | Изменения в зависимости от того, какой ключ присоединения вы используете | нить | Необходимый |
Пол | Пол | нить | По желанию |
возраст | Возраст | инт | По желанию |
город | Город | нить | По желанию |
страна | Страна | нить | По желанию |
lifecycle_state | Состояние клиентской воронки: неизвестно, онбординг, вовлеченность, истек срок действия и т. д. | нить | По желанию |
лояльность_статус | Серебро, золото, платина, бриллиант и т.д. | нить | По желанию |
last_purchase_date | Дата последней покупки (временная метка эпохи Unix) | инт | По желанию |
last_purchase_product | Последний купленный/использованный продукт | нить | По желанию |
last_contacted_date | Дата последнего контакта/помолвки (временная метка эпохи Unix) | инт | По желанию |
LTV | LTV клиента | инт | По желанию |
тип_подписки | Подпродукт / тип подписки, который есть у клиента — например, люкс, семейный план | нить | По желанию |
Пользовательские ставки
Оптимизируйте стратегии назначения ставок в Дисплее и Видео 360 на основе ваших данных 1P и данных Google.
Имя поля | Описание | Тип | Обязательный/необязательный |
---|---|---|---|
ключ присоединения | Изменения в зависимости от того, какой ключ присоединения вы используете | нить | Необходимый |
Пол | Пол | нить | По желанию |
возраст | Возраст | инт | По желанию |
город | Город | нить | По желанию |
страна | Страна | нить | По желанию |
lifecycle_state | Состояние клиентской воронки: неизвестно, онбординг, вовлеченность, истек срок действия и т. д. | нить | По желанию |
лояльность_статус | Серебро, золото, платина, бриллиант и т.д. | нить | По желанию |
last_purchase_date | Дата последней покупки (временная метка эпохи Unix) | инт | По желанию |
last_purchase_product | Последний купленный/использованный продукт | нить | По желанию |
last_contacted_date | Дата последнего контакта/помолвки (временная метка эпохи Unix) | инт | По желанию |
LTV | LTV клиента | инт | По желанию |
тип_подписки | Подпродукт / тип подписки, который есть у клиента — например, люкс, семейный план | нить | По желанию |
Кросс-издательская производительность
Измеряйте показатели производительности по издателям или по издателям и вашим сегментам пользователей 1P.
Имя поля | Описание | Тип | Обязательный/необязательный |
---|---|---|---|
ключ присоединения | Изменения в зависимости от того, какой ключ присоединения вы используете | нить | Необходимый |
Пол | Пол | нить | По желанию |
возраст | Возраст | инт | По желанию |
город | Город | нить | По желанию |
страна | Страна | нить | По желанию |
lifecycle_state | Customer funnel state: unknown, onboarding, engaged, lapsed, etc. | string | Optional |
loyalty_status | Silver, gold, platinum, diamond, etc. | string | Optional |
last_purchase_date | Date of last purchase (Unix epoch timestamp) | int | Optional |
last_purchase_product | Product last purchased / consumed | string | Optional |
last_contacted_date | Date of last contact / engagement (Unix epoch timestamp) | int | Optional |
LTV | Customer LTV | int | Optional |
subscription_type | Subproduct / subscription type that a customer has - eg deluxe, family plan | string | Optional |