[GA4] Как настроить фрагмент кода (Менеджер тегов)

This feature is part of an open beta. Keep in mind that the feature is subject to change.

Эти инструкции предназначены для администраторов и пользователей с правами на редактирование, которые хотят узнать, как настроить фрагмент кода для сбора на сайте данных, предоставленных пользователями, с помощью Google Менеджера тегов.

В отличие от других способов настройки, использование кода позволяет убедиться, что адреса электронной почты, номера телефонов и/или имена и адреса доступны на странице, когда Аналитика собирает данные, предоставленные пользователями.

Обзор

Чтобы настроить фрагмент кода с помощью Google Менеджера тегов, сделайте следующее:

  1. Выберите и определите в коде сайта поля данных, предоставленных пользователями.
  2. Передайте каждое поле данных, предоставленных пользователями, в Google Аналитику с помощью пользовательской переменной JavaScript.

Примечание. В Google Аналитику можно передавать хешированные и нехешированные данные. При передаче нехешированных данных Google хеширует их до того, как сохранить на серверах Google. Но вы можете хешировать данные сами до того, как отправить их Google.

Подготовка

В этой инструкции подразумевается, что у вас:

  • есть доступ к исходному коду сайта;
  • включен сбор данных, предоставленных пользователями, и настроены необходимые разрешения;
  • настроен тег Google Аналитика: событие GA4 в контейнере Менеджера тегов.
  • в ресурсе Google Аналитики предоставлена роль администратора.

Hashing the data

You can send hashed or unhashed data from a website. If you send unhashed data, Google normalizes and hashes the data before the data reaches Google's servers. To ensure Analytics interprets the data correctly and to comply with the User-provided data policy, you must use the correct key name (in the next section).

To hash the data:

To normalize the data:

  • Remove leading or trailing whitespaces.
  • Convert the text to lowercase.
  • Format phone numbers according to the E.164 standard.

Defining the fields in your code

You must provide at least one of these fields:

  • Email (preferred).
  • Address (first name, last name, postal code, and country are required). You can optionally provide street address, city, and region as additional match keys.
  • A phone number can also be provided along with an email or full name and address.

Make sure the data is available when the Google tag fires. If the data is collected on a previous page, make sure it’s available in your code on the current page so you can configure the field.

Fields to set

The following table describes each field you can set. The key name shows how you must reference the field in your code. You must pass the data as a String type. When defining name and address, make sure to define each component as an individual variable (for example, first name, last name, and so on).

Note: If you want to send unhashed data and let Google normalize and hash the data, use the first key name for each data field. For example, email in the Email address data field below. If you want to send hashed data, use the key name that begins with sha256_.

Data Field Key Name Description
Email address email

User email.

Example: ‘jdoe@example.com’

sha256_email_address

Hashed user email.

Example:

‘a8af8341993604f29cd4e0e5a5a4b5d48c575436c38b28abbfd7d481f345d5db’

Phone number phone_number

User phone number. Must be in E.164 format, which means it must be 11 to 15 digits including a plus sign (+) prefix and country code with no dashes, parentheses, or spaces.

Example: ‘+11231234567’

sha256_phone_number

Hashed user phone number.

Example:

‘e9d3eef677f9a3b19820f92696be53d646ac4cea500e5f8fd08b00bc6ac773b1’

First name address.first_name

User first name.

Example: 'John'

address.sha256_first_name

Hashed user first name.

Example:

‘96d9632f363564cc3032521409cf22a852f2032eec099ed5967c0d000cec607a’

Surname address.last_name

User last name.

Example: 'Doe'

address.sha256_last_name

Hashed user last name.

Example:

‘799ef92a11af918e3fb741df42934f3b568ed2d93ac1df74f1b8d41a27932a6f’

Street address address.street User street address. Example: '123 New Rd'
City address.city User city name. Example: `Southampton’
Region address.region User province, state, or region. Example: `Hampshire’
Postal code address.postal_code User post code. Example: 'SO99 9XX'
Country address.country User country code. Example: 'UK'. Use 2-letter country codes, per the ISO 3166-1 alpha-2 standard.

