Налаштування цілей та подій Google Analytics на 1С-Бітрікс

Наша компанія займається розробкою, підтримкою та обслуговуванням рішень на Бітрікс та Бітрікс24 будь-якої складності. Від простих односторінкових сайтів до складних інтернет-магазинів, CRM систем з інтеграцією 1С та телефонії. Досвід розробників підтверджено сертифікатами від вендора.
Пропоновані послуги
Показано 1 з 1 послугУсі 1626 послуг
Налаштування цілей та подій Google Analytics на 1С-Бітрікс
Проста
~1 робочий день
Часті питання

Наші компетенції:

Етапи розробки

Останні роботи

  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    585
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    751
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    657
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    989

Налаштування цілей і подій Google Analytics на 1С-Бітрікс

GA4 повністю відмовився від класичних «цілей» на користь подій — конверсією тепер стає будь-яка подія, позначена як ключова. На сайтах 1С-Бітрікс основні точки конверсії: оформлення замовлення, заявка через форму, дзвінок через колтрекінг, додавання до кошика. Проблема в тому, що стандартні компоненти 1С-Бітрікс не генерують події GA4 з коробки — потрібна ручна інтеграція через dataLayer.

Архітектура через dataLayer і GTM

Правильний підхід — не вставляти gtag() напряму в PHP-шаблони, а проштовхувати події через dataLayer у JavaScript, а тригери GTM слухають цей масив.

У шаблоні компонента оформлення замовлення sale.order.ajax (файл result_modifier.php або JS-файл шаблону):

window.dataLayer = window.dataLayer || [];
dataLayer.push({
  'event': 'purchase',
  'ecommerce': {
    'transaction_id': '<?= $arResult['ORDER_ID'] ?>',
    'value': <?= $arResult['PRICE'] ?>,
    'currency': '<?= $arResult['CURRENCY'] ?>',
    'items': []
  }
});

Для форм зворотного зв'язку компонент bitrix:main.feedback викликає подію після відправки через BX.onCustomEvent('onWebFormSuccess', ...). Підписуємося на неї:

BX.addCustomEvent('onWebFormSuccess', function(form) {
  dataLayer.push({ event: 'form_submit', form_id: form.data.FORM_ID });
});

Ключові події для інтернет-магазину

Подія GA4 Тригер у 1С-Бітрікс Компонент
view_item Завантаження картки товару catalog.element
add_to_cart Клік «У кошик» catalog.element, catalog.section
begin_checkout Перехід до оформлення sale.basket.basket
purchase Успішне створення замовлення sale.order.ajax
generate_lead Відправка форми bitrix:main.feedback

Передача даних про товари

Для add_to_cart потрібно передати масив items. Дані про товар доступні в шаблоні компонента через $arResult['ITEM_PRICES'] і $arResult['PROPERTIES']. Формуємо JSON у result_modifier.php і передаємо в глобальну змінну:

$APPLICATION->AddHeadScript(
    '<script>window.__itemData = ' . CUtil::PhpToJSObject($itemData) . ';</script>'
);

Розмітка в GTM

У GTM створюємо тег типу «Google Analytics: подія GA4», тригер — Custom Event з іменем, що відповідає полю event у dataLayer. Змінні типу Data Layer Variable витягують потрібні поля (ecommerce.value, ecommerce.transaction_id).

Що налаштовуємо

  • Розмітку dataLayer.push() для всіх ключових подій: кошик, оформлення, заявка
  • GTM-контейнер з тегами і тригерами для GA4
  • Налагодження через GA4 DebugView і GTM Preview Mode
  • Позначення подій purchase і generate_lead як конверсій в інтерфейсі GA4