Как застройщик использует ClientID для построения сквозной аналитики

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

Сервис и задачи

Начнем с того, что в нашей компании используется сервис коллтрекинга Comagic. В нем у каждой заявки/звонка есть поле с ClientID Яндекс.Метрики и Google.Analytics. CllentID - это обезличенный идентификатор пользователя, который создается в Google.Analytics или в Яндекс.Метрике для каждого посетителя сайта. Именно благодаря данному идентификатору и определяется уникальный пользователь. Ниже пример полей с идентификаторами в Comagic:

ClientID в сервисе Comagic
ClientID в сервисе Comagic

Зная ClientID пользователя, можно посмотреть всю его историю и действия с первого посещения сайта в Google.Analytics и Яндекс.Метрике.

Пример отчета о действиях пользователя в Google.Analytics
Пример отчета о действиях пользователя в Google.Analytics

Однако смотреть данные по каждому конкретному пользователю вручную не имеет смысла. Интереснее воспользоваться этими данными для получения первого касания пользователя с сайтом (FirstClick), чтобы оценить вклад первого источника рекламы в конверсию, так как в большинстве случаев эффективность рекламной кампании оценивается по последнему касанию (LastClick), не говоря уже о применении модели атрибуции.

Пути решения

Мы решили начать со сбора таких данных в Google.Analytics. Сначала мы добавили дополнительные поля в CRM. Соответственно, это ClientID Google.Analytics, дата и время первого касания и набор полей с разбором utm-меток. Настроили скрипт на сайте, который передает ClientID в специальный параметр Google.Analytics для взаимодействия в отчетах, а также добавляет ClientID в переменную при отправке онлайн-заявок.

Далее появилась задача, как эти данные забирать непосредственно из GA. Можно сделать это напрямую по API Google.Analytics, но в этом случае придется писать свое решение, которое нужно, во-первых, разработать, во-вторых, периодически обновлять и поддерживать, а в-третьих можно столкнуться с лимитами подключений по API. Но основной минус – это трудозатраты, при том, что на рынке уже есть готовые решения для таких задач.

Также можно воспользоваться Google.Analytics 360 Suite, который дает возможность «стримить» данные напрямую в Google.BigQuery– это облачное хранилище данных с высочайшей скоростью обработки огромных массивов. Как раз такое решение идеально подходит для нашей задачи. Данные по всем пользователям, которые были на сайте хранятся в независимом хранилище, также преимуществом можно считать возможность работы с BigQuery обычными SQL запросами и отсутствие возможных ограничений при подключении по API. Но стоимость инструмента Google.Analytics 360 Suite в этой цепочке достаточно высокая. Поэтому, мы решили воспользоваться сервисом Renta, который позволяет преобразовывать «сырые» данные из Google.Analytics в удобный табличный формат в Google.BiqQuery, и таким образом нам не нужно выкачивать весь «аналитикс», а достаточно забирать только данные с заданными параметрами.

Пример таблицы в Google.BigQuery
Пример таблицы в Google.BigQuery

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

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

Следующим шагом обогатим данные используя Яндекс.Метрику и ClickHouse от Яндекса.

Также стоит отметить очень важный момент. Не во всех звонках может быть параметр ClientID, так как он присваивается при посещении сайта. А также может отсутствовать по причине нехватки динамических номеров у коллтрекинга. Поэтому важно обеспечить все рекламные кампании необходимым количеством динамических номеров, что существенно увеличит стоимость сервиса.

Сколько это стоит?

В основном все работы выполнялись инхаус, поэтому стоимость нашего решения - это по сути оплата двух сервисов: Google.BigQuery и Renta. Первый при нашем объеме трафика бесплатен, второй стоит 100 долларов в год. Comagic в эту стоимость не включаем, так как это основной инструмент для отдела маркетинга, который и раньше использовался на постоянной основе.

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

Надеемся, что данный материал будет полезен при построении сквозной аналитики в вашей отрасли.

99
9 комментариев

Следил за client ID в сырой метрике на нескольких сайтах. Один и тот же идентификатор присваивается только одинаковым браузерам и устройствам. Ни разу не встретил такого, чтобы устройства или браузеры были разными. Сделал вывод, что кроссдевайс и кроссбраузер не работает. Был бы рад увидеть опровержения

1

Всё так и есть. Как в GA, так и в Метрике есть проблема с кроссбраузерностью и кроссплатформой. Даже если провести простой эксперимент, зайти сначала с мобильного, потом с десктопа, то вряд ли в истории пользователей это будет один и тот же юзер. Хотя если просматривать выборочно разных пользователей, то можно увидеть заходы с мобильного устройства и десктопа. Пока это остается в рамках погрешности. В e-commerce это решается просто, достаточно присвоить user id при авторизации.

1

Айдар, а вы ставили блокировку ботов? Я туда два сайта добавил, потом на один зашел через инстаграм и он определил меня как бота. Досадно было очень=(( Поэтому отказался от их услуг

Очень интересно описали ваши инструменты.
спасибо )

1

А вы можете посмотреть всю воронку относительно конкретного источника?
Я имею в виду, что вот вы забрали Client ID, посмотрели first click, сравнили данные с CRM, увидели тех, кто совершил целевое действие (заявка, звонок), а вот дальше как?
Только в отдельный отчёт ручками собирать для каждого канала целевых клиентов и смотреть как они двигаются по воронке?
По опыту: заявок может быть много с какого то канала, а на выходе мы имеем, что креатив был неправильный. Условно у нас квартира стоит 15 млн, а там написали 5 млн. Звонков куча, канал отрабатывает отлично, каждый третий целевой, а на выходе мы имеем, что денег у данной ЦА неть.

Как эту проблему решали?

1

Что касается firstclick, то это интересно смотреть только на уровне ДДУ, а не целевых звонков. А если говорить про анализ каналов, то тут мы используем другой отчет, где смотрим траты по каждому рекламному источнику и динамику обращений по дням с общей воронкой обращений в брони в рамках одного источника по заданному периоду. Как раз на таком графике можно увидеть отклонения от нормы, идут ли целевые звонки, которые конвертируются в брони или "звоночки", которых много и со всплесками по дням и в итоге никуда не конвертируются. А дальше уже можно анализировать глубже до уровня креативов.