Building Forms
Repeating groups
A repeating group bundles a few related questions into one block that respondents can add over and over. One block collects a whole list — guests, line items, contacts — without you guessing how many rows to build.
What a repeating group is
A repeating group is a labeled container that holds one or more questions — its member fields. Respondents add as many entries of the whole group as they need. Each entry collects a fresh set of answers for every member field inside.
Reach for one whenever a single respondent might supply the same shape of data more than once:
Event guests — a Name and Age for each person they bring.
Order line items — a product, quantity, and price per row.
Contacts — name, email, and role for everyone on a team.
Work history — employer, title, and dates for each past job.
Add a repeating group
A repeating group is a structural block: a group title, the member fields inside it, and an add button. Groups live at the top level of your form — the editor pins that shape automatically, and you cannot nest one in another.
- 1
Insert the group
Click an empty line on the canvas, type /, and pick Repeating Group. The cursor lands in the title.
- 2
Name the group
Give it a title, like "Additional guests". This is the heading respondents see above the entries. Hide it later from the block menu if you do not want it.
- 3
Add member fields inside
Drop ordinary questions into the group — Text Input, Number, Date Picker, Dropdown, and more. Each keeps its own label, placeholder, and required toggle.
- 4
Edit the add-button label
The button reads "Add one more" until you change it. Make it match the content — "Add another guest".
Already built the fields? Select them, open the block menu from the drag handle, and choose Create repeating group — it works on one block or on a run of them. The same menu on a group offers Hide title and Remove grouping, which unwraps the questions again.
What respondents see
The first entry shows inline — the group title, its member fields, and the add button, just like any other section of the form. As soon as a respondent adds a second entry, each one becomes a numbered card (01, 02, 03 …) with a remove control in its corner.
Add button — appends a new blank entry each time it is clicked.
Remove control — the X on a card deletes that entry. It appears once there are two or more entries.
At the ceiling — a group holds up to 100 entries, and the add button also goes dead when the answers reach the 256 KB per-submission payload limit. Both are guards against runaway submissions, not something respondents normally meet.
On a request that locks one of the group’s member fields, the shape is fixed for that recipient: they can neither add nor remove entries.
Keep member fields focused
A repeating group works best with a handful of tight questions — the set a respondent fills in once per entry. The required toggle applies per entry, so every entry must clear the same validation.
Groups and conditional logic
A whole group can be shown or hidden by a logic rule, exactly like any other block. Member fields cannot: they are not offered as conditions, as show/hide targets, or as required/optional targets, because a rule would silently act on the first entry only. Branch on a question outside the group instead.
Where the answers show up
Once responses arrive, the group stays grouped across every surface. Each page below carries the full detail — this is just the map:
- Submission inbox
— one submission shows numbered cards per entry; the table view gets a single count chip that opens the detail.
- Question summary
— the group appears as one card with entry and submission counts plus a mini block per member field.
- Exports
— each entry exports under its own keys, and the whole group can also collapse into a single labeled text column.
- Callbacks and the API
— the group answers under its own field key as a list, one object per entry keyed by member field, in the order the respondent left them.
Referencing group answers
Pipe a repeating group into other questions, notifications, or integrations with an @ mention — mention a single member field to join that field’s value across every entry, or mention the whole group to pull in all entries at once. See Answer piping → Referencing repeating groups for exactly how each reference resolves, with examples.