> For the complete documentation index, see [llms.txt](https://knowledge.out-smart.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://knowledge.out-smart.com/marketplace-packages-and-power-ups/power-ups/forms/use-conditional-logic-in-forms.md).

# Use conditional logic in Forms

Conditional logic makes forms shorter and more relevant.

Use it when one answer should change what the employee sees or must complete next.

### What conditional logic can do

Depending on the field, rules can control:

* whether a field becomes required
* whether a field stays editable
* whether a field only matters after a specific answer

### Available field modes

* **None** — the field is always optional
* **Mandatory** — the field is always required
* **Conditional** — one simple condition makes the field required
* **Advanced** — one or more rules make the field required

### How advanced rules work

Advanced rules can combine conditions with **AND** or **OR**.

They can check values such as **equals**, **contains**, **is empty**, **is before**, or **is after**.

{% stepper %}
{% step %}

### Open the form

Go to **Settings → Forms**.

Open the form you want to edit.
{% endstep %}

{% step %}

### Select the field

Open the field that should react to another answer.
{% endstep %}

{% step %}

### Choose the logic mode

Set the field to **Conditional** for a simple rule.

Set it to **Advanced** when you need multiple rules.
{% endstep %}

{% step %}

### Build the condition

Choose the source field.

Then choose the condition and the matching value.
{% endstep %}

{% step %}

### Save and test

Save the form.

Then test it on a work order before broad use.
{% endstep %}
{% endstepper %}

### Good setup tips

* keep rules as simple as possible
* test empty values and edge cases
* use read-only rules when users may see but should not change a value

### FAQ

<details>

<summary>Can I use conditional rules on any field type?</summary>

Usually yes.

The comparison works best when it matches the field type.

</details>

<details>

<summary>What happens if the source field is empty?</summary>

The rule is evaluated against an empty value.

Use an **is empty** condition when that matters.

</details>

<details>

<summary>Should I test the form after adding rules?</summary>

Yes.

Always test before you make the form available to your team.

</details>

### Related topics

* [Create a form](/marketplace-packages-and-power-ups/power-ups/forms/create-a-form.md)
* [Form field types](/marketplace-packages-and-power-ups/power-ups/forms/form-field-types.md)
* [Use calculations in Forms](/marketplace-packages-and-power-ups/power-ups/forms/use-calculations-in-forms.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://knowledge.out-smart.com/marketplace-packages-and-power-ups/power-ups/forms/use-conditional-logic-in-forms.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
