Как настроить сквозную аналитику для онлайн-кинотеатра — кейс Okko

О том, как настроить сквозную аналитику в обычном ecommerce-проекте с AIDA воронкой, написано большое количество кейсов. Многие бизнесы знают, как это делать, и не испытывают проблем с настройкой. Сложности возникают, когда у вас сложная и неочевидная воронка продаж, много типов конверсии и целевых действий. Как свести все эти данные в один дашборд, рассказал Павел Лебедев, руководитель отдела performance-маркетинга онлайн-кинотеатра Okko.

Наши клиенты
растут на 22% быстрее

Растите быстрее, анализируя, что лучше сработает в вашем маркетинге

Измеряйте KPI, находите зоны роста и увеличивайте свой ROI

Записаться на демо

О компании

Okko — один из самых больших легальных онлайн-кинотеатров в России, мы успешно работаем с 2011 года. В нашем каталоге представлено более 70 000 фильмов, мультфильмов и сериалов. С момента запуска сервис посетили более 20 млн пользователей. Ежемесячная аудитория составляет 2,8 млн человек.

Задачи

1. Настроить сквозную аналитику до подписок и других целей

У нас есть несколько типов транзакций, и они не равнозначны, как в обычном ecommerce. Есть TVOD транзакции, за которые бизнес сразу получает деньги (аренда и покупка фильма), и есть SVOD транзакции с регулярными платежами (подписка и триал).

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

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

Плюс есть еще покупка и аренда — можно купить контент, недоступный в основной подписке, например новые фильмы, или получить к нему временный доступ на 48 часов.

2. Настроить атрибуцию, которая помогала бы нам оценивать вклад канала на каждом этапе воронки

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

3. Создать инструмент, который позволяет мониторить качество данных

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

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

Решение

Чтобы собрать данные с сайта и из рекламных сервисов в Google BigQuery, мы использовали Google Analytics 360 и OWOX BI. Аналитики OWOX помогли нам разработать и внедрить систему метрик, учитывающую особенности бизнес-модели Okko, проверить качество онлайн-данных и объединить их с данными из CRM-системы. Потому что нам важно видеть в отчетах платящих пользователей, а эта информация есть только в CRM.

Как объединяли данные для дашборда:

  1. С помощью OWOX BI Pipeline мы автоматически импортируем расходы из рекламных сервисов в Google Analytics и Google BigQuery.
  2. С помощью Google Analytics 360 собираем данные о поведении пользователей с сайта и передаем в BigQuery.
  3. Данные о продажах из CRM загружаем в BigQuery с помощью собственного решения.
  4. С помощью OWOX BI Attribution настроили модель атрибуции на основе воронки.
  5. В Google BigQuery мы объединяем данные сайта, рекламных сервисов и результаты расчета атрибуции в одно представление (view).
  6. Далее из этого view мы передаем данные в дашборд Google Data Studio.

Результат

1. У нас появилась сквозная воронка. Мы теперь не только видим конверсию в каждую цель по каждому каналу, но и делаем выводы об эффективности разных сценариев.

К примеру, performance-отчет с общими показателями помогает нам увидеть объективный вклад источников, каналов и кампаний в разные типы конверсий (триалы, активированные триалы, подписки, покупки и аренды):

Также в дашборде есть фильтры, которые позволяют проводить анализ в разрезе конкретного фильма или продукта и отслеживать статус пользователей. Например, пользователь мог быть на trial, а после какой-нибудь кампании перейти в subscribed. У нас много подобных статусов — они помогают оценить, как кампании, нацеленные на определенных пользователей и результат, отрабатывают на нужном сегменте.

Например, на графике ниже видно, как покупки фильма «Душа» перетекают в аренду после его премьеры, когда спадает пик популярности фильма:

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

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

2. Нам недостаточно просто посчитать метрики и сценарии. Мы хотим найти точки роста в кампаниях. Поэтому на данных, собранных в BigQuery, мы настроили атрибуцию на основе воронки от OWOX:

И на данных атрибуции создали такой отчет:

В отчете можно посмотреть ценность каналов (количество конверсий) по всем типам транзакций (Trials, Activated Trials, Subscriptions, Data for Own, Rents и т.д.). Все метрики в этом отчете считаются по двум моделям атрибуции — Last Non-Direct Click и ML Funnel Based Attribution от OWOX BI.

На скриншоте можно увидеть процент отклонения между этими моделями атрибуции для всех типов конверсии. Этот отчет помогает нам сравнивать оценки по двум моделям, находить каналы, которые переоцениваются или недооцениваются по модели Last Non-Direct Click, и корректировать рекламный бюджет.

3. Справедливый вопрос: как мы контролируем качество данных по такому количеству источников и метрик? Для уверенности в принятии решений мы построили отдельный дашборд, на котором отображено качество матчинга данных:

Матчинг — это процесс сбора данных о транзакциях с сайта и их сравнение с нашими данными в CRM. Обычно CRM-данные связываются с онлайн-данными по идентификатору транзакции. До этого кейса у нас не передавалось около 60% идентификаторов транзакций. То есть доля матчинга была около 40%.

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

Раньше, чтобы проверить доли матчинга и понять все ли ок, мы тратили много времени. Теперь мы получили инструмент, который наглядно показывает, какое количество транзакций подвергнуто оценке. Мы можем в любое время зайти и посмотреть, насколько у нас матчатся данные из CRM с онлайн-данными и не тратить на это дополнительно время. Если вдруг в онлайн-данных что-то «отваливается», это видно сразу.

За счет применения дополнительной логики связывания данных (с которой нам помогли коллеги из OWOX) мы смогли повысить долю матчинга с 40% до приемлемых 85%. И так как этот отчет давал обратную связь по действиям на front-end, в какой-то момент мы смогли пофиксить основные баги на сайте и получить матчинг 90%.

4. В процессе реализации кейса мы столкнулись еще с одной задачей — контролировать расходы на GBQ.

Качество данных — не единственный важный объект ежедневного контроля. В Okko с данными работают десятки сотрудников. И неаккуратная работа с запросами может неожидаемо увеличить расход компании на поддержку аналитики.

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

1. Дашборд с мониторингом количества и стоимости Гб, обработанных Google BigQuery:

Здесь можно посмотреть, под каким аккаунтом больше всего напроцессили данных, и предупредить конкретного менеджера, который превысил лимит.

2. Telegram чат с уведомлениями, в который приходят сообщения о том, что отчет не обновился или превышены расходы по Google BigQuery. Это помогает нам планировать месячные расходы на процессинг данных.

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

Планы на будущее

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