Что такое Facebook Conversion API (CAPI) и зачем он нужен
Facebook Conversion API (CAPI) – это инструмент Facebook, позволяющий передавать данные о событиях веб-сайта непосредственно с сервера. В отличие от Facebook Pixel, который работает на стороне клиента (браузера), CAPI обеспечивает более надежную и точную передачу данных, особенно в условиях растущей блокировки cookie и ограничений конфиденциальности.
CAPI помогает решить проблемы, связанные с потерей данных из-за блокировщиков рекламы, ошибок браузера и ограничений iOS 14+. Он позволяет более точно измерять результаты рекламных кампаний, оптимизировать их и получать более полную картину поведения пользователей на вашем сайте.
Преимущества использования CAPI в связке с Google Tag Manager (GTM)
Использование CAPI в связке с Google Tag Manager (GTM) предоставляет следующие преимущества:
- Надежность данных: Более точная и полная передача данных о конверсиях, минимизация потерь данных из-за блокировщиков рекламы и других факторов.
- Улучшенная атрибуция: Более точное определение источников конверсий, что позволяет оптимизировать рекламные кампании.
- Контроль данных: Возможность контролировать, какие данные передаются в Facebook, и настраивать параметры конфиденциальности.
- Простота интеграции: GTM упрощает процесс внедрения CAPI, позволяя управлять настройками без необходимости вносить изменения в код сайта.
- Соответствие требованиям конфиденциальности: Возможность реализовать расширенные настройки конфиденциальности, такие как хеширование данных.
Краткий обзор Google Tag Manager (GTM) и его роли в отслеживании конверсий
Google Tag Manager (GTM) – это система управления тегами, которая позволяет добавлять и обновлять теги отслеживания на веб-сайте без необходимости изменять код. Он играет ключевую роль в отслеживании конверсий, позволяя легко настраивать теги для различных платформ, включая Facebook.
GTM позволяет централизованно управлять всеми тегами отслеживания, упрощает процесс их внедрения и обновления, а также предоставляет инструменты для тестирования и отладки. Использование GTM в связке с CAPI позволяет быстро и эффективно настроить передачу данных о конверсиях в Facebook.
Подготовка к настройке Facebook Conversion API через Google Tag Manager
Необходимые условия: Facebook Business Manager, Pixel, GTM аккаунт
Перед началом настройки убедитесь, что у вас есть:
- Facebook Business Manager: Аккаунт в Facebook Business Manager, который используется для управления вашими рекламными кампаниями и ресурсами.
- Facebook Pixel: Созданный и настроенный Facebook Pixel, который отслеживает события на вашем веб-сайте.
- Google Tag Manager (GTM) аккаунт: Активный аккаунт Google Tag Manager с установленным контейнером на вашем веб-сайте.
Настройка Facebook Pixel в Facebook Business Manager
- Перейдите в Facebook Business Manager.
- Выберите «Источники данных» -> «Пиксели».
- Создайте новый пиксель или выберите существующий.
- Установите пиксель на свой сайт, используя Google Tag Manager.
Проверка домена в Facebook Business Manager
Чтобы использовать CAPI, необходимо подтвердить право собственности на домен вашего веб-сайта в Facebook Business Manager:
- Перейдите в Facebook Business Manager.
- Выберите «Безопасность бренда» -> «Домены».
- Добавьте свой домен и подтвердите его, используя один из предложенных методов (например, загрузка HTML-файла на сервер, добавление DNS-записи).
Получение токена доступа Facebook Pixel
Для отправки данных через CAPI вам потребуется токен доступа Facebook Pixel. Чтобы его получить:
- Перейдите в Facebook Business Manager.
- Выберите «Источники данных» -> «Пиксели».
- Выберите свой пиксель.
- Перейдите во вкладку «Настройки».
- Найдите раздел «Conversion API» и нажмите «Создать токен доступа».
- Скопируйте токен доступа и сохраните его в безопасном месте.
Настройка Facebook Conversion API через Google Tag Manager: Пошаговая инструкция
Создание новых переменных в GTM для передачи данных
Создайте переменные в GTM для хранения данных, которые вы хотите передавать в Facebook через CAPI. Примеры:
pixelId(строка): ID вашего Facebook Pixel.accessToken(строка): Токен доступа Facebook Pixel.eventName(строка): Название события (например,PageView,AddToCart,Purchase).eventValue(переменная уровня данных): Значение события (например, сумма покупки).eventCurrency(переменная уровня данных): Валюта события (например,USD,EUR).userAgent(Javascript-переменная):navigator.userAgent— User Agent браузера пользователя.clientIpAddress(Javascript-переменная, требует доработки): Получение IP-адреса пользователя на сервере (это требует серверной логики и передачи IP в GTM. GTM не может напрямую получить IP пользователя на клиентской стороне).fbp(cookie): значение cookie_fbp.fbc(cookie): значение cookie_fbc.
Настройка триггеров для отслеживания событий (например, просмотр страницы, добавление в корзину, покупка)
Настройте триггеры в GTM для отслеживания различных событий на вашем веб-сайте. Используйте предопределенные события или создайте пользовательские.
Примеры триггеров:
- Просмотр страницы: Триггер типа «Просмотр страницы», который срабатывает на всех страницах или на определенных URL.
- Добавление в корзину: Триггер, срабатывающий при клике на кнопку «Добавить в корзину» или при изменении состояния корзины.
- Покупка: Триггер, срабатывающий на странице подтверждения заказа или при успешной отправке формы заказа.
Создание тега Facebook Conversion API в GTM
- В GTM создайте новый тег типа «Пользовательский HTML».
- Вставьте следующий код, заменив
YOUR_PIXEL_IDиYOUR_ACCESS_TOKENна ваши значения:
<script>
(function() {
var pixelId = {{pixelId}};
var accessToken = {{accessToken}};
var eventName = {{eventName}};
var eventValue = {{eventValue}} || 0;
var eventCurrency = {{eventCurrency}} || 'USD';
var userAgent = {{userAgent}};
var clientIpAddress = {{clientIpAddress}};
var fbp = {{fbp}};
var fbc = {{fbc}};
var eventData = {
event_name: eventName,
event_time: Math.floor(Date.now() / 1000),
user_data: {
client_ip_address: clientIpAddress,
client_user_agent: userAgent,
fbp: fbp,
fbc: fbc
},
custom_data: {
value: eventValue,
currency: eventCurrency
},
data_processing_options: ["LDU"], //Опционально, если вы используете обработку ограниченных данных.
data_processing_options_country: [],
data_processing_options_state: []
};
var url = 'https://graph.facebook.com/v17.0/' + pixelId + '/events?access_token=' + accessToken;
fetch(url, {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify(eventData)
})
.then(response => response.json())
.then(data => console.log('Facebook CAPI Response:', data))
.catch(error => console.error('Facebook CAPI Error:', error));
})();
</script>
- В разделе «Триггеры» выберите триггер, который вы настроили для отслеживания события.
Настройка параметров тега (Pixel ID, Event Name, Event Data)
Убедитесь, что параметры pixelId, accessToken и eventName правильно настроены и соответствуют вашим переменным GTM. Настройте переменные eventValue и eventCurrency, чтобы передавать значение и валюту события.
Настройка пользовательских параметров (например, email, phone) для повышения качества сопоставления
Для повышения качества сопоставления событий передавайте пользовательские параметры, такие как email и phone. Важно хешировать эти данные перед отправкой.
- Создайте переменные GTM для хранения email и phone (например,
userEmail,userPhone). - Используйте JavaScript для хеширования этих данных с использованием алгоритма SHA256:
function sha256(str) {
// Convert string to UTF-8 array
const utf8Encode = new TextEncoder();
const data = utf8Encode.encode(str);
// Hash the data using SHA-256
return crypto.subtle.digest('SHA-256', data)
.then(buffer => {
// Convert buffer to byte array
const byteArray = Array.from(new Uint8Array(buffer));
// Convert byte array to hex string
const hexCodes = byteArray.map(byte => byte.toString(16).padStart(2, '0'));
return hexCodes.join('');
});
}
// Пример использования
async function hashAndLog(email) {
const hashedEmail = await sha256(email);
console.log("Hashed Email: ", hashedEmail);
return hashedEmail;
}
//вызов функции
//hashAndLog({{userEmail}});
- Добавьте хешированные данные в объект
user_dataв теге Facebook Conversion API:
user_data: {
client_ip_address: clientIpAddress,
client_user_agent: userAgent,
fbp: fbp,
fbc: fbc,
em: await hashAndLog({{userEmail}}), //хешированный email
ph: await hashAndLog({{userPhone}}) //хешированный телефон
},
Тестирование и отладка Facebook Conversion API
Использование Facebook Pixel Helper для проверки корректности отправки данных
Установите расширение Facebook Pixel Helper для Chrome. Оно позволяет проверять, какие события отправляются на Facebook Pixel, и выявлять ошибки.
Проверка событий в Facebook Events Manager
Перейдите в Facebook Events Manager и проверьте, что события, отправленные через CAPI, отображаются правильно. Убедитесь, что все параметры (название события, значение, валюта) передаются корректно.
Устранение распространенных ошибок при настройке CAPI
- Неправильный ID пикселя или токен доступа: Убедитесь, что вы правильно скопировали ID пикселя и токен доступа.
- Неправильный формат данных: Проверьте, что данные передаются в правильном формате (например, числовые значения должны быть числами, а не строками).
- Проблемы с сетью: Убедитесь, что ваш сервер может подключаться к серверам Facebook.
- Отсутствие прав доступа: Убедитесь, что у вашего аккаунта есть права доступа к пикселю и API.
Оптимизация и поддержка Facebook Conversion API
Рекомендации по улучшению качества сопоставления событий
- Используйте хеширование данных: Хешируйте email и phone перед отправкой в Facebook, чтобы повысить качество сопоставления событий.
- Передавайте как можно больше данных: Передавайте все доступные данные о пользователе (например, имя, фамилию, город, страну), чтобы улучшить сопоставление.
- Используйте Advanced Matching: Включите Advanced Matching в настройках пикселя, чтобы автоматически сопоставлять события с пользователями Facebook.
Мониторинг производительности CAPI и Pixel
Регулярно мониторьте производительность CAPI и Pixel в Facebook Events Manager. Обращайте внимание на количество полученных событий, качество сопоставления и любые ошибки.
Обновление токена доступа Facebook Pixel
Токен доступа Facebook Pixel имеет срок действия. Регулярно обновляйте токен доступа, чтобы избежать проблем с передачей данных.
Дополнительные возможности CAPI: офлайн конверсии, интеграция с CRM
CAPI позволяет передавать данные не только об онлайн-конверсиях, но и об офлайн-конверсиях (например, звонки в колл-центр, покупки в магазине). Кроме того, CAPI можно интегрировать с CRM-системами для автоматической передачи данных о клиентах в Facebook.