Сквозная аналитика «на коленке»: собираем данные о звонках и заявках без программистов

Olga Feoktistova
03.09.20182 575 2
1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading ... Loading ...
A A A

Сквозная аналитика по-прежнему в тренде. Почти на каждой конференции доклады о ней собирают полные залы. Но многие до сих пор считают, что настраивать ее очень дорого и сложно. Максим Гапчук, независимый веб-аналитик и автор блога Analytics Tips, демонстрирует, что это необязательно так. Он рассказывает, как построить сквозную аналитику самостоятельно и что для этого нужно.

сквозная аналитика на коленке, как построить без программиста

Внедрение самой простой, базовой версии сквозной аналитики происходит в несколько этапов. Ни один из них не подразумевает привлечения программиста.

  1. Определяем источник перехода на сайт без помощи Google Analytics.
  2. Настраиваем передачу данных о заявках с сайта в Google Spreadsheets.
  3. Собираем данные о звонках в Google Spreadsheets.

1. Определяем источник перехода на сайт

Обычно источники переходов на сайт смотрят в отчетах Google Analytics. Но для получения подобных данных во внешней системе, например CRM, нужно разбираться с API. Я же предлагаю использовать готовое решение  — скрипт Sourcebuster.js. Переходим по указанной ссылке в репозиторий на GitHub и копируем необходимый код с файла sourcebuster.min.js.

сквозная аналитика на коленке, как построить без программиста

Далее открываем Google Tag Manager и создаем новый тег типа Пользовательский HTML в который и вставляем скопированный код. Под ним добавляем команду инициализации:

<script>

  sbjs.init();

<script/>

Триггер для данного тега необходимо выбрать стандартный — All Pages. Готовый тег выглядит так:

сквозная аналитика на коленке, как построить без программиста

Благодаря этому скрипту, мы получим данные об источнике перехода на сайт. В следующих глобальных переменных JS хранятся необходимые нам значения:

  • sbjs.get.current.src — источник трафика;
  • sbjs.get.current.mdm —  канал трафика;
  • sbjs.get.current.cmp —  кампания;
  • sbjs.get.current.trm — ключевое слово;
  • sbjs.get.current.cnt —  вариант объявления.

Помимо этих данных скрипт возвращает и другие, не менее полезные. Более подробно можно ознакомиться на официальном сайте.

 

2. Настраиваем передачу данных о заявках с сайта в Google Spreadsheets

Имея информацию об источнике трафика в удобном виде, можно собрать ее и данные о заявках с сайта в таблицу —  например Google Spreadsheets. Для этого создайте копию этого файла и сделайте следующее:

  • скорректируйте название столбцов, если это необходимо;
  • перейдите в раздел Инструменты > Редактор скриптовсквозная аналитика на коленке, как построить без программиста
  • выбирите функцию Setup и запустите ее, нажав кнопку Runсквозная аналитика на коленке, как построить без программиста
  • после этого предоставьте нужные разрешения для работы скрипта — здесь главное не бояться :), в последнем окне нажмите Подробнее и перейдите к приложению: сквозная аналитика на коленке, как построить без программистасквозная аналитика на коленке, как построить без программиста
  • на следующем шаге опубликуйте скрипт как веб-приложение:сквозная аналитика на коленке, как построить без программиста
  • в открывшемся окне большинство настроек оставляем без изменений и нажимаем кнопку Update, как на примере ниже:сквозная аналитика на коленке, как построить без программиста
  • после этого покажется окно с ссылкой, которую необходимо скопировать:сквозная аналитика на коленке, как построить без программиста

Чтобы убедиться, что вы все сделали правильно, вставьте полученную ссылку в адресную строку браузера и добавьте к ней текст в следующем формате:

?param_name=param_value

Где param_name —  это название одного из столбцов в нашей таблице, а param_value любое значение. Например, я использовал значение ?name=test

сквозная аналитика на коленке, как построить без программиста

Нажмите Enter для перехода по ссылке. Если все сделано верно, то вы увидите следующий ответ:

сквозная аналитика на коленке, как построить без программиста

При этом в нашей таблице должны появится первые данные:

сквозная аналитика на коленке, как построить без программиста

