Configure branching logic
Build surveys that adapt to each respondent in real time
- You need admin access to do this. About roles
- This is a premium feature. Contact your account manager if it's not available.
- Your Stream needs at least two Blocks to set up branching
Branching makes your surveys smarter. Show a follow-up question only when a respondent gives a specific answer to an earlier one. Skip what does not apply. Every person gets a path that actually fits them.
How It Works
Every Block after the first can carry a branching condition: "Show this question if the respondent answered [X] to [question Y]." When the condition is not met, the block is skipped entirely.
The logic is OR-based. Select multiple answers, and the block appears when the respondent chose any of them.
Which Block Types Can You Branch On?
| Block type | Can be a trigger? | Answer selection |
|---|---|---|
| Smiley | Yes | Pick one or more smiley faces (1--5) |
| NPS® | Yes | Pick one or more values (0--10) |
| Multiple Choice | Yes | Pick one or more answer options |
| Picture Choice | Yes | Pick one or more answer options |
| Free Text | Limited | No answer selection available |
| Break | No | Not a question -- nothing to branch on |
Set Up a Branching Condition
- Open the block you want to conditionally show. It must be the second block or later -- the first block always appears.
- Click Add Logic below the block card. A filter panel opens.
- Under Select question, choose the earlier question you want to branch on. Only questions that appear before this block are listed.
- Under Select answer, pick one or more answers. For Smiley blocks you see smiley face icons; for NPS, numbers 0--10; for Multiple Choice and Picture Choice, your answer option text.
- The label changes to Logic Enabled and the block gets a highlight. Your condition is live.
To remove a condition, click the delete icon (trash) next to the logic panel. The block reverts to showing for everyone.
What Happens When You Rearrange Blocks
Here is the biggest gotcha: reordering blocks can silently delete your branching logic.
Drag a block so that its branching condition no longer makes sense -- for example, move the trigger question below the block that branches on it -- and the condition is automatically removed. No warning. No confirmation.
- The trigger question is moved below the block that references it (a block cannot branch on a question that comes later).
- The branching block is moved above its trigger question (same reason -- the trigger must come first).
- The trigger question is deleted entirely -- all blocks branching on it lose their conditions.
- All selected answer options on the trigger question are removed.
If you have complex branching, be careful with drag-and-drop. Lock in your question order before adding logic.
Good to Know
There is nothing to branch on yet. Every respondent sees the first question. Branching kicks in from the second block onward.
ExpressPod streams have exactly one block, so there is nothing to branch between. Branching is available on ExpressTab, Link, and Widget streams.
Was this helpful?