Правильная фильтрация трафика сотрудников в Google Analytics
Как не учитывать в статистике посещений работу сотрудников с сайтом? Эта задача часто возникает, особенно на сайтах с низкой посещаемостью. Ведь на сайтах со среднесуточным трафиком в 15 — 20 тысяч сессий работа 20 сотрудников теряется где-то в статистической погрешности.
Люди-хипстеры в такой ситуации обычно рекомендуют, или сразу делают, фильтр по IP-адресам на представление и кропотливо вбивают в него один или несколько адресов офиса (хорошо если так).
Однако такое решение обладает рядом существенных недостатков, которые для хипстеров неочевидны, а именно:
- IP адреса могут меняться, то есть этот список приходится постоянно держать в актуальном состоянии
- Могут быть подключения на динамических IP, например, через 4G/LTE соединения, при каждом подключении будет выдаваться новый IP
- Сотрудники могут работать (и работают) не из офисной сети, опять же на непредсказуемых IP-адресах
- Обилие фильтров в GA может приводить к ряду проблем (об этом позже)
- Отсутствует ретроспектива, то есть, изменения фильтров отслеживается с момента изменения и нет возможности посмотреть в прошлое
Мы предлагаем вам и используем сами другой, гораздо гибкий способ фильтрации трафика сотрудников, основанный на ролях пользователей. Единственное техническое требование — явная регистрация ролей пользователей.
Роли пользователей
Роли пользователей — это группировка авторизованных пользователей по их типу, например, Клиент, Подписчик, Сотрудник, Администратор и т.п. Понятно, для того, чтобы узнать роль пользователя, система управления контентом сайта должна авторизовать пользователя, то есть, он должен в явном виде ввести логин и пароль. Подавляющее большинство CMS E-commerce сайтов обладают этой функцией. Это может быть авторизация, личный кабинет на сайте и т.п. Не все системы помимо авторизации определяют роль пользователя, но авторизовать пользователя могут практически все.
Итак, первая доработка сайта заключается в том, чтобы для авторизованных пользователей передать в dataLayer информацию о пользователе и его роли.
Рассмотрим это на примере сайта WordPress / WooCommerce. Мы используем плагин
Google Tag Manager for WordPress для работы с dataLayer, и в нем это решается буквально парой кликов:
Но у вас не WordPress, придется попросить разработчиков сделать достаточно простую штуку — при регистрации и/или авторизации пользователя в личном кабинете или в админке сайта явно передать в dataLayer информацию о пользователе.
Примерно так:
window.dataLayer = window.dataLayer || []; window.dataLayer.push({ visitorId : '123', visitorType : 'employee' });
Настроим эту передачу в GTM. Создадим две переменные:
Вот настройка переменной роли:
Далее в Google Analytics настроим два параметра:
Обратите внимание, у обоих параметров область действия — пользователь. Это важно.
Ну и сделаем передачу наших переменных в эти параметры:
Собственно, всё!
Осталось отфильтровать пользователей по роли. Для этого просим всех менеджеров и сотрудников компании явно авторизоваться на сайте на своих компьютерах. Хотя бы один раз.
Создание расширенного сегмента
Теперь идем в Google Analytics и создаем вот такой сегмент:
Все готово!
В отличие от фильтрации по IP, этот способ имеет ретроспективу, то есть, если сотрудник только сегодня авторизовался на сайте, и для него была зарегистрирована роль employee, то в этом сегменте сразу же пропадают все его сеансы вчера и далее в прошлое. А это ценно и намного точнее и удобнее хипстерских методов.
Если остались вопросы — пишите их в комментариях.