Называйте ID так, как их видит аналитика

SDK Adapty сообщает вашему приложению о каждом просмотре экрана и каждом ответе. Каждое событие содержит ID экрана или элемента, из которого оно пришло, и именно эти ID отображаются в вашей аналитике. По умолчанию ID экрана выглядит как scr_oAPBHPa7, поэтому воронка в Amplitude или Mixpanel представляет собой столбец кодов, а кто-то должен вручную поддерживать таблицу соответствия кодов и названий.

Вы можете задавать эти ID самостоятельно. Инпуты и группы выбора именуются во Flow Builder. ID экранов задаются через навык flow-generator, который переименовывает экран везде, где на него ссылается флоу.

Important

Переименование экранов входит в навык flow-generator, поэтому устанавливать ничего дополнительно не нужно — следуйте инструкции по установке flow-generator, и всё готово. Изменения сохраняются во флоу в вашем дашборде, поэтому сначала запустите его на черновике и проверьте результат в Flow Builder перед публикацией.

Для чего это нужно

  • Воронка, понятная любому в команде: последовательность welcome → signup → paywall говорит сама за себя. Три сгенерированных кода — нет.
  • Единый словарь во всех инструментах: имя, которое вы даёте экрану, используется и в метриках флоу Adapty, и в вашей аналитике — их не нужно сопоставлять по таблице соответствий.
  • Данные, по которым можно делать запросы: вариант квиза с именем beginner — это значение, по которому аналитик может фильтровать. Сгенерированный ID сначала нужно расшифровать.

Какие ID видит ваша аналитика

Два события несут ID. flow_screen_showed срабатывает, когда пользователь открывает экран, а flow_user_input — когда пользователь заполняет поле ввода, выбирает ответ в викторине или переключает тогл. Каждый гайд документирует все параметры своего события. В этой таблице описаны только параметры, идентифицирующие экран или элемент.

Параметр событияЧто содержитГде задаётся
instanceIdID экранаСкилл-генератор флоу
element_idElement ID поля ввода или Group ID группы с выборомFlow Builder
item_idsElement IDs выбранных вариантовFlow Builder

Имена инпутов и вариантов квиза

У инпутов и групп с выбором есть поля ID в билдере. Element ID инпута находится в Input settings — это тот же ID, по которому вы ссылаетесь на значение в других частях флоу (см. Инпуты и формы). Group ID группы задаётся в Screen settings > Selectable groups, и каждый вариант внутри неё получает свой Element ID.

Давайте каждому из них осмысленное название — именно эта строка будет отображаться в аналитике. birthday и beginner понятны без объяснений. el_024F уже требует расшифровки.

Задавайте ID элемента сразу при его добавлении, а не потом. Условия и текстовые переменные ссылаются на Element ID, и при его изменении они не обновляются — просто перестают работать, без каких-либо ошибок. Если нужно переименовать ID в уже работающем флоу, обновите все условия и переменные, которые его используют. См. Условия и переменные перестают работать после изменения ID элемента.

Навык flow-generator автоматически назначает имена при создании флоу. Навык flow-audit сообщает об отсутствующих ID.

Переименование экранов

В Flow Builder нет поля для ID экрана, поэтому попросите скилл:

Give the screens in my onboarding flow readable IDs.

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

Он сообщает, какие имена были изменены и сколько ссылок было перемещено, и не выполнит переименование, если оно пересекается с уже существующим экраном. ID экрана можно безопасно переименовывать во флоу, который уже работает, — в отличие от ID элемента: при переименовании элемента все ссылки на него переносятся автоматически.

Что проверить

  • Переименовывайте до запуска флоу: события, уже собранные под старым ID, остаются с ним — и в метриках флоу Adapty, и в вашей аналитике. Воронка, охватывающая момент смены, покажет два полупустых экрана, а обратное переименование не объединит их.
  • Каждый вариант в группе должен иметь собственный Element ID: если у варианта нет ID, два варианта делят один, или Group ID повторяется на другом экране — вся группа перестаёт репортить данные, не только этот вариант. Билдер никак это не сигнализирует, поэтому проверяйте группу после каждого добавления варианта.
  • ID попадают в аналитику ровно в том виде, в каком набраны: выберите один стиль — например plan_selection или planSelection — и придерживайтесь его во всём флоу. Разнобой стилей сложнее запрашивать, чем сгенерированные коды.

Ограничения

  • Переименование Screen ID возможно только через скилл: В Flow Builder нет отдельного поля для этого.
  • Переименование не переносит историю: Старые события сохраняют прежний ID.
  • Некоторые элементы не отправляют событие input: Поля для паролей, выбор продукта и переключение вкладок никогда не фиксируются. Присвоение им имени влияет на флоу, но не на аналитику.