> ## Documentation Index
> Fetch the complete documentation index at: https://calcomhelp-mintlify-salesforce-domain-normalization-1775727.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Routing with Round Robin and Attribute Matching

This guide walks you through how to set up a Round Robin Team Event that routes bookings to team members based on attributes using Cal.com's Routing Forms.

<Note>Attributes are only available in Organizations Plan and Enterprise Plan</Note>

***

## Setting Up a Round Robin Team Event

1. **Ensure a Team exists**
   If not already created, go to your organization and create a Team. For example, a team named `Sales` with the slug `sales`.
   <img src="https://mintcdn.com/calcomhelp-mintlify-salesforce-domain-normalization-1775727/kz_bi-5JNybxJfYx/images/routing/team.webp?fit=max&auto=format&n=kz_bi-5JNybxJfYx&q=85&s=498246ababae5826384bc36877f4108d" alt="Team" width="2400" height="1350" data-path="images/routing/team.webp" />

2. **Create a Round Robin Event Type**
   * Create this event under the team you just set up.
     <img src="https://mintcdn.com/calcomhelp-mintlify-salesforce-domain-normalization-1775727/kz_bi-5JNybxJfYx/images/routing/new-round-robin.webp?fit=max&auto=format&n=kz_bi-5JNybxJfYx&q=85&s=ab7ee477a1dc3fc94232bf7d4c1d075a" alt="Create Round Robin Event" width="2400" height="1350" data-path="images/routing/new-round-robin.webp" />
   * **Important**: Enable the setting `Add all team members, including future members`. This ensures team members are selected dynamically based on attributes.
     <img src="https://mintcdn.com/calcomhelp-mintlify-salesforce-domain-normalization-1775727/kz_bi-5JNybxJfYx/images/routing/all-future-members.webp?fit=max&auto=format&n=kz_bi-5JNybxJfYx&q=85&s=c258bc9b94a5f2f68067dbfbabe5c389" alt="" width="2400" height="1350" data-path="images/routing/all-future-members.webp" />

***

## Creating an Attribute

Attributes let you define filters that team members can be matched against.

