BuoyForms
Docs

Conditional Logic

Conditional Logic

Show or hide fields and pages based on respondent answers. Conditional logic lets you build smart forms that adapt to each person — asking follow-up questions only when relevant, skipping entire pages for certain user types, and routing respondents to different outcomes.

How It Works

Conditional logic follows an if-then pattern:

  • IF a condition is met (e.g., answer to Question 1 is "Yes")
  • THEN perform an action (show a field, hide a page, etc.)

Every condition has three parts:

Part What It Does Example
When The field to watch "How satisfied are you?"
Condition The comparison to evaluate "is less than"
Value The trigger value "3"

Adding Conditions to Fields

  1. 1

    Select the target field

    Click the field on the canvas that you want to conditionally show or hide. This is the field that will appear or disappear — not the field you're watching.

  2. 2

    Open Conditional Logic

    In the Field Properties panel on the right, scroll down to Conditional Logic and click + Add Rule.

  3. 3

    Configure the rule

    Set the When field (the field to watch), choose a Condition (equals, greater than, etc.), and enter the Value that triggers the action. Then choose the Action — show or hide.

  4. 4

    Test it

    Click Preview and fill out the form to verify the condition works as expected.

Example: NPS Follow-Up Question

A common pattern — ask detractors what you can improve, but skip the question for promoters.

Adding Conditions to Pages

Page-level conditions let you skip entire sections of a form based on earlier answers. This is more powerful than field-level conditions for major branching paths.

  1. 1

    Open Pages settings

    Click the Pages, Settings & Translations bar at the top of the builder.

  2. 2

    Select the conditional page

    Click the page you want to conditionally show or hide.

  3. 3

    Add a rule

    Click + Add Rule under Conditional Logic and configure it the same way as field conditions.

Example: Employee vs. Contractor Path

You have a multi-page intake form:

  • Page 1: Contact info (always shown)
  • Page 2: Employee details (benefits, department, start date)
  • Page 3: Contractor details (company, rate, contract term)

Page 1 has a radio field: "Employment type" with options "Employee" and "Contractor".

Condition Types

Condition Works With Example
Equals All fields City equals "New York"
Not equals All fields Status not equals "N/A"
Contains Text fields Comment contains "urgent"
Greater than Number, NPS, rating Score > 7
Less than Number, NPS, rating Score < 4
Is empty All fields Email is empty
Is not empty All fields Phone is not empty

Multiple Conditions (AND / OR)

You can add multiple rules to a single field or page:

All conditions must be true — the field shows only when every rule passes.

Use AND when you need to narrow down a specific scenario:

  • Show "Enterprise contact form" when Plan equals "Enterprise" AND Company Size is greater than 100

Common Patterns

Pattern: Satisfaction follow-up

Goal: Ask for details when someone gives a low rating.

  • NPS/CSAT/CES score → show text field "What could we improve?" when score is low
  • Radio "Was this helpful?" → show text field "How can we do better?" when answer is "No"
Pattern: Role-based branching

Goal: Show different pages or fields based on the respondent's role.

  • Dropdown "Your role" → show Manager fields when "Manager", show Individual Contributor fields when "IC"
  • Use page-level conditions for clean separation of content
Pattern: Progressive disclosure

Goal: Start simple, reveal complexity only when needed.

  • Checkbox "I have additional requirements" → show a section of advanced fields
  • Radio "Do you need a custom plan?" → show pricing contact form

Best Practices

  1. Test every path — preview your form and walk through every possible combination of answers. It's easy to miss edge cases.
  2. Use page conditions for major branches — show/hide entire pages for distinct user paths rather than hiding many individual fields on one page.
  3. Label your fields clearly — conditions read naturally when fields have descriptive labels: "When [Satisfaction] is [less than 3]" is clearer than "When [field_12] is [< 3]".
  4. Document your logic — for complex forms, keep a note of what triggers what. Your future self (and your team) will thank you.