Skip to main content
Back to Blog
forms components collections ux

Repeater Component for Dynamic Rows

Swifty Team Mar 7, 2026 3 min read

Many business records include collections that vary in size: invoice line items, order products, project milestones, team members, expense entries. These aren't single fields — they're repeating groups of fields where the number of groups is determined by the data, not by the form template.

The repeater component makes building these dynamic sections straightforward.

What the Repeater Does

The repeater is a form section component that manages a collection of identical sub-forms. Each item in the collection is a row with the same set of fields. The user can:

  • Add a new item row with a single click
  • Remove any existing row
  • Reorder rows by dragging them
  • Edit any field in any row independently

The data is stored as a structured collection on the parent record. When the form saves, all items in the repeater save as part of the record in their current order.

Define the Row Structure

The row template for a repeater is a field set — any combination of field types that makes sense for one item in the collection. An invoice line item row might include product selection, description, quantity, unit price, and a calculated total. A milestone row might include a name, target date, and owner.

The row template is defined once in the object's field configuration as a structure type. The repeater reads that structure and renders it for each item.

Validation Applies Per Row

Validation rules on individual fields apply within each repeater row. If a quantity field is required, each row must have a quantity before the form can save. If a unit price must be positive, every row is checked.

The validation summary shows which rows contain errors, so users can address specific items without losing track of where issues are.

Totals and Calculated Fields

Repeaters work with auto-calculated fields on the parent record. A total field on the parent can sum the values of a specific sub-field across all repeater rows — line item totals summing to an invoice total, for example. The calculation updates as items are added, removed, or edited.

Practical Applications

The repeater covers a wide range of real-world scenarios:

  • Invoice and quote line items
  • Bill of materials
  • Project task lists within a project form
  • Order item collections
  • Contact addresses or phone numbers (multiple)
  • Event schedule slots
  • Survey questions or response options

Any situation where a record contains a variable-length list of structured sub-items is a candidate for the repeater.

Related posts

Composed Data Sources

Chain and relate data sources for rich dashboards — compose complex data views from simpler sources without writing code.

Computed Expressions

Transform data with template expressions and built-in functions — format, combine, and derive values from your data without code.

Cross-Source Data Joins

Combine data from multiple sources in one view — join records from your database with data from external services using a shared key.