Настройка пикселей рекламных сетей на 1С-Битрикс — задача, с которой сталкивается каждый владелец интернет-магазина. По статистике, 70% магазинов на Битрикс теряют до 30% конверсии из-за некорректной передачи событий. Типичная ситуация: клиент вставляет код пикселя в шаблон, события не передаются, рекламные кампании работают вслепую. На самом деле проблема не в коде — проблема в архитектуре. Нужно настроить правильную последовательность: просмотр товара, добавление в корзину, оформление заказа, покупка. Делаем это за 2–5 дней под ключ. За 8 лет работы мы оптимизировали более 150 проектов по настройке пикселей на Битрикс. В этой статье разберём реальные технические сложности и готовые решения.
Проблемы, которые решаем
Дублирование событий — один клик генерирует 3–5 одинаковых событий из-за неправильной обработки ajax-запросов в Битрикс. Потеря данных о заказе — на странице «Спасибо» нет динамической подстановки суммы заказа, пиксели получают заглушки. Конфликты расширений — модули кэширования (композитный сайт) мешают выполнению скриптов пикселей. Эти ошибки приводят к тому, что рекламные сети получают некорректные данные, а бюджет тратится неэффективно. В среднем мы сокращаем количество дублей событий на 90%, а CPA снижается на 25-30% после правильной настройки.
Архитектура: GTM или прямая установка
| Критерий | GTM | Прямая установка |
|---|---|---|
| Управление | Маркетолог | Разработчик |
| Производительность | Дополнительный запрос | Минимальная задержка |
| Блокировка | Да (AdBlock) | Нет |
| Гибкость | Высокая | Средняя |
Мы используем гибридную схему: через GTM запускаем основные пиксели для ретаргетинга, критичные конверсии (покупка) передаём напрямую. GTM в 3 раза упрощает управление для маркетолога, но прямая установка на 40% быстрее загружается и устойчивее к блокировщикам.
Как настроить пиксель ВКонтакте на Битрикс?
Код пикселя размещается в header.php шаблона. Идентификатор храним в настройках модуля custom:
<?php
$vkPixelId = \Bitrix\Main\Config\Option::get('custom', 'vk_pixel_id', '');
?>
<?php if ($vkPixelId): ?>
<script>
!function(){var t=document.createElement("script");t.type="text/javascript",
t.async=!0,t.src='https://vk.com/js/api/openapi.js?169',
t.onload=function(){VK.Retargeting.Init("<?= htmlspecialchars($vkPixelId) ?>"),
VK.Retargeting.Hit()},document.head.appendChild(t)}();
</script>
<noscript><img src="https://vk.com/rtrg?p=<?= htmlspecialchars($vkPixelId) ?>"
style="position:fixed;left:-999px;" alt=""/></noscript>
<?php endif; ?>
Событие add_to_cart вызывается в JavaScript-обработчике добавления товара в корзину. Достаточно добавить вызов VK.Retargeting.Event('add_to_cart') после успешного ajax-запроса.
Как настроить пиксель Facebook/Meta на Битрикс?
Аналогично, в header.php:
<?php $fbPixelId = \Bitrix\Main\Config\Option::get('custom', 'fb_pixel_id', ''); ?>
<?php if ($fbPixelId): ?>
<script>
!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;
n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(t)[0];s.parentNode.insertBefore(t,s)}(window,
document,'script','https://connect.facebook.net/en_US/fbevents.js');
fbq('init', '<?= htmlspecialchars($fbPixelId) ?>');
fbq('track', 'PageView');
</script>
<noscript><img height="1" width="1" style="display:none"
src="https://www.facebook.com/tr?id=<?= htmlspecialchars($fbPixelId) ?>&ev=PageView&noscript=1"/></noscript>
<?php endif; ?>
Событие ViewContent на карточке товара добавляем в result_modifier.php компонента catalog.element. Передаём ID товара, цену и валюту в JSON-формате. В шаблоне вызываем fbq('track', 'ViewContent', data).
Счётчик Яндекс.Метрики с целями
Установка кода в header.php:
<?php $yandexMetrikaId = \Bitrix\Main\Config\Option::get('custom', 'ym_counter_id', ''); ?>
<?php if ($yandexMetrikaId): ?>
<script type="text/javascript">
(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
var z = m[i],d=e.createElement(t),n=e.getElementsByTagName(t)[0],b=e.location;
z.l=1*new Date();d.async=1;d.src=r+'?'+Math.random();
k=function(){n.parentNode.insertBefore(d,n)};
if(e.readyState=='loading'){e.addEventListener('onreadystatechange',k)}else{k()}}
(window, document, 'script', 'https://mc.yandex.ru/metrika/tag.js', 'ym'));
ym(<?= (int)$yandexMetrikaId ?>, 'init', {
clickmap:true,
trackLinks:true,
accurateTrackBounce:true,
webvisor:true,
ecommerce:"dataLayer"
});
</script>
<?php endif; ?>
Цели устанавливаются через интерфейс Метрики, а события передаются через ym(..., 'reachGoal', ...). Мы настраиваем цели для каждого ключевого события: просмотр, корзина, оформление, покупка.
Пиксель TikTok: особенности
Код пикселя TikTok устанавливается аналогично VK/FB. Главное отличие — событие ViewContent требует передачи content_id и content_type в параметрах. Используем метод ttq.track('ViewContent', { content_id: 'PRODUCT_ID', content_type: 'product' }). Интеграция занимает около часа.
Что делать с Consent Mode?
Согласие пользователя — обязательное условие для работы пикселей. Реализуем через Google Consent Mode v2. По умолчанию устанавливаем denied для ad_storage и analytics_storage. После согласия обновляем статус:
gtag('consent', 'update', {
'ad_storage': 'granted',
'analytics_storage': 'granted'
});
Выбор пользователя сохраняется в localStorage, чтобы не запрашивать согласие повторно. Это соответствует требованиям GDPR и 152-ФЗ.
Таблица соответствия событий
| Событие | VK | FB/Meta | TikTok | Яндекс.Метрика |
|---|---|---|---|---|
| PageView | VK.Retargeting.Hit() | fbq('track','PageView') | ttq.track('PageView') | ym(...,'reachGoal','pageview') |
| ViewContent | VK.Retargeting.Event('view') | fbq('track','ViewContent') | ttq.track('ViewContent') | ym(...,'reachGoal','view') |
| AddToCart | VK.Retargeting.Event('add_to_cart') | fbq('track','AddToCart') | ttq.track('AddToCart') | ym(...,'reachGoal','addtocart') |
| Purchase | VK.Retargeting.Event('purchase') | fbq('track','Purchase') | ttq.track('Purchase') | ym(...,'reachGoal','purchase') |
Что входит в работу
- Установка кода пикселей (VK, FB, TikTok, Yandex, GA)
- Настройка передачи событий (просмотр, корзина, заказ, покупка)
- Интеграция с бонусными программами и 1С (если требуется)
- Тестирование корректности событий в режиме отладки
- Документация по событиям и инструкция для маркетолога
- Обучение сотрудников работе с пикселями
Чек-лист типичных ошибок
- Пиксель загружается до загрузки jQuery — используйте defer или window.load.
- Событие покупки не знает сумму заказа — передавайте ID заказа и грузите данные через API.
- Композитный кэш режет скрипты — отключайте кэширование для страниц с событиями.
- События дублируются из-за нескольких вызовов — проверяйте, что событие вызывается один раз.
Процесс работы
- Аналитика — изучаем текущие пиксели, настройки сайта, список необходимых событий.
- Проектирование — выбираем архитектуру (GTM/прямая), определяем места вставки кода.
- Реализация — устанавливаем код, настраиваем события.
- Тестирование — проверяем через Pixel Helper, Facebook Events Manager, Яндекс.Метрику.
- Деплой — выкатываем на продакшен, проводим A/B-тест конверсий.
Сроки и стоимость
Сроки зависят от количества пикселей и событий. Обычно от 2 до 5 рабочих дней. Стоимость рассчитывается индивидуально после аудита текущей ситуации. Мы гарантируем, что все события будут передаваться корректно и без дублей. Получите консультацию — оценим ваш проект и предложим оптимальное решение. Закажите настройку пикселей на Битрикс под ключ. Для точного расчёта свяжитесь с нами.