Каждую заявку с сайта отправлять руками неудобно, так что автоматизируем этот процесс с помощью Google Tag Manager. Для этого создадим несколько переменных:

  • {{JSV — sbjs.get.current.src}} —  переменная типа Переменная JavaScript для хранения информации об источнике трафика: сквозная аналитика на коленке, как построить без программиста
  • {{JSV — sbjs.get.current.mdm}} —  переменная типа Переменная JavaScript для хранения информации о канале трафика: сквозная аналитика на коленке, как построить без программиста
  • {{JSV — sbjs.get.current.cmp}} —  переменная типа Переменная JavaScript для информации о кампании:сквозная аналитика на коленке, как построить без программиста
  • {{JSV — sbjs.get.current.trm}} —  переменная типа Переменная JavaScript для данных о ключевом слове:сквозная аналитика на коленке, как построить без программистасквозная аналитика на коленке, как построить без программиста
  • {{JSV — sbjs.get.current.cnt}} —  переменная типа Переменная JavaScript для информации о варианте объявления:сквозная аналитика на коленке, как построить без программиста
  • {{JS — name}} —  переменная типа Собственный код JavaScript, в которой будем хранить имя пользователя, который оставил заявку. Подробнее о том, как получить значение с полей формы читайте в этой статье.сквозная аналитика на коленке, как построить без программиста
  • {{JS — tel}} —  переменная типа Собственный код JavaScript для данных об указанном в заявке номере телефона: сквозная аналитика на коленке, как построить без программиста
  • {{JS — date}} —  переменная типа Собственный код JavaScript для  информации о дате отправки заявки: сквозная аналитика на коленке, как построить без программиста

Для удобства копирования привожу код, который показан на скрине выше:

function() {

  

   var date = new Date();

 

   var options = {

     year: 'numeric',

     month: 'long',

     day: 'numeric',

     timezone: 'UTC',

     hour: 'numeric',

     minute: 'numeric',

     second: 'numeric'

   };

 

   return date.toLocaleString("ru", options)

}

Теперь, когда все необходимые значения есть —  передадим их в Google Spreadsheets. Для этого понадобится тег типа Пользовательское изображение с такими настройками:

сквозная аналитика на коленке, как построить без программиста

Вставьте в поле Image URL ссылку в следующем формате, предварительно изменив значения, как указано ниже:

https://script.google.com/macros/s/AKfycbzOCecdSZ1fDq0ob_qKsMQ4RUrzyj0NW4Kf5f63/exec?name={{JS — name}}&tel={{JS — tel}}&utm_source={{JSV — sbjs.get.current.src}}&utm_medium={{JSV — sbjs.get.current.mdm}}&utm_campaign={{JSV — sbjs.get.current.cmp}}&utm_term={{JSV — sbjs.get.current.trm}}&utm_content={{JSV — sbjs.get.current.cnt}}&date={{JS — date}}

Где:

  • https://script.google.com/macros/s/AKfycbzOCecdSZ1fDq0ob_qKsMQ4RUrzyj0NW4Kf5f63/exec —  ссылка, которую получили при публикации нашего веб-приложения в Google Spreadsheets;
  • name, tel, utm_source, utm_medium, utm_campaign, utm_term, utm_content, date —  названия столбцов в нашем файле;
  • {{JS — name}}, {{JS — tel}}, {{JSV — sbjs.get.current.src}}, {{JSV — sbjs.get.current.mdm}}, {{JSV — sbjs.get.current.cmp}}, {{JSV — sbjs.get.current.trm}}, {{JSV — sbjs.get.current.cnt}}, {{JS — date}} —  переменные, которые мы создали на предыдущем шаге.

Триггером для этого тега является успешная отправка необходимой формы. Если все сделано верно, то при ее отправке в Google Spreadsheets будет передаваться информация:

сквозная аналитика на коленке, как построить без программиста

Если ваша CRM поддерживает Webhooks, то подобным образом можно передавать данные и в нее.

 

3. Собираем данные о звонках в Google Spreadsheets

Заявки — это хорошо, но для многих видов бизнеса основным источником лидов являются звонки. Поэтому также важно понимать, какая реклама их приносит — именно это делают сервисы коллтрекинга. Давайте разберем на примере Ringostat, как  передать данные о звонках в Google Spreadsheets.

