Name the IDs your analytics sees

The Adapty SDK reports every screen view and every answer to your app. Each event includes the ID of the screen or element it came from, and those IDs are what your own analytics displays. By default a screen’s ID looks like scr_oAPBHPa7, so a funnel in Amplitude or Mixpanel reads as a column of codes, and someone has to keep a code-to-name mapping by hand.

You can name these IDs yourself. Inputs and selectable groups are named in the Flow Builder. Screen IDs are set through the flow-generator skill, which renames a screen everywhere the flow refers to it.

Important

Renaming screens is part of the flow-generator skill, so there is nothing extra to install — follow the flow-generator installation steps and you have it. It saves changes to flows in your dashboard, so run it against a draft first and review the result in the Flow Builder before you publish.

What it’s for

  • A funnel your team can read: The sequence welcome → signup → paywall says what happened. Three generated codes do not.
  • One vocabulary across tools: The name you give a screen is the name in Adapty’s flow metrics and in your own analytics, so the two line up without a lookup table.
  • Answers you can query: A quiz option named beginner is a value an analyst can filter on. A generated ID has to be decoded first.

Which IDs your analytics sees

Two events carry IDs. flow_screen_showed fires when a user opens a screen, and flow_user_input fires when a user fills an input, picks a quiz answer, or flips a toggle. Each guide documents every parameter of its event. This table covers only the parameters that identify a screen or an element.

Event parameterWhat it containsWhere you set it
instanceIdThe screen’s IDThe flow-generator skill
element_idAn input’s Element ID, or a selectable group’s Group IDFlow Builder
item_idsThe Element IDs of the selected optionsFlow Builder

Name inputs and quiz options

Inputs and selectable groups have ID fields in the builder. An input’s Element ID is in Input settings, and it is the same ID you use to reference the value elsewhere in the flow — see Inputs and forms. A group’s Group ID is in Screen settings > Selectable groups, and each option inside it takes its own Element ID.

Give every one of them a name that means something on its own, because that is the string your analytics displays. birthday and beginner need no explanation. el_024F needs a mapping.

Set the ID when you add the element, not later. Conditions and text variables point at an Element ID, and changing that ID does not update them — they stop resolving, with no error. To rename one on a flow that already works, update every condition and variable that uses it. See Conditions and variables break after an element ID change.

The flow-generator skill names these for you on any flow it builds. The flow-audit skill reports the ones that are missing.

Rename screens

The Flow Builder has no field for a screen’s ID, so ask the skill:

Give the screens in my onboarding flow readable IDs.

The skill proposes a name for each screen, then renames it everywhere the flow points at it — the screen itself, every navigation action that leads there, and the products attached to it. It renames all of them together, because a screen renamed in one place and not another is a flow that will not publish.

It tells you which names it changed and how many references moved, and it will not run a rename that collides with a screen that already exists. A screen ID is safe to rename on a flow that already works, which an Element ID is not: the skill moves every reference with it.

What to check

  • Rename before the flow goes live: Events already collected keep the old ID, in Adapty’s flow metrics and in your own analytics. A funnel that spans the change shows two half-filled screens, and renaming back does not merge them.
  • Every option in a group needs its own Element ID: If an option is missing one, if two options share one, or if the Group ID is reused on another screen, the whole group reports nothing — not only that option. Nothing in the builder flags it, so review the group after you add an option to it.
  • IDs reach your analytics exactly as typed: Pick one style, such as plan_selection or planSelection, and use it across the flow. Mixed styles are harder to query than generated codes.

Limitations

  • Screen IDs are renamed through the skill only: There is no field for them in the Flow Builder.
  • Renaming does not migrate history: Old events keep the old ID.
  • Some elements send no input event: Password fields, product selections, and tab switches never report. Naming one affects the flow, not your analytics.