Как изменить тег события с помощью пользовательской переменной JavaScript

Перед тем, как изменять контейнер Менеджера тегов, прочитайте о том, как обновить собственный код JavaScript, который будет добавлен в контейнер.

  1. Войдите в аккаунт Google Менеджера тегов.
  2. На вкладке Рабочая область слева нажмите Теги.
  3. Откройте тег Google Аналитика: событие GA4, с помощью которого вы собираете данные клиентов. В теге события должен использоваться идентификатор потока данных для потока сайта, на котором вы собираете пользовательские данные.
  4. Установите флажок Добавить данные, предоставляемые пользователями, с вашего сайта.
  5. В раскрывающемся меню Пользовательские данные выберите или создайте переменную "Данные, предоставленные пользователями".
  6. Если вы создаете новую переменную, выберите в ней Код.
  7. В раскрывающемся меню Источник данных нажмите Новая переменная.
  8. Нажмите Конфигурация переменной > Собственный код JavaScript.
  9. В верхней части страницы введите название пользовательской переменной JavaScript.
  10. В текстовом поле Собственный код JavaScript введите фрагмент кода. Подробнее о том, как его создать
  11. Сохраните новые переменные, затем сохраните тег события.
  12. В правом верхнем углу нажмите Отправить, чтобы опубликовать изменения.

Как создать фрагмент кода, чтобы собирать данные, предоставленные пользователями

При настройке пользовательской переменной JavaScript в шате 10 можно использовать следующий код:

function () {

return {

"email": yourEmailVariable , // Вместо yourEmailVariable укажите название вашей переменной, в которой хранится адрес электронной почты пользователя.

"phone_number": yourPhoneVariable, // Аналогичным образом замените yourPhoneVariable и остальные названия переменных ниже.

"address": {

"first_name": yourFirstNameVariable ,

"last_name": yourLastNameVariable,

"street": yourStreetAddressVariable,

"city": yourCityVariable,

"region": yourRegionVariable,

"postal_code": yourPostalCodeVariable,

"country": yourCountryVariable

}

}

}

В примерах кода для каждого типа данных замените плейсхолдер переменной (например, yourEmailVariable) названием глобальной переменной JavaScript, в которой хранится этот фрагмент данных. Если на вашем сайте отсутствуют некоторые из этих полей, не оставляйте соответствующие им строки пустыми, а удалите их из кода.

Вы также можете напрямую задать значение поля в коде или использовать функцию вместо переменных.

// Добавьте этот код на страницу.
<script>
gtag('set', 'user_data', {

"sha256_email_address": yourNormalizedandHashedEmailVariable,
"sha256_phone_number": yourNormalizedandHashedPhoneVariable,
"address": {
"address.sha256_first_name": yourNormalizedandHashedFirstNameVariable,
"address.sha256_last_name": yourNormalizedandHashedLastNameVariable,
"city": yourCityVariable,
"region": yourRegionVariable,
"postal_code": yourPostalCodeVariable,
"country": yourCountryVariable
}
});
</script>

Если вы хотите передавать хешированные значения пользовательских данных, можете использовать код, пример которого приведен ниже.

async function processUserData() {
const userData = {

'sha256_email_address': await hashEmail(email.trim()),
'sha256_phone_number': await hashPhoneNumber(phoneNumber),
'address': {
'address.sha256_first_name': await hashName(firstName),
'address.sha256_last_name': await hashName(lastName),
'city': city,
'region': region,
'postal_code': postalCode,
'country': country,
},
};
return userData;

Номер телефона должен быть указан в формате E.164, т. е. начинаться с плюса и состоять из 11–15 цифр, включая код страны, и не содержать тире, скобок и пробелов.

Next steps

Validate that user-provided data collection is set up correctly. Show me how.

Эта информация оказалась полезной?

Как можно улучшить эту статью?
Поиск
Очистить поле поиска
Закрыть поиск
Главное меню
3379418909114837069
true
Поиск по Справочному центру
true
true
true
true
true
69256
false
false