Найти в Дзене
In Data We Trust

Построение маркетинговых моделей атрибуции на базе сырых данных Google Analytics 4 в BigQuery

Оглавление

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

Содержание:

1. Зачем нужны модели атрибуции?

  • Подготовка данных
  • Таблица с транзакциями
  • Таблица с сеансами
  • Объединение и доработка таблиц

2. Модели атрибуции

  • Модель «Последнее взаимодействие» / Last Interaction:
  • Модель «Первое взаимодействие» / First Interaction:
  • Модель «Последний значимый переход» / Last Non-Direct Click
  • «Последний переход из определенного канала» (на примере Яндекс.Директа) / Last <Name> Click
  • Модель «Линейная» / Linear
  • Модель с учетом давности взаимодействий / Time Decay
  • U-модель / Position Based

3. Заключение

4. Полезные ссылки

Зачем нужны модели атрибуции?

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

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

Пример сравнения моделей атрибуции «первое взаимодействие» и «последнее взаимодействие» в оценке привлеченных продаж
Пример сравнения моделей атрибуции «первое взаимодействие» и «последнее взаимодействие» в оценке привлеченных продаж

Такие счетчики аналитики, как, Яндекс Метрика и Google Analytics дают возможность в сразу в интерфейсе отчетов оценить эффективность точки касания. Но если работать с сырыми данными (неважно по какой причине), оценку модели атрибуции надо рассчитывать самому.

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

Подготовка данных

Для расчета моделей атрибуции, из экспортируемых в BigQuery сырых данных Google Analytics 4 понадобится создать предварительные таблицы с данными.

Таблица с транзакциями

В таблице будут поля:

  • ID совершенной транзакции
  • Дата и время транзакции
  • ID пользователя совершившего транзакцию
  • ID сессии в течении которой была совершена транзакция

Сразу надо определиться со сроком, за который собираются транзакции.

Запрос:

sql-for-attribution-models_data-preparation_google-analytics-4_p1.sql

Результат:

Результат сбора таблицы со списком транзакций
Результат сбора таблицы со списком транзакций

Таблица с сеансами

В таблице будут поля:

  • ID сессии
  • Дата и время начала сессии
  • ID пользователя
  • Источник и канал, с которого началась пользовательская сессия

Сразу надо определиться с размером окна атрибуции, так как при сборе этой таблицы важно чтобы сессии брались за срок, равный сумме периода сбора транзакций и окна атрибуции. То есть, если мы считаем модель атрибуции для транзакций за последние 30 дней, и определили окно атрибуции в 90 дней, то сессии надо брать за 120 дней. Это делается для правильного учета всех точек касаний, совершенных в период окна атрибуции.

Окно атрибуции — период между первым контактом с пользователем и целевым действием этого пользователя.

Запрос:

sql-for-attribution-models_data-preparation_google-analytics-4_p2.sql

Результат:

Результат сбора таблицы со списком сессий
Результат сбора таблицы со списком сессий

Объединение и доработка таблиц

  1. Расчет атрибуции предполагает параллельное взаимодействие с данными о сессиях и транзакциях, поэтому таблицы с транзакциями и с сессиями можно сразу объединить в одну.
  2. Чтобы не тратить ресурсы на обработку ненужных данных, в итоговой таблице лучше оставить сессии только от тех пользователей, которые в итоге совершили транзакцию. А также оставить только те сессии, которые предшествовали совершению транзакции или в течении которых транзакция была совершена.
  3. Часть моделей атрибуции требует информации о том, сколько всего сессий совершил пользователь перед транзакцией, и какая по счету сессия была с транзакцией, поэтому добавим в итоговую таблицу соответствующие колонки.

Полный запрос подготовки данных:

sql-for-attribution-models/google-analytics-4.sql at main · RuslanFatkhutdinov/sql-for-attribution-models

Результат:

-5

Итоговая таблица с информацией о сессиях и транзакциях

Модели атрибуции

Модель «Последнее взаимодействие» / Last Interaction:

Модель “Последнее взаимодействие” / Last Interaction
Модель “Последнее взаимодействие” / Last Interaction

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

Моноканальная модель атрибуции — модель атрибуции, при которой 100% вклада присваивается одной точке касания с пользователем. Цель модели определить правила, на основании которых будет выбрана точка, которой будет присвоен вклад.

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

Для подсчета достаточно вывести источник и канал, с которых началась сессия, в течении которой была совершена транзакция.

Запрос:

sql-for-attribution-models/last-click-model-attribution.sql at main · RuslanFatkhutdinov/sql-for-attribution-models

Результат:

Результат работы модели атрибуции «Последнее взаимодействие»
Результат работы модели атрибуции «Последнее взаимодействие»

Модель «Первое взаимодействие» / First Interaction:

Модель «Первое взаимодействие» / First Interaction
Модель «Первое взаимодействие» / First Interaction

Модель первого взаимодействия — моноканальная модель атрибуции которая присваивает 100% вклада точке, с которого началась первая сессия пользователя в обозначенное окно атрибуции.

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

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

Запрос:

sql-for-attribution-models/first-click-model-attribution.sql at main · RuslanFatkhutdinov/sql-for-attribution-models

Результат:

Результат работы модели атрибуции «Первое взаимодействие»
Результат работы модели атрибуции «Первое взаимодействие»

