В нашей компании мы стараемся принимать решения на основе фактов и реальной статистики. Поэтому от того, насколько быстро мы умеем агрегировать данные, зависят наши дальнейшие действия.
В играх это особенно важно. Нужно постоянно следить за кучей различных метрик: от количества загрузкок и места в рейтинге, до того, сколько уровней в среднем проходят пользователи и где возникают сложности.
Всю статистику можно разделить на 2 категории:
Сегодня я расскажу про то, как мы собираем внешнюю статистику.
Какие метрики нас интересуют? Это, в первую очередь, количество загрузок (платных, бесплатных и обновлений), продажи игр и IAP (покупок внутри игр), отзывы, средний балл и места в рейтингах. Обновление этой информации нам нужно ежедневно, рейтингов App Store – ежечасно.
Мы начинали собирать статистику, используя продукты нескольких различных сервисов. Так сложилось, что каждая из них занимается только частью метрик, но не показывают общей картины:
Однако, если у тебя представлено хотя бы 3 приложения в сторах, то собирать статистику по ним вручную можно часами. А как только ты выходишь на новый стор, количество работы растет экспоненциально.
На рисунке – наша изначальная ситуация.

К каждому стору необходимо подключаться и забирать данные вручную, используя интерфейс этого стора. В итоге, все сводилось в единую таблицу в Excel.
Перед нами стояла дилемма: написать собственный агрегатор, обходящий каждый стор/сервис, либо воспользоваться готовыми системами. Мы решили не изобретать велосипед и посмотреть, что есть на рынке.
Мы потратили определенное время, выбирая лучший агрегатор и остановились на Distimo Monitor. Он работает почти со всеми крупными сторами, позволяет собрать с каждого все перечисленные метрики. После подключения, ситуация стала лучше:

Distimo помогает нам агрегировать следующие метрики:
Однако, все еще остаются вещи, которые приходится собирать вручную.
Во-первых, Distimo работает только со сторами, аккаунты издателей (в нашем случае, Chillingo) подключить не удастся. Данные от Chillingo приходится также обрабатывать руками и суммировать с данными, полученными от Distimo.
Во-вторых, Distimo работает только с крупными сторами, мелкие магазины приложений или рекламодатели им не обсчитываются.
Во-третьих, Distimo довольно грубо считает платежи: не учитывает налоги, использует не всегда достоверный обменный курс.
Мы хотим иметь одну систему, которая сможет ответить на все наши вопросы по статистике и избавить нас от ручного сбора.
Поэтому мы решили собирать все данные от Distimo, финансовую статистику и оставшиеся сторы с помощью собственного парсера. Такой парсер должен постоянно обходить сервисы, забирать данные и складывать в базу.
Сейчас мы сами создаем такой агрегатор, но чувствуем, что текущим составом не справляемся. Поэтому если вы разбираетесь в серверсайд-разработке, хотите работать с Big Data и твердо знаете хотя бы один из скриптовых языков – приходите к нам писать собственную систему статистики. Работы много и вся она интересная. Присылайте ваши резюме и ссылки на проекты в Github на job@zeptolab.com или kirilld@zeptolab.com.
В следующий раз я расскажу про более интересную часть статистики – анализ поведения пользователей, разбиение их на группы и подсчеты конверсий.
В играх это особенно важно. Нужно постоянно следить за кучей различных метрик: от количества загрузкок и места в рейтинге, до того, сколько уровней в среднем проходят пользователи и где возникают сложности.
Всю статистику можно разделить на 2 категории:
- внешняя т.е. та, которая не связана напрямую с геймпплеем
- внутренняя (in-game), отражающая поведение пользователя внутри игры
Сегодня я расскажу про то, как мы собираем внешнюю статистику.
Какие метрики нас интересуют? Это, в первую очередь, количество загрузок (платных, бесплатных и обновлений), продажи игр и IAP (покупок внутри игр), отзывы, средний балл и места в рейтингах. Обновление этой информации нам нужно ежедневно, рейтингов App Store – ежечасно.
Как мы начинали собирать данные
Мы начинали собирать статистику, используя продукты нескольких различных сервисов. Так сложилось, что каждая из них занимается только частью метрик, но не показывают общей картины:
- App Annie – показывает рейтинг приложений в App Store, позволяет смотреть историю рейтингов, бесплатный
- AppFigures – агрегатор загрузок, платежей, рейтингов и отзывов, однако работает только с App Store/Android Market, требует регистрации, платный
- AppComments – граббер отзывов из App Store. Не требует регистрации, бесплатный.
- iTunes Connect, Google Checkout, Android Market и веб-интерфейсы других сторов/издателей – для сбора данных по загрузкам и платежам
Однако, если у тебя представлено хотя бы 3 приложения в сторах, то собирать статистику по ним вручную можно часами. А как только ты выходишь на новый стор, количество работы растет экспоненциально.
На рисунке – наша изначальная ситуация.

К каждому стору необходимо подключаться и забирать данные вручную, используя интерфейс этого стора. В итоге, все сводилось в единую таблицу в Excel.
В поисках лучшего решения
Перед нами стояла дилемма: написать собственный агрегатор, обходящий каждый стор/сервис, либо воспользоваться готовыми системами. Мы решили не изобретать велосипед и посмотреть, что есть на рынке.
Мы потратили определенное время, выбирая лучший агрегатор и остановились на Distimo Monitor. Он работает почти со всеми крупными сторами, позволяет собрать с каждого все перечисленные метрики. После подключения, ситуация стала лучше:

Distimo помогает нам агрегировать следующие метрики:
- количество загрузок по дням, странам, приложениям, устройствам,
- платежи по сторам, приложениям и странам,
- изменение рейтингов наших приложениях в сторах, сравнение с рейтингами других игр,
- изменение среднего балла приложений в сторах, новые отзывы, плохие/хорошие отзывы.
Однако, все еще остаются вещи, которые приходится собирать вручную.
Во-первых, Distimo работает только со сторами, аккаунты издателей (в нашем случае, Chillingo) подключить не удастся. Данные от Chillingo приходится также обрабатывать руками и суммировать с данными, полученными от Distimo.
Во-вторых, Distimo работает только с крупными сторами, мелкие магазины приложений или рекламодатели им не обсчитываются.
Во-третьих, Distimo довольно грубо считает платежи: не учитывает налоги, использует не всегда достоверный обменный курс.
И все-таки писать самим
Мы хотим иметь одну систему, которая сможет ответить на все наши вопросы по статистике и избавить нас от ручного сбора.
Поэтому мы решили собирать все данные от Distimo, финансовую статистику и оставшиеся сторы с помощью собственного парсера. Такой парсер должен постоянно обходить сервисы, забирать данные и складывать в базу.

Сейчас мы сами создаем такой агрегатор, но чувствуем, что текущим составом не справляемся. Поэтому если вы разбираетесь в серверсайд-разработке, хотите работать с Big Data и твердо знаете хотя бы один из скриптовых языков – приходите к нам писать собственную систему статистики. Работы много и вся она интересная. Присылайте ваши резюме и ссылки на проекты в Github на job@zeptolab.com или kirilld@zeptolab.com.
В следующий раз я расскажу про более интересную часть статистики – анализ поведения пользователей, разбиение их на группы и подсчеты конверсий.