Самый простой способ —  получить данные по API, но так как мы разбираем решение, которое работает без помощи программистов, то не придется писать никаких запросов. Готовый скрипт, уже находится в нашем файле.

сквозная аналитика на коленке, как построить без программиста

В этом скрипте вам необходимо внести данные для авторизации, а именно project_id и token. Получить необходимые значения можно в личном кабинете Ringostat в разделе Интеграции. Для этого нужно выбрать раздел любой готовой интеграции. На скрине это показано на примере Alytics:

сквозная аналитика на коленке, как построить без программиста

Логин — это значение project_id, а пароль —  token. Вы также можете отредактировать значение параметров from и to, чтобы указать дату начала и окончания выгрузки. Они отмечены цифрами 3 и 4 на предыдущем скрине готового скрипта. Пустое значение параметра to позволяет выгружать данные до текущего момента. При необходимости откорректируйте перечень полей для загрузки в параметре fields. Более подробно о возможных полях для выгрузки читайте здесь.
Чтобы запустить скрипт и получить данные необходимо выполнить функцию exportFromRingo:

сквозная аналитика на коленке, как построить без программиста

Конечно, каждый раз заходить и запускать скрипт руками неудобно. Чтобы запланировать автозапуск, перейдите в раздел триггеров и установите необходимую периодичность:

сквозная аналитика на коленке, как построить без программиста

 

сквозная аналитика на коленке, как построить без программиста

сквозная аналитика на коленке, как построить без программиста

В конце не забудьте нажать кнопку Save.

 

Что делать с данными: какие решения можно принимать, а какие не стоит.

Когда у вас в одном файле есть все звонки и заявки с источниками посещений,  — самое главное не остановиться. Лучше добавить к этой информации еще два столбца: Статус и Сумма заказа. Отмечая эти данные в конце месяца или раньше, вы сможете построить сводную таблицу для оценки эффективности маркетинговых вложений.

сквозная аналитика на коленке, как построить без программиста

В примере показана общая информация в разрезе источника и канала трафика, но, благодаря собранным данным, вы при желании можете детализировать информацию вплоть до ключевого слова.

Принимая решения на основании собранных данных, важно понимать, что они атрибутируются по последнему клику. Поэтому правильным будет повысить бюджет на источники с высоким ROI — ведь мы точно знаем, что эти источники окупают себя даже без учета ассоциированных конверсий.

Что касается источников с отрицательным ROI — лучше дополнительно изучать статистику в Google Analytics в отчетах по многоканальным последовательностям. Даже если реклама не приносит прямых конверсий, они могут участвовать в цепочках касаний, которые в итоге привели к покупке.

Полезный материал по теме — «Кейс: как правильно отслеживать многоканальные последовательности в тематике недвижимости».

Надеюсь, этот мануал поможет вам распределять ваши маркетинговые бюджеты более правильно. Ведь у вас будет таблица, в которую автоматически подтягиваются лиды с указанием источниками трафика. Причем с той периодичностью, которую вы зададите сами. И в ней, в отличие от Google Analytics, можно отмечать факт и сумму успешной покупки/транзакции. Так вы будете оценивать свои маркетинговые активности не по количеству заявок, а по количеству реальных продаж и полученного дохода.

Более подробно о построении сквозной аналитики без привлечения программистов автор будет рассказывать 13 сентября на семинаре “Сквозная аналитика и расширенные возможности GTM”.

В программе:

✔️ расширенная работа с Google Tag Manager;

✔️ практическая настройка сквозной аналитики “на коленке”;

✔️ что такое Data Layer и как он помогает в повседневной работе;

✔️ практика по настройке событий взаимодействия или отправки формы;

✔️ знакомство с Measurement Protocol, написание ТЗ программистам и многое другое.

Зарегистрироваться можно по ссылке.

 

сквозная аналитика на коленке, как построить без программиста

Если вы нашли ошибку - выделите её и нажмите Ctrl + Enter или .

  • Андрей Пархомчук

    А в 1 варианте куда будут передаваться результаты?

    • Maks Hapchuk

      Андрей, подскажите, что именно вы подразумеваете под первым вариантом?