Модель «Последний значимый переход» / Last Non-Direct Click

Последний значимый переход / Last Non-Direct Click
Последний значимый переход / Last Non-Direct Click

Модель последнего значимого перехода — моноканальная модель атрибуции, которая присваивает 100% вклада последней точке, при условии, что это был значимый источник. Если конверсия совершена при заходе с незначимого источника, 100%  вклада присвоится предшествующему, в заданное окно атрибуции, источнику. Если другого источника нет, вклад отдается незначимому источнику.

К незначимым источникам относятся: прямые заходы, переходы с сохраненных страниц и сессии, начавшиеся прямо на сайте после завершения предыдущей сессии (в Яндекс.Метрика такой источник сессии называется “Внутренние переходы”). Источник и канал: ((direct) / (none)).

Как и модель «Последний переход», используется для оценки источников конверсии для продуктов с коротким циклом продажи. Но считается более точным, так как учитывает только значимые источники

Для подсчета модели необходимо проверить:

  • Если источник и канал с которых началась сессия, в течении которой была совершена транзакция не является незначимым’, оставить источник и канал с которой началась эта сессия как есть;
  • Если сессия, в течении которой была совершена транзакция не является первой у пользователя, при этом источник и канал является незначимым, проверить источник и канал предыдущей сессии и подставить ее, если она не является незначимойя4
  • Во всех остальных случаях подставить источник и канал ‘(none) / (direct)’.

Запрос:

sql-for-attribution-models/last-non-direct-click-model-attribution.sql at main · RuslanFatkhutdinov/sql-for-attribution-models

Результат:

Результат работы модели атрибуции «Последний значимый переход»
Результат работы модели атрибуции «Последний значимый переход»

«Последний переход из определенного канала» (на примере Яндекс.Директа) / Last <Name> Click

Последний переход из определенного канала (на примере Яндекс.Директа) / Last Click
Последний переход из определенного канала (на примере Яндекс.Директа) / Last Click

Модель последнего перехода из определенного канала — моноканальная модель, 100% ценности которая присваивает последнему переходу из определенного источника и канал.

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

Для подсчета модели:

  • Проверить что источник и канал, с которого началась сессия, в течении которой была совершена транзакция является целевым источником и каналом. Если это так, подставить его.
  • Проверить что у пользователя совершившего транзакцию, источник и канал предыдущей сессии является целевым и подставить его.
  • В остальных случаях оставить источник и канал как есть.

Запрос:

sql-for-attribution-models/last-google-ads-click-model-attribution.sql at main · RuslanFatkhutdinov/sql-for-attribution-models

Результат:

Результат работы модели атрибуции «Последний переход из Яндекс Директа»
Результат работы модели атрибуции «Последний переход из Яндекс Директа»

Модель «Линейная» / Linear

Линейная модель / Linear
Линейная модель / Linear

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

Мультиканальная модель атрибуции — модель атрибуции, которая распределяет вклад между разными точками касаний с пользователем. Цель модели определить правила распределения вклада между точками касания.

Используется для оценки эффективности каждой точки взаимодействия.

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

Запрос:

sql-for-attribution-models/linear-model-attribution.sql at main · RuslanFatkhutdinov/sql-for-attribution-models

Результат:

Результат работы модели атрибуции «Линейная модель»
Результат работы модели атрибуции «Линейная модель»

Модель с учетом давности взаимодействий / Time Decay

Модель с учетом давности взаимодействий / Time Decay
Модель с учетом давности взаимодействий / Time Decay

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

Используется для оценки каждой точки контакта, по мере приближения к конверсии.

Для подсчета модели используется условия:

  • Если была 1 сессия, 100% ценности отдается источнику и каналу, с которого началась эта сессия;
  • Если сессий более одной, используется формула временного распада: 2 ^ (Номер сессии / Количество сессий). Полученные результаты приводятся к 100%.

Запрос:

sql-for-attribution-models/time-decay-model-attribution.sql at main · RuslanFatkhutdinov/sql-for-attribution-models

Результат:

Результат работы модели атрибуции «Модель с учетом давности взаимодействий»
Результат работы модели атрибуции «Модель с учетом давности взаимодействий»

U-модель / Position Based

U-модель / Position Based
U-модель / Position Based

U-модель — мультиканальная модель атрибуции, которая присваивает по 40% вклада источнику и каналу первой и последней сессии, а оставшиеся 20% вклада распределяет равномерно между источниками и каналами, которые находились посередине.

Используется для оценки точек знакомства и совершения конверсии.

Для подсчета модели:

  • Если была 1 сессия, 100% ценности отдается источнику и каналу, с которого началась эта сессия.
  • Если было 2 сессии, каждому из источников и каналов сессий присваивается по 50% вклада.
  • Если сессий более 2, источникам и каналам первой и последней сессии присваивается по 40% вклада, а оставшиеся 20% вклада распределяются между источникам и каналами между первой и последней сессиями.

Запрос:

sql-for-attribution-models/u-shape-model-attribution.sql at main · RuslanFatkhutdinov/sql-for-attribution-models

Результат:

Результат работы модели атрибуции «U-модель»
Результат работы модели атрибуции «U-модель»

Заключение

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

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

Полезные ссылки

#веб-аналитика