Веб-счётчик Sber Ads: параметры, методы, debug-режим, сплиты и хэши

Веб-счётчик настраивают в интерфейсе Статистики от SberAds, а расширяют правкой сгенерированного кода. Параметров 20, обязателен только project; методов 8, среди них trackPageView, trackEvent и syncUserId. Debug включают параметром ?_top100_debug=1 в адресе страницы. Названия сплитов: латиница, цифры и «_», до 64 символов. Хэши в URL считаются при trackHashes: true.

Цифры

Параметры: основные и виджет

ПараметрОбязательностьЧто делает
projectобязательныйидентификатор счётчика; в коде стоит в options, проставляется автоматически при генерации кода
elementнетидентификатор элемента страницы, в который рисуется виджет
widgetColorнетцвет виджета
manualControlнетпереводит отправку всех собранных данных в ручной режим через вызов методов счётчика
checkInitнетуведомление о загрузке счётчика; детали в справке «События счётчика»
ignoreUrlQueryParamsнетфлаг: не собирать данные из query-параметров URL

Параметры: данные пользователя

ПараметрОбязательностьЧто делает
user_id (userId)нетидентификатор авторизованного пользователя
emailнетemail пользователя, при передаче шифруется
email_hash (emailHash)нетemail сразу в зашифрованном виде, sha256
phoneнеттелефон в формате 79999999999, при передаче шифруется
phone_hash (phoneHash)неттелефон сразу в зашифрованном виде, sha256
pub_id (pubId)нетидентификатор пользователя, который генерирует и устанавливает площадка; должен быть постоянным
pub_scope (pubScope)нетобласть применимости pub_id; для web совпадает с доменом, куда ставится идентификатор
sber_id (sberId)нетидентификатор SberId
sber_sub_id (sberSubId)нетидентификатор SberSubId
rambler_id (ramblerId)нетидентификатор RamblerId

Параметры: блоки, хэши, сплиты

ПараметрОбязательностьЧто делает
attributes_datasetнетперечень data-атрибутов разметки блоков для подсчёта показов и нажатий; ставится автоматически, если в интерфейсе заданы настройки аналитики блоков
common_attributesнетто же, но в отличие от attributes_dataset добавляет передачу данных для всех счётчиков на странице
trackHashesнетфлаг: считать хэши, которые используются для навигации по страницам
splitsнетперечень активных сплитов

Методы

МетодЧто делает
trackPageViewотправляет событие о просмотре страницы, принимает URL
trackEventотправляет собственное событие: название и данные события
syncUserIdпередаёт идентификатор авторизованного пользователя или null
getPublisherIdвозвращает идентификатор пользователя, установленный площадкой, и его область применения
drawLogoToрисует виджет в элементе страницы с указанным идентификатором
sendBlocksсканирует страницу и отправляет данные по размеченным блокам
updateOptionsобновляет параметры счётчика
getAdtechIdвозвращает first-party идентификатор, сформированный счётчиком

Значения и ограничения

ЧтоЗначение
Debug включить?_top100_debug=1
Debug выключить_top100_debug=0
Допустимые символы в названии сплитаa-z, A-Z, 0-9, _
Длина названия сплитадо 64 символов
Алгоритм для email_hash и phone_hashsha256
Формат телефона79999999999
Цвет виджета по умолчаниюсиний

Подробности

Как устроен веб-счётчик

Базовый набор отслеживаемых событий настраивается в интерфейсе Статистики. Чтобы расширить состав, например добавить отслеживание кликов по нужным элементам интерфейса, правят сгенерированный код счётчика: добавляют вызов нужных функций и определяют нужные атрибуты. Для каждого экземпляра счётчика на странице можно вызывать разные методы и переопределять разные параметры из числа поддерживаемых.

Перед вызовом любого метода нужно убедиться, что экземпляр счётчика создан и доступен. Если его ещё нет, данные не собираются: их не с чем связать.

Идентификатор пользователя и syncUserId

Справка выделяет четыре вида идентификаторов:

Параметр передачиЧто это
pub_id и pub_scopeсобственный идентификатор площадки, который она сама генерирует и устанавливает
user_idидентификатор авторизованного пользователя
rambler_idидентификатор RamblerId
sber_idидентификатор SberId

Авторизованного пользователя передают методом syncUserId: он принимает идентификатор и отправляет его в счётчик, так что можно переопределить user_id из настроек инициализации. Если человек вышел из аккаунта, передают null. Чтобы статистика строилась в разрезе пользователей, им нужно присвоить уникальные идентификаторы и включать их в данные, которые уходят в счётчик.

Передача user_id создаёт базовое событие login, передача null — базовое событие logout.

Условие для syncUserId: параметр user_id должен быть указан в коде счётчика при инициализации. Если пользователь на тот момент неизвестен, указывают null. Без этого при вызове метода в консоли появится предупреждение.

Три сценария из справки:

1. Человек вышел из аккаунта: вызывают syncUserId с null. 2. Пришёл незалогиненным и вошёл на сайте: при инициализации user_id равен null, после входа через syncUserId передают нужный идентификатор. 3. Пришёл залогиненным, вышел и вошёл снова: при инициализации указан исходный идентификатор, затем через syncUserId передают null (если нужно) и после повторного входа новый идентификатор.

Остальные идентификаторы (например ramblerId) передают методом updateOptions. pub_id и pub_scope можно задать и в параметрах счётчика при инициализации. Чтобы прочитать идентификатор площадки и его область применения, служит getPublisherId: он возвращает строковые значения id и scope.

Другие методы

  • updateOptions принимает объект с параметрами, которые нужно обновить. Метод обновляет ограниченное число параметров конкретного счётчика; с его помощью можно также установить email пользователя. В примерах справки им задают pub_id и email.
  • getAdtechId возвращает first-party идентификатор, сформированный счётчиком.
  • sendBlocks дополнительно ищет на странице элементы, размеченные для аналитики блоков, и отправляет по ним данные. В метод можно передать DOM-элемент: контейнер, внутри которого ищутся показанные блоки.
  • drawLogoTo вызывают на каждой странице, где нужен виджет, передавая идентификатор элемента, в который он рисуется. Тот же идентификатор можно задать параметром element при инициализации.

Цвет виджета

Параметр widgetColor задают в параметрах счётчика, по умолчанию виджет синий. В справке есть таблица готовых значений: код цвета и картинка с вариантом виджета. Всего в таблице 113 кодов, например 000000, 0c797d, 4c5ad4, 9f0500, ab149e, fcdc00.

Debug-режим

Debug проверяет, как работает счётчик и какие у него параметры. Его включают, добавив в адрес страницы GET-параметр ?_top100_debug=1. После этого:

  • на странице появляется эмблема кракена;
  • в DevTools, вкладка Console, идёт журнал событий: название счётчика, его параметры и действия;
  • если используется аналитика блоков, по клику на иконку кракена можно выбрать, показывать ли блоки.

Выключают режим параметром _top100_debug=0. Справка предупреждает, что при включённом блокировщике рекламы функции могут работать нестабильно.

Сплиты

Отчёты Статистики можно разбивать по сплитам. Для этого в параметре splits передают массив активных сплитов: одно или несколько значений, например два названия в массиве. События на странице соотносятся с этим набором.

Названия сплитов: символы a-z, A-Z, 0-9 и «_», длина не более 64. Если названия не подходят, данные сервер не обсчитывает.

Учёт хэшей

Чтобы хэши из навигации по сайту попадали в статистику, в настройках счётчика включают trackHashes со значением true. После этого данные о хэшах появляются во всех отчётах, где показаны полные URL страниц, например: «Популярное», «Страницы входа», «Страницы выхода», «Разделы сайта».

Хэш в URL учитывается, если на странице нет элемента с id, равным хэшу (иначе считается, что это якорная ссылка). Поэтому mysite.com#hash1 и mysite.com#hash2 считаются разными страницами.

Важно знать

  • updateOptions описан как обновляющий «ограниченное количество параметров», при этом отсылает к общему списку параметров счётчика. Какие именно из 20 можно менять после запуска, справка не говорит. Примеры: pub_id и email; email_hash и phone_hash отсылают к этой же странице.
  • В названии страницы про getAdtechId стоит «adtech id и adtech scope», а текст описывает только first-party идентификатор, сформированный счётчиком; про scope ничего нет.
  • Про login и logout справка пишет по-разному. Сначала: при передаче user_id событие login создаётся автоматически, при null — logout. В конце той же страницы: при установке user_id после null «надо отправлять событие base/login null», а при установке null после значения — «base/logout». Нужно ли отправлять эти события вручную, из текста не ясно. Эти же события в других местах справки называют иначе, например «авторизация пользователя» и «смена идентификатора пользователя».
  • Параметр checkInit описан одной строкой и отсылкой к разделу «События счётчика»; что он принимает и что происходит при загрузке, на этих страницах нет.
  • ignoreUrlQueryParams: какие именно query-параметры и в каких отчётах игнорируются, не описано.
  • Таблица widgetColor состоит из 113 строк, превью цветов даны картинками без подписей. В одной строке код 34060 содержит 5 символов вместо 6. Принимаются ли коды вне таблицы, справка не говорит.
  • Для email и phone написано «при передаче данных будет зашифрован», каким способом, не сказано; для готовых email_hash и phone_hash указан sha256.
  • Для сплитов не уточнено, что именно не обсчитывается при неверном названии: только данный сплит или все данные события.
  • Как выглядят эмблема кракена и вывод в консоли, показано на скриншотах без подписей.
  • Страница методов правилась 08.10.2026, страница параметров — 21.01.2025, страницы про отдельные методы, сплиты и хэши — в 2024 году.
  • Оглавление раздела «Настройка сбора и отправки данных» упоминает также Android SDK, iOS SDK, S2S, E-commerce и Аналитику блоков: в этой статье они не разбираются.