Аналитик Drimmi Иван Заворин в корпоративном блоге компании опубликовал заметку «Lifetime. Время играть», посвященную «времени жизни» пользователя в игре и методу ее оценки по соотношению активных пользователей приложения за неделю и прироста аудитории за тот же период. Для «Рыбного места» в русских сетях оно, например, согласно расчетам по предложенной формуле, составляет в среднем 30 дней.
Популярность социальных игр во многом обусловлена легкостью и доступностью геймплея, что отличает данный вид развлечений от классических (т.н. «хардкорных») компьютерных игр. Однако у медали есть и обратная сторона — социальные игры не способны вызывать высокую зависимость у игроков. В этом случае принято говорить о термине lifetime — «времени жизни» пользователя в игре. О том, как грамотно оценить lifetime и пойдет речь в этой статье.
Lifetime, по определению — это отрезок времени между регистрацией пользователя в игре и его последним посещением. Для собственных приложений всегда доступна полная статистика, основываясь на которой lifetime можно рассчитать точно. Для приложений сторонних разработчиков можно предложить только оценку, используя открытые данные. Рассмотрим один из методов такой оценки.
Рассмотрим идеальный случай: все пользователи играют каждый день своего «периода жизни». DAU в этом случае складывается из игроков, чей жизненный период пришелся на конкретный день. Иначе говоря, игроков, пришедших в игру за отрезок времени до рассматриваемого дня, меньший, чем lifetime. Приняв данную модель, получаем, что DAU состоит из числа ежедневных приростов аудитории, равного количеству дней, составляющих жизненный период игрока. Тогда

где DAU — активные пользователи за сутки, а dI/dD — суточный прирост аудитории.
У идеальной модели есть один существенный недостаток — предположение, что пользователи играют каждый день. Для его устранения следует перейти к т.н. «характерному размеру задачи«. Это временной отрезок, который удовлетворяет двум условиям:
- Два и более отрезка неотличимы друг от друга.
- Отрезок должен быть минимальным.
Очевидно, что дни различны — выходной отличается от будней. Следующий по величине отрезок — неделя. И как раз он нам подходит, т.к. недели, как правило, неотличимы друг от друга.
От дня переходим к неделе, т.е. от дневного прироста к недельному, а от DAU к так редко используемому, но очень показательному WAU (Weekly Active Users).

где WAU — активные пользователи за неделю, а dI/dW — прирост аудитории за неделю.
Для более точного результата следует использовать медианное значение WAU и dI/dW на продолжительном временном отрезке (1-2 месяца).
В качестве примера мы отследили WAU наших приложений за последнюю неделю и получили следующие результаты для приложения «Рыбное место» во всех трех российских социальных сетях:
- «В контакте» — 33,19 дня
- «Одноклассники» — 27,44 дня
- «Мой мир» — 32,20 дня
Безусловно, в этот показатель вносят очень большой вклад т.н. «мертвые души» — пользователи, которые после установки приложения, практически к нему не возвращаются. Указанные значения — всего лишь средний результат, на который вам стоит смотреть через призму активности игроков. В ближайшее время мы опубликуем цифры, показывающие lifetime активных игроков.






