> ## Documentation Index
> Fetch the complete documentation index at: https://docs.useorbitcrm.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Conditional Logic

> Show or hide fields based on user answers to create dynamic, personalized form experiences.

Show or hide fields based on user answers to create dynamic, personalized form experiences.

> [!NOTE]
>
> **Available in Standard and Flow Forms**
>
> Conditional logic works in both form editors. In Flow forms, fields that don't meet their conditions are skipped during navigation; in Standard forms, they're hidden on the page.

## What is Conditional Logic?

Conditional logic lets you control which fields appear based on previous answers. This creates shorter, more relevant forms that adapt to each user. Fields that don't meet their conditions are automatically skipped during navigation.

> [card] Show Field
>
> Display a field only when conditions are met. Hidden by default until triggered.

> [card] Hide Field
>
> Hide a field when conditions are met. Visible by default until triggered.

> [card] Show + Require
>
> Display a field and make it required when conditions are met.

## Example Use Case

**Contact Form with Role-Based Questions**

* **Question 1:** What describes you best?
  * Options: Customer, Partner, Developer

* If "Developer" is selected, show:
  * **Question 2:** What's your tech stack?
  * Only shown when "Developer" is selected

When a user selects "Customer" or "Partner", they skip straight to the next relevant question.

## How to Set Up Conditional Logic

**1. Open the form editor**

Navigate to your form and click "Edit" to open the form builder

**2. Select a field**

Click on any field (except the first one) to select it

**3. Find the Logic section**

Scroll down in the field settings panel to find the "Logic" section with the branch icon

**4. Add a condition**

Click "+ Add condition" to create your first rule

**5. Configure the rule**

Choose the action (Show, Hide, or Show + Require), the trigger field, an operator, and the value to match

## Combining Multiple Conditions

You can add multiple conditions to a single field. Use the logic type dropdown to control how conditions are combined:

> [card] ALL conditions
>
> All conditions must be true (AND logic). Field shows only when every condition matches.
>
> *Example: Show if role = "Developer" AND experience = "Senior"*

> [card] ANY condition
>
> At least one condition must be true (OR logic). Field shows when any condition matches.
>
> *Example: Show if role = "Developer" OR role = "Designer"*

## Available Operators

| Operator | Description |
| - | - |
| **Equals** | Field value matches exactly (case-insensitive) |
| **Does not equal** | Field value does not match |
| **Contains** | Field value contains the specified text |
| **Does not contain** | Field value does not contain the text |
| **Is empty** | Field has no value or is blank |
| **Is not empty** | Field has any value |
| **Greater than** | Number is greater than value |
| **Less than** | Number is less than value |
| **Is selected** | Option is selected in multi-select fields |
| **Is not selected** | Option is not selected in multi-select |
| **Is free email** | Email is on a free provider (e.g., Gmail, Yahoo) — email fields only |
| **Is business email** | Email is not on a free provider — email fields only |

## Smart Features

### Smart Value Selection

When you reference a multiple choice, dropdown, or checkbox field, the value input becomes a dropdown showing all available options from that field.

### Dynamic Progress

The progress bar and step counter automatically update based on visible fields. If conditional logic hides 3 fields, users see the correct "2 of 5" instead of "2 of 8".

### Instant Evaluation

Conditions are evaluated in real-time as users answer. When selecting a choice option, the form immediately knows which field to show next.

## Best Practices

> [!TIP]
>
> * Only reference fields that appear BEFORE the conditional field
> * Test your form by going through all possible paths
> * Use clear, descriptive field labels to make conditions readable
> * Start simple with one condition, then add complexity as needed

> [!WARNING]
>
> * Hidden fields are skipped — ensure required data has a path to collection
> * Avoid making the first field conditional (it has no previous fields to reference)

***

## Next Steps

> [card] [Flow Forms](https://docs.useorbitcrm.ai/guides/flow-forms.md)
>
> Learn more about conversational forms

> [card] [Form Fields](https://docs.useorbitcrm.ai/guides/form-fields.md)
>
> All available field types


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.