Branching Logic
Create smarter, more personalized surveys by conditionally showing questions based on your users' previous answers.
Overview
Branching Logic lets you define a dynamic path through a Custom Survey, where the next question shown to the end user depends on the answer they just gave. You can also use it to skip ahead, end the survey early, or jump straight to the thank-you message based on a specific response.
This helps you:
Show only the questions that are relevant to each user, reducing survey fatigue and increasing completion rates
Segment feedback during collection
Run shorter, more intentional surveys without sacrificing depth
Availability
Available for Custom Surveys only
Supported on:
iOS SDK v19.6.0 and above
Android SDK v19.5.0 and above
React Native & Flutter support coming soon
Branching is disabled by default per survey and needs to be toggled on in the Content Builder
Note: Surveys with branching enabled will only be shown to end users who are on an SDK version that supports the feature. Users on older SDK versions will not see the survey.
Supported question types
Branching can be configured for the following Custom Survey question types:
#1 Single-select (Multiple Choice)
Branch based on the specific answer your user picks. A branching option is added next to each choice so you can map every answer to a different target question.
Example:
Q1: Did you find what you were looking for?
"Yes" → go to Q3
"No" → go to Q2 (default path)
#2 Star rating
Branch based on the user's rating, grouped into three predefined buckets:
1 or 2 stars
3 stars
4 or 5 stars
Each bucket can be mapped to a different target question.
Example:
1-2 stars → go to Q4 (What went wrong?)
3 stars → go to Q5 (What could be better?)
4-5 stars → go to Q6 (What did you love?)
#3 Text field
Branching for text field questions happens at the question level, not based on the answer content. Once the user submits their response, the survey can jump to a designated question.
Configuring branching
Step 1 — Enable branching
In the Content Builder step of a Custom Survey, toggle Branching on.
Step 2 — Set the path for each answer
For every supported question, you'll see a branching option next to each choice (or at the end of the question, for text fields). Choose one of:
Go to a specific question — e.g., jump from Q1 to Q4
Next question (default) — follow the linear order
Show the thank-you message — end and display the thank-you screen
You can add as many branches as you want across different questions within the same survey (e.g., branch from Q1 and again from Q4).
Step 3 — Review & Publish
In the Review & Publish step:
An expandable branching icon appears next to each question that has branching configured, so you can verify the full flow before publishing
Viewing survey responses
On the Survey Responses page, only the questions each user actually answered are shown. There are no placeholders for questions that were skipped by the branching logic.
For example, if a user was routed through Q1 → Q3 → Q5, their response will display:
Q1: Answer
Q3: Answer
Q5: Answer
FAQs
Q: What happens to users on older SDK versions that don't support branching? A: They will not see the survey. This ensures every respondent has the same branching experience.
Q: What about surveys that were already published before my app upgraded to a branching-supported SDK? A: Cached surveys from older SDK versions continue to behave normally. Backward compatibility is preserved.
Q: Can I add branching to NPS, App Rating, What's New, or Version Update surveys? A: Not in this iteration. Branching is currently supported for Custom Surveys only.
Q: Does branching affect targeting? A: No — targeting (Auto, Manual, Email Lists) works the same way. Branching only affects the flow of questions within the survey itself.
Last updated