Перейти к содержанию
GetProfit

← Все термины

dataLayer

dataLayer — массив JavaScript на странице сайта, через который сайт передаёт данные, например сведения о заказе, в Google Tag Manager и тег Google.

Как работает

Страница один раз создаёт массив высоко в коде, до контейнера Tag Manager. Затем сайт добавляет в него сообщения через dataLayer.push(): сообщение может называть событие, например purchase, и нести значения. Tag Manager обрабатывает сообщения по одному, по порядку. Он запускает теги, триггеры которых совпали с событием, а его переменные читают значения.

Для магазина главное сообщение — покупка. Бэкенд знает номер заказа, сумму и товары и записывает их в push на странице подтверждения заказа. Теги берут из этого push идентификатор транзакции, ценность конверсии и список товаров. Тот же push питает событие покупки в Google Analytics 4.

Google проектировал свои теги так, чтобы они читали dataLayer, а не собирали сведения, разбросанные по странице. Настройку разбирает наше руководство по событию покупки в Google Tag Manager.

Где встречается

  • Консоль браузера: введите dataLayer, чтобы увидеть все сообщения, отправленные к этому моменту.
  • Google Tag Assistant: показывает dataLayer при каждом событии, пока вы кликаете по сайту.

Пример

Пример на вымышленном магазине, числа не клиентские.

Магазин посуды продаёт обеденный сервиз, товар ds-24, за 600. Его страница подтверждения заказа делает push:

dataLayer.push({ ecommerce: null });
dataLayer.push({
  event: "purchase",
  ecommerce: {
    transaction_id: "10452",
    value: 600,
    currency: "EUR",
    items: [{ item_id: "ds-24", price: 600, quantity: 1 }]
  }
});

Первая строка очищает предыдущий объект ecommerce, как в руководстве Google по GA4. Триггер на purchase запускает теги, и они читают из сообщения значение 600 и заказ 10452.

Не путать с

  • Google Tag Manager — контейнер с тегами, триггерами и переменными. dataLayer только хранит данные: Tag Manager читает то, что сайт в него кладёт.

Верно и неверно

  • Неверно: «Тег, который срабатывает при загрузке страницы подтверждения заказа, считает заказы». Верно: без номера заказа он считает загрузки страницы: перезагрузка может снова запустить его для того же заказа. Push purchase несёт номер и сумму заказа, а Google Ads отбрасывает вторую конверсию с тем же номером заказа.

Источники

  • The data layer (на английском) — установка, push, порядок обработки, Tag Assistant. Проверено 02.10.2026.
  • Measure ecommerce (на английском) — push purchase для GA4. Проверено 02.10.2026.
  • Use a transaction ID to minimize duplicate conversions (на английском) — повторный запуск при перезагрузке, дубли отбрасываются по ID. Проверено 02.10.2026 (архивная копия от 08.06.2026).