Формула однобока, Лайфтайм определяется также еще и конкурентной средой. Больше игр- меньше средний срок жизни одной игры на пользователя.
мне кажется надежнее такие вещи как лайфтайм измерять имперически. не говоря уже о том, что он прежде всего будет зависеть от поддержки и развития игры ее владельцами, от потенциала геймплея и т.д. в общем, от вещей плохо описываемые формулами. так что практическая ценность этой публикации сомнительна.
Евгений, как раз эмпирические результаты формулу подтверждают. В нашем случае.
Вячеслав, мы говорим об определении лайфтайма пост-фактум, когда он уже случился (и конкурентная среда на него повлияла). Не всегда удобно делать запросы к базе.
Виктор, а я думал, что мы говорим о формуле! Лайфтайм теперь уже обязательная штуковина при планировании игры и все такое…. Теперь вопрос: если вы выводите формулу к результатам, т.е. к тому, что уже свершилось, то какая ее практическая польза при планировании? Никакой. Отсюда и вывод.
вот, Вячеслав дело говорит. невозможно спланировать лайфтайм игры на этапе ее разработки или планирования. можно только предполагать. а для предположений полезнее опыт и интуиция нежели формулы.
Вячеслав, формула говорит о взаимосвязи данных по лайфтайму, которые достаются руками из базы и недельной аудиторией. Безусловно, на этапе старта формула бесполезна. Но вот во время активной жизни позволяет видеть текущие результаты без запросов к базе.
Опыт и интуиция – это самообман, в каком-то роде. Математика ис татистика рулят
Математика рулит-факт.
Лайфтайм нужен при планировании- факт.
Соедините два факта и дайте мне формулу, спасибо=)
Вы бкдете смеятьс, но мы работаем над этим :)
Мило.какие сторонние параметры учитываются?
Непонятно, почему «не всегда удобно делать запросы к базе». Актуальную статистику нельзя считать по формулам, это же бред – как определять скорость машины по формуле вместо спидометра.
Относительно статьи – мне кажется, что вы скорее подогнали некую абстрактную формулу к имеющимся результатам. У других разработчиков они будут другими – зависит от игры, от сетки, от частоты апдейтов, от виралки и т.д, и т.п.
Огласите свои результаты или не будьте голословны.
У всех приложений, к которым я имею доступ и которые имеют разный геймплей (это больше десятка игра) полностью разная статистика, не сводимая к единому алгоритму определения. Отсюда мое замечание
У успешных приложений мне известных – в разы больше указанных вами сроков.
2Леонид:
Придется верить на слово :)
Да уж придется ) Ну можем как-то пересечься, от Никиты нет секретов. А еще раз – что такое «неудобно делать запрос к базе»?
Если вам формула кажется абстрактной и подогнанной, то вы просто не поняли как она работает.
Напрямую не учитывая конкурентную среду, формула лайфтайма косвенно подразумевает влияние конкурентов. Это очевидно. И кто сказал, что планирование необходимо только при первичном запуске игры? Результаты помогут при планировании дальнейшей стратегии развития приложения на разных площадках. Как – это зависит от аналитики создателей.
Больше не дает делать вложенный комментарий.
У нас, думаю у вас тоже – визуализация данных из базы нормально настроена. Копайся – не хочу. Интереснее доставать вкусные данные с тех, что кажутся поверхностными. Ведь нормальной статистики у платформ все еще нет. К ДАУ вот только пришли – и то радует.
Такая попытка вклада в индустрию со стороны теоретических изысканий заслуживает поощрения, это безусловно здорово.
Но хочу заметить, что если хуй поделить на залупу, получится не то, что вы ищете, а именно хуй, поделенный на залупу. Даже если очень хотеть получить что-то другое, и даже если оба параметра измерять в сантиметрах.
Спасибо улыбнуло, чуть со стула не упал :)
[DAU] = чел/день
[dI/dD] = чел
["lifetime"] = 1/день – что-то это как-то на время не похоже
[DAU] = чел
[dI/dD] = чел/день
[lifetime] = день
Был слегка неправ, признаю, но верная формула должна выглядеть как:
lifetime = DAUср/DIср
,где
DAUср – среднестатистическое количество активных пользователей в день за период (например месяц)
DIср – среднестатистическое количество установок в день за период (например месяц)
Есть разницы между WAU/WI и DAUср/DIср, потому что есть очень разные методы получения среднего
Не понял, если у меня за месяц, например, av[dI/dW] близко к нулю, то у меня аудитория живет бесконечно? А если вдруг случилось отрицательное, то лайфтайм в отрицательных днях измеряется?
Нужно брать в расчет не относительный прирост аудитории с учетом удаленных, а именно новые установки. Если же число новых установок в игре равно нулю, то и DAU упадет к нулю.
Если же число новых установок в игре равно нулю, то и DAU упадет к нулю.
——-
С какого перепуга?
По поводу:
> Математика и cтатистика рулят
Приведу несколько «интересных» фактов касательно математики в этой статье:
Пункт 1:
При расчетах dI/dW не учитывается тот факт, что пользователи могут удалять приложения со своих страниц. В результате мы можем получать такие казусы как деление на ноль, или вообще отрицательные значения LT. В действительности, это число вероятно всегда положительно, и погрешность из за этого составляет небольшие проценты, но опять же остается смутный осадок, что мне предлагают поделить на ноль.
В комментах уже указано, что надо брать именно новые установки, почему нельзя было это описать в статье? (хотя в статистике фейсбука есть приложения с отрицательными weekly grow)
Пункт 2:
Рассмотрим случай когда LT << W (Лайфтайм значительно меньше недели).
Пусть у нас есть замечательная рекламная кампания, которая приводит к нам 10 новых пользователей в игру 1 раз в неделю. Они играю ровно 1 час и выходят, и больше никогда не появляются. Итого мы имеем следующее в течение месяца:
dI/dW = 10 (10 новых установок каждую неделю)
WAU = 10 (10 уникальных пользователей играют каждую неделю)
Тогда используя формулу выше, мы получаем: LT = 10/10 = 1 неделя. И мы ошиблись где то примерно в 24*7 раз.
Почему так получается? потому, что изначально предполагается, что пользователи могут закончить свой "жизннный цикл" только в конце дискретного временного периода который мы выбрали, т.е неделя. Формула слепа к значениям LT << W, и будет давать значительную погрешность при значениях LT > W (Лайфтайм значительно больше недели).
Пусть у нас нет никаких рекламных камапний, но у нас есть 10000 пользователей в игре, которые активно играют каждый день. За месяц к нам пришло 10 новых пользователей, которые так же активно начали играть. Тогда получается следующее:
dI/dW = 2.5 (2.5 новых установок в неделю, примерно)
WAU = 10005 (среднее за этот месяц)
Тогда используюя формулу выше, мы получаем: LT = 10005/2.5 = 4002 недели, и мы опять ошиблись даже хз во сколько раз.
Почему так получается? потому, что изначально предполагается, что за выбранный промежуток времени (неделя), будут случаться «смерти» игроков. В примере их не случается, и формула тут же выскакивает за рамки разумного. Т.е формула не может работать со значениями LT >> W. И даже при LW > W будет давать значительные погрешности.
Выводы пунктов 2 и 3:
Вы проводите все вычисления в какой то промежуток времени (назовем его далее Т). Сначала это день (DAU, dI/dD), потом неделя. При чем не обосновываете почему именно эти временные промежутки.
Что бы формула работала необходимо, что бы LT ~ T (т.е промежуток времени был очень близок к реальному LT). Но так как дисперсия(разброс значений) будет очень большой для всех юзеров приложения, то выбрать этот промежуток довольно сложно. Выши вычисления показывают, что время жизни примерно составляет месяц, при том, что временной интервал меньше в 4 раза. Рискну предположить, что вы ошиблись на несколько десятков процентов. Хотя вы приводите данные с точностью до 1го знака после запятой, что говорит, что о таких понятиях как погрешность вычислений, вы не хотели писать.
В текущем изложении статью к сожалению можно описать следующим предложением:
«Как поделить одно число на другое (иногда ноль) и получить третье число», как использовать на практике «третье число» вы к сожалению опустили.
p.s На самом деле достаточно было добавить обоснование выбора интервала, а не перебирать сначала день, потом неделю (или с днем числа плохие получались?). Думаю, что с MAU формула в большинстве случаев будет давать более точные результаты. По крайней мере их порядок.
p.s. p.s. Знаком с Автором статьи лично, так что спорить бесполезно, проще признать что (далее цитата):
>Если вам формула кажется абстрактной и подогнанной, то вы просто не поняли как она работает.
что то как всегда все криво скопипастилось, имело в виду конечно:
«Формула слепа к значениям LT << W, и будет давать значительную погрешность при значениях LT > W»
По пункту 1 я уже ответил. Если в статье что-то упущено, не обязательно упоминать об этом в каждом комментарии.
Твоя ошибка в том, что ты рассматриваешь т.н. краевые условия задачи. Большинство математических методов неприменимы для краевых условий, каждый из них следует рассматривать отдельно.
Более того, краевые условия вида «в игру зашло 10 человек за неделю» это вообще бред, не имеющий ничего общего с реальностью. Если у игры прирост аудитории за неделю очень мал, то и активных игроков было очень мало, а значит эта игра никому не интересна.
Большинство более-менее успешных игр имеют лайфтайм в пределах нескольких недель и хорошо подходят под концепцию.
Числа с МАУ получаются плохими, потому что месяц слишком большой отрезок в принципе, для получения медианного значения нужно брать отрезки в полгода, что неприемлемо для быстро развивающегося рынка социгр.
Да, в статье сказано не все. Но я и не говорю о многолетних исследованиях. Это не более чем простой оценочный метод, не нужно видеть в нем попытку обмануть всех и вся.
«Если у игры прирост аудитории за неделю очень мал, то и активных игроков было очень мало, а значит эта игра никому не интересна.»
Второе не следует из первого, а третье не следует из второго.
Жёстко направленные на ЦА игры именно так и живут.
Опять-таки, был задан очень правильный вопрос. Для какой цели может потребоваться СЧИТАТЬ ПО ФОРМУЛЕ срок жизни пользователя в СВОЕЙ игре?
Для этого используются запросы к базе и составление статистических таблиц.
Зачем врать самому себе и подгонять всё под формулу?
На прошлой неделе у меня был большой прирост, а на этой маленький. Возьму-ка я данные за эту неделю.
Единственный случай её востребованности (кроме прогнозирования будущего срока жизни игроков в разрабатываемом приложении, для которого она никоим образом не применима) – это оценка чужих приложений.
А именно в таком случае ссылаться на «краевое условие» считаю неуместным.
Краевые условия могут учитываться в своих приложениях, в которых ты сам можешь учесть все закономерности экономики и включений трафика.
Тогда как именно для эффективной и быстрой оценки чужих приложений нужна универсальная формула.
>Более того, краевые условия вида «в игру зашло 10 человек за неделю» это вообще бред, не имеющий ничего общего с реальностью.
Перефразирую:
Пусть у нас есть замечательная рекламная кампания, которая приводит к нам 10000 новых пользователей в игру 1 раз в неделю. Они играю ровно 1 час и выходят, и больше никогда не появляются. Итого мы имеем следующее в течение месяца:
dI/dW = 10000 (10000 новых установок каждую неделю)
WAU = 10000 (10000 уникальных пользователей играют каждую неделю)
Тогда используя формулу выше, мы получаем: LT = 10000/10000 = 1 неделя. И мы ошиблись где то примерно в 24*7 раз.
Или 10000 это тоже краевое условие?
> Это не более чем простой оценочный метод
в таком случае необходимо указать рамки точности этой оценки