6 принципов работы с новой системой аналитики Google Firebase Analytics — Колонка руководителя мобильной разработки Yolla

Руководитель отдела мобильной разработки Yolla Данил Юданов поделился с vc.ru опытом использования системой аналитики Firebase Analytics от Google. Он рассказал об основных функциях платформы, ее особенностях, достоинствах и недостатках.

Firebase Analytics резко набрала популярность после конференции Google I/O в мае 2016, где платформа стала одной из главных тем для обсуждения.

Раньше большинство мобильных аналитиков шли по одному из двух путей:

  1. Google Analytics, Flurry и другие. Настраивать SDK и плакать. Настраивать отчеты, учиться пользоваться, опять плакать. Бесплатно.
  2. Mixpanel, Amplitude. Классные системы, всё удобно, многое работает сразу из коробки. Плакать сразу после получения ежемесячного счета. Дорого.

Посмотрим, что сможет предложить Firebase. На первый взгляд стартап, купленный Google ещё в 2014, выглядит как сборная солянка: там есть аналитика, база данных, хостинг, push-уведомления и ещё несколько не очень связанных, вроде бы, сервисов. Поначалу такая универсальность настораживает.

Однако Google так решительно продвигает Firebase, что даже перенес на него всю систему push-уведомлений. После такого шага игнорировать сервис у нас уже не получалось. Логично было заодно попробовать и мобильную аналитику.

Настройка

Всё расписано по пунктам в прекрасной документации: создаешь аккаунт, добавляешь в проект SDK и файл с настройками GoogleService-Info.plist. Ещё несколько строк кода и прямая дорога в AppStore.

В файле настроек есть параметр IS_ANALYTICS_ENABLED по умолчанию установленный в NO. Если параллельно используешь Google Analytics, стоит установить его в YES. Если планируешь работать с сырыми данными, не забудь задать пользователю идентификатор.

API

После настройки сразу получаешь стандартные события из коробки: запуск приложения, получение push-уведомлений, обновление и удаление (последнее отслеживается только для Android), InApp Purchases считают без дополнительной настройки (через method swizzling).

Есть возможность добавлять до 500 своих событий. Отправка выглядит так:

Отчеты

Очень лаконичные. Проще, чем в Google Analytics, хотя в последних релизах тот двигается в сторону упрощения и Material Design.

У нас стандартные запросы к аналитике: смотрим отчеты по отдельным событиям, воронки, сегменты и удержание пользователей (retention). В Firebase всё это есть. Можно использовать встроенные сегменты, такие как страна пользователя, возраст или версия приложения. Если есть трекинг рекламных кампаний с помощью Appsflyer или аналогов, можно узнать, откуда пришел пользователь, через user properties, и таким образом смотреть аналитику и воронки с разбивкой по источнику.

Не хватает возможности Google Analytics смотреть в одном отчете разбивку по сегментам (например, по странам). То есть, один сегмент выбрать можно, а сравнить несколько сегментов на одном графике — нет.

Параметры

Точнее, их отсутствие — самый большой сюрприз Firebase Analytics. Настроив первые события, мы никак не могли найти в отчетах отправленные параметры. Неужели Google продвигает аналитику, в которой нет такой привычной функциональности? Оказалось, именно так! В отчетах есть параметры только для нескольких заранее предопределенных событий.

48380d40598bb8.png

Забавный факт: цены Amplitude и Mixpanel заставляют отправлять как можно меньше событий (это платно), но добавлять в них как можно больше параметров (это бесплатно). В Firebase ситуация прямо противоположная: всё события бесплатные, а вот увидеть свои параметры может быть проблематично. Как с этим жить:

  1. Отправлять больше событий. Например, вместо отправки события «level_achieved» с параметром «level=X», настроить отдельное событие для каждого уровня «level_achieved_1», «level_achieved_2» и т.д.
  2. Иногда бывает достаточно одного числового параметра. В таком случае можно использовать kFIRParameterValue, его значение будет видно в отчетах.
  3. Использовать тип события kFIREventSelectContent, для которого можно передавать 2 текстовых параметра (их тоже видно).
  4. Настроить выгрузку сырых данных в BigQuery и делать выборки прямо из базы. Мы выбрали именно этот вариант.

Работа с сырыми данными

Реализована через выгрузку данных в BigQuery — базу данных в облаке с дополнительными возможностями для аналитиков. Вариантов построения отчетов по данным много, для выгрузки можно использовать SQL запросы, REST API, а также различные коннекторы или сервисы — Google Data Studio, Chartio и другие.

Для работы с данными мы используем несколько SQL-запросов. Результат запроса можно сохранить в Google Spreadsheets или CSV. Потом, например, импортировать данные в Excel и построить по нему красивый график. Для некоторых запросов мы используем связку с Google Data Studio, чтобы нужные отчеты строились автоматически, без промежуточных шагов.

Особенность выгрузки — каждый день данные сохраняются в новую таблицу. Чтобы получить данные за весь месяц нужно использовать wildcard запрос:

Есть ощущение, что вся история с отсутствием параметров нужна для того, чтобы больше разработчиков познакомились с платными облачными решениями Google. С нами сработало, сервис попробовали и нам понравилось.

Стоимость

Настроить экспорт данных можно после перехода на платный тариф Firebase. Но плата будет взиматься только за использование других сервисов Firebase, таких так хостинг или тестовая лаборатория. Пакет аналитики включен во все тарифные планы бесплатно. Мы выбрали Blaze без абонентской платы. Хостинг пока не используем, поэтому за Firebase по прежнему не платим.

BigQuery платный для всех, но не очень дорогой: $0,02 за хранение 1ГБ данных и $0,05 за загрузку их в сервис (streaming insert). Запросы на чтение из базы начинают тарифицировать после 1 ТБ обработанных данных. С осени 2016 у нас набежало порядка 4 ГБ данных, а счет за последний месяц составил всего 20 центов.

Кстати, возможность выгрузки данных и Data Studio пришла к нам из платной аналитики Google Analytics 360 Suite, цены на которую начинаются от 150 тысяч долларов в год.

Итоги

Если судить по набору фич, то Firebase проиграет почти всем конкурентам. Мы ценим его именно за уникальную такую комбинацию: Простой + Бесплатный + Свои метрики (SQL-запросы и Data Studio).

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

Теги

Статьи по теме

©  vc.ru