Если вы хотите знать точно, сколько пользователь находился на сайте, то доверять метрике Google Analytics «время нахождения пользователя на странице» не стоит. Она сильно завышена, и это происходит по разным причинам: например, из-за своеобразного подсчета уникальных визитов в GA или поведения пользователя, который может держать вкладку открытой, но активно ей не пользоваться.
Лучше посчитать данные самим — сегодня расскажем, как сделать это при помощи Google Tag Manager.
1. Создайте в GTM переменную Event Category. Имя переменной уровня данных — eventCategory.
2. Создайте переменную Event Action. Имя переменной уровня данных — eventAction.
3. Создайте переменную Event Label. Имя переменной уровня данных — eventLabel.
4. Создайте триггер GAEvent. Тип — пользовательское событие, который будет отрабатывать при отправке событий с именем GAEvent.
5. Создайте тег, который будет пробрасывать кастомные события. Он будет отправлять категорию, действие и лейбл в Google Analytics через передачу в dataLayer события с именем GAEvent:
6. Добавьте тег с типом пользовательский HTML. Триггер — All Pages, в него добавляем следующий код из этого документа.
Он будет выполняться на всех страницах.
Он рассчитывает время, в течение которого пользователь находится на открытой активной вкладке. В момент ее закрытия или смены URL страницы он отправляет ивент.
Чтобы проверить, все ли сделано правильно:
- Откройте страницу сайта.
- Побудьте на ней несколько секунд.
- Переключитесь на другую вкладку, а сайт оставьте открытым.
- Вернитесь на вкладку со страницей своего сайта, нажмите F12.
- Введите active_page_time в консоли и нажмите Enter.
Вы увидите, сколько секунд эта вкладка была активна. Если время не появилось, вы сделали что-то не так.
Так должен выглядеть ответ в консоли
Теперь идем в «Отчет в реальном времени» Google Analytics и в разделе «События» видим:
После этого вы сможете собрать кастомные отчеты:
В Google Analytics |
|
---|---|
фильтруя по Event Action |
фильтруя по ga:eventAction==active;ga:eventCategory==time; и сортируя по количеству сессий или пользователей. |
Например, нашу статью о попадании рассылок в спам половина пользователей читала одну минуту, а вторая половина от 2 до 7:
Но если посмотрим события, которые передавали время активной вкладки, всё окажется иначе. Почти все пользователи держали вкладку активной до одной минуты, а после уходили на другие сайты, не закрывая ее:
То есть читатели блога открывали статью в фоновой вкладке, держали ее открытой, возвращались и быстро скроллили вниз.
Если трафика на сайте будет много и вы будете строить сложные отчеты по событиям, вы столкнетесь с сэмплированием данных в Google Analytics. Это приведет к тому, что данные в отчете будут неточными.
Если вы хотите видеть точные данные, а не просто тренды и динамику, собирайте их на стороне. Например, мы собираем сырые данные по всем хитам в Google BigQuery, чтобы получать отчеты любой сложности без искажения.
На наших проектах мы дополнительно передаем в события, которые показывают, за сколько секунд читатель проскроллил статью и на какой процент высоты страницы. С помощью этих данных мы понимаем, как именно ведет себя читатель в активной вкладке, учитывая время активного пребывания на странице. В GTM для этого есть специальный триггер.