Loop and Merge with Multi-Select Dropdown and Dynamic Matrix
About Loop and Merge
Loop and Merge allows you to repeat groups of follow-up questions for each option selected in a multi-select question (called "parent question" or "loop driver"). This feature is especially important for improving usability on mobile devices, because it allows users to focus on answering questions about one item at a time, without being overwhelmed by a long form.
How Loop and Merge Works
The loop driving question determines the number of generated follow-up loops based on the number of items a user selects. It can be any multi-select question type, such as:
- Checkboxes
- Multi-Select Dropdown (Tag Box)
Each loop repeats a group of the same follow-up questions for each selected item. The loops can be created using one of the following question types:
- Dynamic Panel
- Dynamic Matrix
- Multi-Select Matrix
- Single-Select Matrix
- Composite questions (nested panels)
This guide demonstrates an example in which Loop and Merge is implemented using a Multi-Select Dropdown (Tag Box) as the loop driving question and a Dynamic Matrix for follow-up loops. This example lets users select multiple tools, such as Slack and Zoom, in the Tag Box question. For each selected tool, the survey will guide the users through a set of follow-up questions configured in the Dynamic Matrix row. Once the users finish answering for one tool, they continue to the next. After all follow-up questions are answered, the users can either get back to the loop driving question to select another tool and answer a series of follow-up questions about it, or move on to the rest of the survey.
To get a better visual representation of the parent question and the loops, please refer to the image below. It shows the same questions we'll be using in this example, but with the Loop and Merge feature disabled, so that all input fields are visible at once.

Configuration
Add a Multi-Select Dropdown for the Loop Driver
The loop driving question will contain various online tools, such as Slack and Zoom, that users can select. To configure this question, follow the instructions below:
- Drag a Multi-Select Dropdown onto your form.
- Give it a name (question ID) and a user-friendly title (e.g., "Which of the following tools do you use at work?").
- Optionally, add a description.
- Under the Choice Options category, locate the Choices table.
- Click the Pen icon to start editing.
- Enter the choices in the popup and click Apply.
Add a Dynamic Matrix for Follow-Up Loops
Follow-up loops contain questions configured as Dynamic Matrix columns. The number of loops is determined by the number of selected online tools. Follow these steps to configure the Dynamic Matrix for this use case:
- Drag a Dynamic Matrix onto your form.
- Give it a name and a user-friendly title (e.g., "Feedback overview"). This title will show on the overview page once all loops are complete.
- Under the General category, locate and unselect the Enable row addition and Enable row removal check boxes. Since the number of matrix rows will be equal to the number of selected options in the Tag box question, we need to disable the ability for users to add or delete rows.
- On the design surface, select a matrix column to access its settings.
- Under General, set the Cell input type property to a required input type (e.g., Rating Scale).
- Configure the settings of the selected input type as needed.
- Repeat steps 4 to 6 for all matrix columns.
Connect the Loop Driving Question to the Follow-up Loops
To make sure that values from the loop driving question and the follow-up loops are merged together, do the following:
- Select the Multi-Select Dropdown.
- Under the Data category, locate the Join identifier setting and enter a unique value (e.g.,
products
). This value will be used later to link the Multi-Select Dropdown to the Dynamic Matrix. - Still under Data, locate the Store values in the following property editor and enter a key (e.g.,
selected-tools
). This key will store selected values for use in the Dynamic Matrix row titles.
- Select the Dynamic Matrix.
- Under Data, locate the Join identifier property.
- Enter the same value as you entered earlier in step 2, (e.g.,
products
).
Enable Loop and Merge
To configure your survey to display one question at a time, follow the steps below:
- Go to the survey-level settings.
- Under Navigation, locate the Survey layout property.
- Set this property to Show single input field per page.
Configure a Dynamic Title for Each Loop
To help users stay oriented, we'll dynamically display the selected tool name in the title of all follow-up questions using the Input field title pattern setting. This ensures users can clearly identify which tool each question refers to, even if they become distracted.
Follow the instructions below to specify a dynamic loop title:
- Select the Dynamic Matrix.
- Under General, locate the Input field title pattern setting.
- Enter the following sample value:
Tool: {row.selected-tools}
. The value that followsrow.
must match the value you entered earlier in step 3 when you connect the Multi-Select Dropdown with the Dynamic Matrix.
If you are using a Dynamic Panel, use the
panel.
prefix to access the loop driving question (e.g.,{panel.selected-tools}
).
The placeholder {row.selected-tools}
will dynamically display the selected tool's ID. If you want the loop title pattern to use a user-friendly value, make sure to enter it in the Value field (choice IDs) of the loop driving question when configuring its choice options in step 6.

If your project requirements prevent you from using user-friendly choice values in the loop driving question, but you still want user-friendly texts in the dynamic loop titles, you can create an invisible matrix column and pipe the selected choices into it. Since the questions are linked through the join identifier, this invisible column would allow you to use the display text (rather than the value) of each selected choice in the dynamic loop titles. Due to a technical limitation, you'll also need to make one of the visible matrix columns required.
To create an invisible column within the Dynamic Matrix, follow these steps:
- Select the Dynamic Matrix.
- Under Columns, click the Plus icon to add one more column.
- In the columns table, under Value assign the column the same value that you entered in the Store values in the following property field in step 3 when you connect the Multi-Select Dropdown with the Dynamic Matrix (e.g.,
selected-tools
). - Optionally, assign a title to the column and click the Pen icon to expand the column settings within the Property Grid.
- With the column selected, under General, locate Cell input type and set it to Dropdown.
- Locate and unselect the Visible property to hide the column from users.
- Under the Choice Options category, locate the Copy choices from the following question setting.
- Select the loop driving question name from the drop-down list (e.g.,
tools-list
).
- Select any of the visible matrix columns.
- Under its General category, locate and select Required.