Сквозная маркетинговая аналитика в режиме self-service для
YouTravel — это маркетплейс авторских туров от тревел-экспертов и частных независимых гидов.
ЗАДАЧА
Наша задача – построить сквозной отчет от клика пользователя по рекламному объявлению до покупки, чтобы оценить эффективность маркетинговых кампаний.
  • Есть несколько рекламных кабинетов, из которых нужно собрать затраты на рекламные кампании: Facebook, Yandex.Direct, Google Adwords, Vkontakte. Также есть затраты на маркетинг, которые не проходят через рекламные кабинеты, а ведутся в ручном справочнике.
  • Пользователи, которых привлекли с помощью рекламных кампаний, совершают покупку на сайте.
  • На сайте установлен Google Analytics, который фиксирует id пользователей, их UTM-метки и покупки.
Задача сквозной маркетинговой аналитики кажется стандартной, но в клиентском проекте есть несколько нюансов в бизнес-логике, из-за которых стандартные решения не подошли:
  • Из-за особенностей маркетинговой стратегии нужно реализовать кастомную логику атрибуции.
  • Есть ряд особенностей бизнес-логики, которые нужно учитывать при выстраивании связи маркетинговых каналов с покупками: например, языки пользователей.
процесс
  • Скачивание «сырых» данных
    В качестве хранилища данных мы используем BigQuery. Источников данных у нас девять.
    Для загрузки данных используем open source стек Singer + Meltano. Для преобразования данных используем DBT.
    01
  • Скачивание «сырых» данных
    В качестве хранилища данных мы используем BigQuery. Источников данных у нас девять.
    Для загрузки данных используем open source стек Singer + Meltano. Для преобразования данных используем DBT.
    01
В результате анализа выделяем в данных:
  • анкеры (это основные существительные предметной области, например, Пользователь, Визит, Рекламная кампания и т.п.);
  • атрибуты (это характеристики анкеров, например, Имя пользователя, Дата визита, Название рекламной кампании);
  • линки (связи между двумя анкерами, например, “Пользователь сделал Заказ”).
Найденные анкеры, атрибуты и линки сразу же документируем в excel-файле, то есть описание финальных данных появляется раньше реализации.
  • Моделирование данных
    Для проектирования модели предметной области используем минимальное моделирование. Это подход к моделированию данных, который позволяет одновременно разобраться в структуре данных и задокументировать ее.
    02
  • Моделирование данных
    Для проектирования модели предметной области используем минимальное моделирование. Это подход к моделированию данных, который позволяет одновременно разобраться в структуре данных и задокументировать ее.
    02
В результате анализа выделяем в данных:
  • Анкеры (это основные существительные предметной области, например, Пользователь, Визит, Рекламная кампания и т.п.).
  • Атрибуты (это характеристики анкеров, например, Имя пользователя, Дата визита, Название рекламной кампании).
  • Линки (связи между двумя анкерами, например, “Пользователь сделал Заказ”).
Найденные анкеры, атрибуты и линки сразу же документируем в excel-файле, то есть описание финальных данных появляется раньше реализации.
Финальная модель данных выглядит вот так
  • Сбор витрины для self-service аналитики
    Для отчетности мы используем бесплатный инструмент с открытым исходным кодом Metabase.
    В модели данных Metabase можно задать словарь метрик, который будет доступен бизнес-пользователям при построении отчетов.
    Добавление новых метрик не требует программирования и доступно всем пользователям Metabase.
    03
  • Сбор витрины для self-service аналитики
    Для отчетности мы используем бесплатный инструмент с открытым исходным кодом Metabase.
    В модели данных Metabase можно задать словарь метрик, который будет доступен бизнес-пользователям при построении отчетов.
    Добавление новых метрик не требует программирования и доступно всем пользователям Metabase.
    03
  • Финальный отчет
    Все данные собраны, метрики определены, приступаем к сборке финального отчета.
    Мы это делаем без написания SQL, просто накликивая данные в Metabase.
    04
  • Финальный отчет
    Все данные собраны, метрики определены, приступаем к сборке финального отчета.
    Мы это делаем без написания SQL, просто накликивая данные в Metabase.
    04
  • Документация по проекту
    Под конец проекта приводим в порядок документацию. Это просто, поскольку все данные мы описали в самом начале проекта — на этапе моделирования данных. Проверяем опечатки и возникшие расхождения при реализации.
    На этом проекте мы дополнительно перенесли всю документацию в Notion (для красоты).
    05
  • Документация по проекту
    Под конец проекта приводим в порядок документацию. Это просто, поскольку все данные мы описали в самом начале проекта — на этапе моделирования данных. Проверяем опечатки и возникшие расхождения при реализации.
    На этом проекте мы дополнительно перенесли всю документацию в Notion (для красоты).
    05
Выводы и следствия
В ходе проекта мы реализовали для заказчика отчетность по сквозной маркетинговой аналитике. Данные доступны бизнес-пользователям в режиме self-service аналитики (аналитики самообслуживания).
Благодаря использованию концепций минимального моделирования получили ряд важных следствий
  • данные полностью документированы, актуальность документации поддерживается «по построению», для бизнес-пользователей данные доступны в режиме self-service аналитики;
  • благодаря независимой реализации каждого атрибута в отчеты легко добавлять дополнительные данные и разрезы (например, реализация альтернативной модели атрибуции — это добавление ровно одного атрибута);
  • аналитики, которые подключатся к проекту в будущем, смогут легко отследить логику трансформации данных и вносить изменения в проект.
Подробнее о деталях реализации этого кейса читайте в нашей статье на