Answer

How do you create a custom multi-select in Adalo?

Use relationships and paired component states to let users select more than one record.

Verified from current public evidenceIntermediateReviewed Aug 12, 2026
Verified from current public evidence—not reproduced in the builder.

We checked current official documentation, captured the relevant screens, and compared the workflow with dated Adalo forum reports. Source links and limitations are below so you can judge the evidence directly.

THE SHORT ANSWER

Represent selections with a many-to-many relationship or a join collection, then show selected and unselected component states based on whether the current option is related to the current user or parent record.

The saved relationship is the source of truth for a multi-select. Render every option, show selected and unselected controls with opposite visibility conditions, and have those controls add or remove the current option. A join collection is the safer model when the selection itself needs properties or audit history.

Completeness100%
Index decisionIndex now
Evidence basisCurrent relationship docs and January 2025 forum evidence; no hands-on reproduction
WHAT YOU’LL HAVE

The intended outcome

A selectable list where each option can be independently added or removed and the visual state reflects saved data.

BEFORE YOU START

Requirements

  • A collection of selectable options
  • A user or parent record that owns the selections
  • A relationship or join collection
BUILD IT

Step by step

  1. 01

    Choose the data model

    Use many-to-many for a simple association; use a join collection if each selection needs metadata such as order or quantity.

  2. 02

    Render the options

    Create a list of all selectable records.

  3. 03

    Create two visual states

    Design selected and unselected versions and control them with opposite visibility rules.

  4. 04

    Add and remove the relationship

    The unselected state adds the current option; the selected state removes it.

  5. 05

    Verify persistence

    Leave and return to the screen to confirm visual state comes from saved data rather than temporary UI state.

WHY IT WORKS

The underlying logic

The database relationship is the source of truth.

Opposite visibility rules make the two states appear as one control.

A join collection is more flexible when the relationship itself needs properties.

COLLECTIONS AND RELATIONSHIPS

Data model

CollectionImportant propertiesRelationships
Users or parent recordsNameHas many selections
OptionsLabel, Sort OrderCan be selected by many parents
Selections (optional)Order, Quantity, Created DateJoins one parent to one option
SINCE THE ORIGINAL VIDEO

What changed?

  • The refreshed answer explains when a direct many-to-many relationship stops being sufficient.
IF IT DOESN’T WORK

Common failure modes

Both states appear

Make the visibility conditions exact opposites and confirm both components evaluate the same relationship.

The state resets

Confirm the action updated the relationship or join record rather than only navigating or changing input state.

BEFORE YOU MOVE ON

Testing checklist

  • Selecting two options persists both relationships after leaving and returning.

  • Removing one selection leaves every other selected option unchanged.

  • Two test users see only the selections associated with their own records.

  • Multiple options can be selected

  • Removing one does not clear others

  • State persists after navigation

  • Logged-in users see only their selections

BOUNDARIES

Current limitations

  • Use a join collection when a selection needs quantity, order, notes, or other metadata.
CURRENT PUBLIC EVIDENCE

Screenshot evidence

These captures document what Adalo currently publishes and what builders are reporting. They support the written guidance, but they are not a substitute for an end-to-end test in your own app.

Current Adalo Resources guidance describing many-to-many relationship behavior
Official documentation explains the many-to-many relationship used by simple multi-select membership.Official documentation · captured Aug 12, 2026
Current Adalo Resources update action instructions for changing an existing record
The current Update action is the documented mechanism for changing an existing record.Official documentation · captured Aug 12, 2026
January 2025 Adalo forum response about multiple relationships and selection controls
A recent builder report describes updating an existing record and notes a free marketplace multi-select.Adalo forum · captured Aug 12, 2026
BUILDER REPORTS

What the Adalo community is reporting

These are concise editorial summaries of public forum posts—not endorsements or independently reproduced results.

Create record that has multiple relationships

The reply says many-to-many selections are stored by updating an existing record and discusses marketplace or button-and-boolean interfaces.

Boundary: The thread reports that the desired database-style multi-select UI is not a built-in front-end form control.

Judith · January 2025
VERSION NOTES

Sources and status

This page was last reviewed on Aug 12, 2026. Its current status is Verified from current public evidence.

Verification owner: Adalocado editorial. Next review: Oct 12, 2026.

VERSION HISTORY

Changelog

  1. Added current relationship and action captures plus a January 2025 multi-select report.

YOUR PROBLEM IS DIFFERENT?

Bring us the messy version.

Describe what you expected, what happened instead, and what you already tried.

Ask Adalocado