Skip to content
Components

Input Components

Collect user input with text fields, dropdowns, checkboxes, and more.

Input Components

Input components let you collect information from users directly within your flows. Every input component supports a variableName property that determines how the collected value is stored and referenced, both within the current flow and as a user attribute for future targeting.

All input values collected through these components are available in your flow analytics and can be saved as user attributes for segmentation and targeting.

TextInput

A text field for collecting free-form text responses. Supports single-line and multi-line modes.

Properties

PropertyTypeDescription
PlaceholdertextGhost text shown when the field is empty.
Variable NametextKey used to store the entered value.
MultilinebooleanEnable multi-line input (textarea). Default: false.
Max LengthnumberMaximum character count.
RequiredbooleanWhether the field must be filled before proceeding.
Keyboard TypeselectInput keyboard hint: default, email, numeric, phone, url.
Font SizenumberText size within the field.
Text ColorcolorInput text color.
Background ColorcolorField background color.
Border RadiusnumberCorner rounding.
Border ColorcolorField border color.
PaddingspacingInternal spacing.

Use cases

  • Collecting a user's name during onboarding
  • Open-ended feedback after a feature interaction
  • Email address capture for lead generation

A selection component that presents a list of options in a native dropdown/picker interface.

Properties

PropertyTypeDescription
OptionsarrayList of selectable options, each with a value and display label.
PlaceholdertextText shown when no option is selected.
Variable NametextKey used to store the selected value.
RequiredbooleanWhether a selection is required.
Background ColorcolorDropdown background.
Text ColorcolorOption text color.
Border RadiusnumberCorner rounding.

Option labels are localizable. You can provide translated labels for each language your flow supports.


Checkbox

A multi-selection component where users can toggle one or more options on or off.

Properties

PropertyTypeDescription
OptionsarrayList of checkbox options with value and label.
Variable NametextKey used to store the array of selected values.
RequiredbooleanWhether at least one option must be selected.
Min SelectionsnumberMinimum number of required selections.
Max SelectionsnumberMaximum allowed selections.
Check ColorcolorColor of the checked indicator.
Label ColorcolorText color for option labels.
Layout DirectionselectVertical or horizontal arrangement.

Use cases

  • Multi-topic interest selection during onboarding
  • Feature preference gathering
  • Terms and conditions acknowledgment

RadioGroup

A single-selection component that presents a list of mutually exclusive options. RadioGroup is one of the most powerful input components because it supports conditional branching: each option can route the user to a different screen.

Properties

PropertyTypeDescription
OptionsarrayList of radio options with value and label.
Variable NametextKey used to store the selected value.
RequiredbooleanWhether a selection is required.
Selected ColorcolorColor of the selected radio indicator.
Label ColorcolorText color for option labels.
Layout DirectionselectVertical or horizontal arrangement.

Branching

RadioGroup selections can drive the flow path. In the flow graph editor, create a branch node connected to the screen containing the RadioGroup. Map each option value to a target screen:

  • Option "Beginner" leads to Screen A (introductory content)
  • Option "Advanced" leads to Screen B (power-user features)
  • Option "Just browsing" leads to Screen C (quick tour)

This creates genuinely personalized journeys without requiring separate flows.


Segmented Control

A single-select control with two layouts. The default segmented layout is a compact tab strip; the stacked layout renders each option as a full-width card with an icon, title, and description, ideal for goal pickers and onboarding choices.

Properties

PropertyTypeDescription
OptionstextOne option per line as value|label, or value|label|description|icon for stacked cards.
LayoutselectSegmented (tab strip) or Stacked (full-width cards).
Save to AttributetextUser attribute that stores the selected value.
Default ValuetextValue of the initially selected option. Leave empty for no pre-selection.
RequiredbooleanBlock the screen's Continue button until an option is selected. Only applies to the stacked layout (a tab strip always has one active tab).
Selected ColorcolorSelected segment color (segmented layout).
Track ColorcolorBackground track color (segmented layout).
Text ColorcolorOption label color.

The stacked layout adds card styling: Card Background, Card Border, Selected Card Background, and Selected Card Border.

Use cases

  • "What do you want to do?" goal selection
  • Plan or billing-period toggles (Monthly / Yearly)
  • Unit or preference switches (lb / kg)

MultiSelect

A chip-style multi-selection component where users pick from a set of options displayed as tappable chips or tags.

Properties

PropertyTypeDescription
OptionsarrayList of selectable options with value and label.
Variable NametextKey used to store the array of selected values.
RequiredbooleanWhether at least one chip must be selected.
Min SelectionsnumberMinimum selections required.
Max SelectionsnumberMaximum selections allowed.
Chip BackgroundcolorDefault chip background color.
Chip Selected BackgroundcolorBackground color when selected.
Chip Text ColorcolorLabel color.
Chip Border RadiusnumberCorner rounding for chips.
GapnumberSpacing between chips.

Use cases

  • "What are you interested in?" topic selectors
  • Feature discovery preferences
  • Multi-category filtering

Slider

A numeric range slider for collecting a value within a defined minimum and maximum.

Properties

PropertyTypeDescription
Variable NametextKey used to store the selected value.
Min ValuenumberMinimum slider value. Default: 0.
Max ValuenumberMaximum slider value. Default: 100.
StepnumberIncrement step size. Default: 1.
Default ValuenumberInitial slider position.
Show ValuebooleanDisplay the current value alongside the slider.
Track ColorcolorColor of the slider track.
Active Track ColorcolorColor of the filled portion of the track.
Thumb ColorcolorColor of the draggable thumb.

Use cases

  • Budget or price range selection
  • Satisfaction level measurement
  • Frequency or intensity preferences

Stepper

A discrete number stepper: a label and a minus / value / plus control. The minus and plus buttons step the value by a fixed amount between a minimum and maximum, and each disables at its bound. Use it when a precise whole number matters more than a quick drag, such as age, height, or quantity.

Properties

PropertyTypeDescription
LabeltextText shown to the left of the control.
UnittextSuffix appended after the value (e.g. yr, lb, kg).
MinnumberMinimum value. Default: 0.
MaxnumberMaximum value. Default: 100.
StepnumberIncrement per tap. Default: 1.
Default ValuenumberInitial value, clamped into the min / max range.
Save to AttributetextUser attribute that stores the selected value.
DisabledbooleanRender the control as read-only.
Text ColorcolorLabel and value color.
Button BackgroundcolorBackground of the minus / plus buttons.
Button Icon ColorcolorColor of the minus / plus glyphs.

Use cases

  • Age, height, or weight during onboarding
  • Quantity selection
  • Goal targets that need an exact number

DatePicker

A date selection component that opens the native platform date picker.

Properties

PropertyTypeDescription
Variable NametextKey used to store the selected date.
PlaceholdertextText shown before a date is selected.
Min DatetextEarliest selectable date.
Max DatetextLatest selectable date.
Date FormatselectDisplay format (e.g., MM/DD/YYYY, DD.MM.YYYY).
Background ColorcolorPicker background.
Text ColorcolorDate text color.
Border RadiusnumberCorner rounding.

Use cases

  • Birthday collection during onboarding
  • Event scheduling within flows
  • Subscription or trial date preferences

On this page