1. Go to [Organization Attributes](https://app.cal.com/settings/organizations/attributes)
2. Create one or more attributes.
   * For matching use cases, **Multi Select** is a great option—especially when team members might belong to multiple attribute values.
   * Example: Create an attribute with the name `Service (Attribute)` to clearly indicate it's used in attribute-based routing.
     <img src="https://mintcdn.com/calcomhelp-mintlify-salesforce-domain-normalization-1775727/kz_bi-5JNybxJfYx/images/routing/attribute.webp?fit=max&auto=format&n=kz_bi-5JNybxJfYx&q=85&s=e4b8a2990ee188c5add4fa2d05f411dd" alt="" width="2400" height="1350" data-path="images/routing/attribute.webp" />
3. **Assign the attribute** to one or more team members. **This step is critical**.
   <img src="https://mintcdn.com/calcomhelp-mintlify-salesforce-domain-normalization-1775727/kz_bi-5JNybxJfYx/images/routing/assign-member.webp?fit=max&auto=format&n=kz_bi-5JNybxJfYx&q=85&s=53b5be6b67d6ebd7a3b57408a61ddbcf" alt="" width="2400" height="1350" data-path="images/routing/assign-member.webp" />

***

## Setting Up a Routing Form

1. Navigate to [Routing Forms](https://app.cal.com/routing)
2. Create a new Routing Form **under the same team** as your event type.
   <img src="https://mintcdn.com/calcomhelp-mintlify-salesforce-domain-normalization-1775727/kz_bi-5JNybxJfYx/images/routing/create-routing-form.webp?fit=max&auto=format&n=kz_bi-5JNybxJfYx&q=85&s=b9ad6d9a8ea2fe566d1a6d8f699f026c" alt="" width="2400" height="1350" data-path="images/routing/create-routing-form.webp" />
3. Add fields that you want bookers to fill out.
   * It's recommended to include an `Email` field with the identifier `email` to enable integrations with CRMs and contact lookup tools.
   * Refer to [this guide](https://cal.com/help/apps-and-integrations/assign-people#option-2-based-on-emails) for more.
4. Create another field that matches the **options** from the attribute you set up.
   * The **name and identifier don't have to match** the attribute name.
   * Example: A `Service` field with identifier `service`, where the options are identical to those in `Service (Attribute)`.
     <img src="https://mintcdn.com/calcomhelp-mintlify-salesforce-domain-normalization-1775727/kz_bi-5JNybxJfYx/images/routing/routing-form-fields.webp?fit=max&auto=format&n=kz_bi-5JNybxJfYx&q=85&s=21338949147d5281bfd5f92003904684" alt="" width="2400" height="1350" data-path="images/routing/routing-form-fields.webp" />

***

## Connecting the RR Team Event, Attributes, and Routing Form

1. In your Routing Form, go to the **Routing** tab

2. Click `Add a new Route`

3. Link the Routing Form field to the corresponding Attribute
   * For example, connect the `Service (Attribute)` to the `Service` field in your Routing Form
     <img src="https://mintcdn.com/calcomhelp-mintlify-salesforce-domain-normalization-1775727/kz_bi-5JNybxJfYx/images/routing/routing-attributes.webp?fit=max&auto=format&n=kz_bi-5JNybxJfYx&q=85&s=7378165bc27c0ba287dc25ba72cb73c7" alt="" width="2400" height="1350" data-path="images/routing/routing-attributes.webp" />

4. Click **Test Preview** on the left
   * Input a value that exists in both the Routing Form field and the Attribute
   * The system should now route the booking to a team member with that value assigned in their attributes
     <img src="https://mintcdn.com/calcomhelp-mintlify-salesforce-domain-normalization-1775727/kz_bi-5JNybxJfYx/images/routing/test-preview.webp?fit=max&auto=format&n=kz_bi-5JNybxJfYx&q=85&s=17efb9727c1368056a88d97878c30cca" alt="" width="2400" height="1350" data-path="images/routing/test-preview.webp" />

***

## Sending Leads or Visitors to the Router

There are two ways to use the Routing setup for collecting bookings:

### 1. Using the Cal.com Routing Form Public Page

* You can find the public link for your Routing Form in the UI
  <img src="https://mintcdn.com/calcomhelp-mintlify-salesforce-domain-normalization-1775727/kz_bi-5JNybxJfYx/images/routing/share-url.webp?fit=max&auto=format&n=kz_bi-5JNybxJfYx&q=85&s=43e21c19decd54699598844565e9b66b" alt="" width="2400" height="1350" data-path="images/routing/share-url.webp" />
* The URL will look like:

```
app.cal.com/forms/{FORM_ID}
```

Share this link with your leads or embed it in your site.

<img src="https://mintcdn.com/calcomhelp-mintlify-salesforce-domain-normalization-1775727/kz_bi-5JNybxJfYx/images/routing/routing-form-id.webp?fit=max&auto=format&n=kz_bi-5JNybxJfYx&q=85&s=b605119b5f3440a7f26e0d34a3cef1d5" alt="" width="2400" height="1350" data-path="images/routing/routing-form-id.webp" />

### 2. Using Your Own Form with Headless Router (Embed Mode)

If you prefer to design your own form UI but still leverage Cal.com routing:

* Use the Headless Router endpoint:

```
/router?form={FORM_ID}&service=Service%20Type%201&email=jane@example.com
```

* The field identifiers become query params in the URL
* Cal.com will handle the routing and direct the user to the appropriate booking page

This gives you full control over your form UI while keeping Cal.com as the routing engine.

**[Learn more about implementing Headless Routing →](/routing/headless-routing)**

***

You’ve now set up a powerful attribute-based Round Robin routing system that integrates seamlessly with your team structure and forms.
