[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjog" } } }, { "id": 10, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "create", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-250597-0", "render_to": "inpage_VI-250597-0-549065259", "adfox_url": "//ads.adfox.ru/228129/getCode?p1=bxeub&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid21=&puid22=&puid31=&puid32=&fmt=1&pr=" } } ]
{ "author_name": "Roman Goroshkin", "author_type": "self", "tags": ["\u043e\u043f\u044b\u0442","\u043c\u0430\u0440\u043a\u0435\u0442\u0438\u043d\u0433"], "comments": 2, "likes": 18, "favorites": 4, "is_advertisement": false, "section_name": "gamedev", "id": "2753" }
Roman Goroshkin
2 069
Gamedev

Как бороться с оттоком игроков с помощью анализа данных на примере Top Eleven

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

Поделиться

В избранное

В избранном

«Отвал» — явление, широко известное во многих отраслях, в том числе в банковском деле, телекоммуникациях и играх.

Инженер по работе с данными компании Nordeus Милош Милошевич (Miloš Milošević) написал заметку про способы борьбы с этим явлением на примере проекта Top Eleven.

Роман Горошкин, директор по развитию ITLabz, перевёл текст статьи специально для DTF.

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

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

Но что, если есть нечто, что мы можем проанализировать заранее и уменьшить отток, не отвлекая и не загружая команду разработки? Этим вопросом мы задались в Nordeus для того, чтобы выявить ранний отток игроков в нашей флагманской игре Top Eleven.

Top Eleven — социальный кросс-платформенный футбольный менеджер со 120 млн зарегистрированных игроков. Игра работает по модели free-to-play

При регистрации пользователь получает в управление футбольный клуб, чтобы создать из него лучшую в мире команду. Можно управлять тактикой игры, обучать футболистов, работать с их трансфером, и конечно, играть матчи. За сезон проходит три соревнования — Лига, Чемпионат и Кубок — а его длительность составляет 28 дней.

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

Идентификация раннего «отвала»

Итак, как же мы прогнозируем ранний отток клиентов? Оказалось, что это больше вопрос о том, «когда», а не «каким образом». В зависимости от конкретного примера для раннего прогнозирования оттока абонентов и вашей игры в целом, вы можете включать алгоритм предсказания чуть раньше или позже. Когда мы начали внедрять нашу систему раннего прогноза оттока абонентов в Top Eleven, мы знали, что нужно повторно активировать игрока с помощью персонализированных push-уведомлений. Но мы всё ещё не могли понять, какой именно момент мы хотим предугадать. Так что же вы делаете, когда вы не знаете о чём-то наверняка? Вы проверяете гипотезу экспериментом!

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

После моделирования системы мы рассылаем неперсонифицированные push-уведомления, которые предлагают пользователю заново войти в игру, для того, чтобы получить доказательства для нашей системы. Получается следующее:

Модель по третьему дню даёт нам наилучший результат точности возврата, но удовлетворённость уровнем реактивации невысокая

Модель по второму дню сохраняет уровень точности возврата второго дня, однако реактивация нас всё ещё не устраивает

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

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

Первым делом мы обращаем внимание на регистрационную информацию пользователя, надеясь использовать качество этого ресурса, как один из индикаторов для прогноза. Мы собираем данные о платформе, с которой прошла регистрация, регионе и стране, UTM-коде, а также о том, был ли этот пользователь зарегистрирован в Top Eleven ранее. Мы так же смотрим на наши данные по активности, где видим количество сессий, их длину, интервалы между ними, для того, чтобы попытаться получить представление об уровне вовлечённости игроков. В наших данных были и действия с внутриигровой валютой, для измерения количества бустеров, купленных и потраченных пользователем. С этими функциями модели работали нормально, но в итоге мы всё несколько усложнили.

Что действительно повысило точность, так это учёт преимуществ сбора данных из наших внутриигровых событий и добавление пользовательских кликов в качестве признаков. Рассортировав эти клики по определённым игровым функциям в Top Eleven, мы смогли понять, какие из них нравятся пользователям больше или меньше всего. Это, с добавлением некоторых специфических особенностей игры, по которым мы ясно понимали корреляцию с уровнем оттока, дало нам данные для моделей, которыми мы в конечном итоге были удовлетворены.

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

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

Углубляясь в производительность модели с точки зрения точности и возврата, в качестве цели мы выбираем максимально возможное значение параметра возврата для «уходящего» пользователя. В конце концов, мы остановились на значении возврата 0.85 и точности 0.7 для позитивного класса, а также 0.5 возврата и 0.7 точности для негативного. Относительно низкая производительность для негативного класса легко компенсируется отправкой push-уведомлений в ориентировочное время регистрации пользователя за предыдущий день. Эта небольшая хитрость ещё больше увеличивает точность показателей и влияет на ложные срабатывания.

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

Цель — отваливающиеся игроки

В этой ситуации логично прибегнуть к Push-уведомлениям, однако есть тонкая грань между грамотным использованием этого инструмента и спамерством. Миллиарды приложений бомбят пользователя уведомлениями регулярно, а терпение — ресурс, который быстро заканчивается. Нашей целью стало создание нотификации, которая несёт полезную информацию для пользователя, а он сразу сможет ею воспользоваться.

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

Помните эти объединённые пользовательские клики, которые мы использовали для прогнозирования? Мы так же можем их использовать для создания персональных сообщений. Давайте взглянем на этот график:

Здесь вертикальные линии представляют разные игровые функции в Top Eleven и цветные линии представляют разные типы пользователей. Оранжевые парни однозначно фанаты разделов «Команда» и «Тренинг», тогда как красным, например, больше всего нравится «Лига». Если мы предположим, что люди уходят из игры потому, что находят её очень сложной, и что они точно запомнят самую часто используемую вкладку в меню, то сможем создать максимально подходящий формат сообщений, который сможет объяснить пользователю, как пользоваться той или иной функцией.

Рассмотрим два этих примера:

Знаете ли вы, что тренировки напрямую влияют на умения ваших игроков?
Знаете ли вы, что можете заполучить себе в клуб известных игроков, приняв участие в аукционе?

Эти оповещения объясняют, как в Top Eleven работают тренировки и аукционы. Так же стоит отметить, что они звучат достаточно интригующе и очевидно соединены с тем или иным элементом игры, то есть, когда игрок откликается, то попадает в соответствующее меню игры.

Измеряя результаты

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

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

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

Как сразу можно заметить, мы достигли значительно более высоких результатов в базовой и тестовой группе. Удержание в базовой группе было на 30% больше, чем в контрольной, а тестовая вообще показала прирост на 40% относительно базовой.

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

Надеюсь, что вам понравилась эта статья, а удовольствия от её прочтения вы получили не меньше, чем я от её написания. Люблю делиться своим опытом и знаниями, и с радостью буду делать в будущем.

#опыт #маркетинг

Популярные материалы
Показать еще
{ "is_needs_advanced_access": false }

Комментарии Комм.

Популярные

По порядку

0

Прямой эфир

Узнавайте первым важные новости

Подписаться