How to Set Up Conditional Logic in Jotform (The Complete Guide)
Conditional logic is the difference between a form that asks everyone everything and one that feels like it was built for each respondent. Here's how to set it up in Jotform — and where it breaks.
- Jotform supports four main condition types: show/hide fields, update field values, require fields, and skip to a page.
- Build conditions from the 'Settings → Conditions' menu, not from individual fields — easier to audit and reorder.
- Conditions run top to bottom; order matters when two conditions can fire against the same field.
- The common bug is hidden-but-required fields — Jotform won't let the form submit, and the user can't see why.
Conditional logic is what separates a survey from a workflow. Without it, every respondent sees every field. With it, the form adapts: a clinic intake shows the insurance section only to new patients, a registration form asks about dietary restrictions only if the guest is attending the dinner, a sales lead form routes differently based on company size.
Jotform's conditional logic is among the most capable in the no-code form category — but it's also easy to misuse. I spent five years inside Jotform on the product team, and the #1 support ticket pattern was 'my form won't submit.' Nine times out of ten, the answer was a hidden-but-required field. This guide walks through how conditional logic actually works and how to avoid the traps.
The four condition types in Jotform
Every Jotform condition is one of four actions. You'll use the first two constantly; the other two less often but when they matter, nothing else works.
1. Show / Hide fields
The most common use. Based on an answer to Field A, show or hide Field B. Example: a field asking 'Do you have children?' — if yes, show a field for number of children; if no, skip it. This keeps the form short for respondents who don't need the extra questions.
2. Update / Calculate a field value
Set the value of one field based on others. Most commonly used for calculations (total = quantity × price) but also for defaults (if Country = US, set Currency = USD). Jotform's Form Calculation widget handles the math; conditions can also set text values directly.
3. Require / Unrequire fields
Make a field mandatory only when it's relevant. Example: on a medical form, the 'Allergies description' field is required only if 'Do you have allergies?' is answered yes. This is where people most often trip themselves up — more on that below.
4. Skip to a page / Show thank you page
For multi-page forms. Based on an answer, jump to a different page — or end the form early. Useful for screener questions ('Are you 18+?' → if no, route to a polite decline page) and for branching by respondent type ('Are you a buyer or seller?' → different question paths).
How to actually add a condition
In the Form Builder, go to Settings → Conditions → Add Condition. Jotform asks what type of condition, then walks through an IF / THEN builder. You select a trigger field, an operator (equals, is not equal, contains, is greater than, is filled, is empty), a value, and one or more actions.
The hidden-required-field bug (and how to avoid it)
The most common conditional-logic bug in Jotform: a field is marked required, and a condition hides it under some path. The respondent never sees it, so they never fill it — but Jotform still blocks the submit because a required field is empty. The user clicks submit and nothing happens. No error scrolls into view because the error is on a hidden field.
The fix is one of three:
- Don't mark the field required by default. Instead, use a 'Require field' condition that makes it required only when it's also visible.
- Use a single source of truth: one condition that both shows the field AND requires it, paired with the inverse that hides AND unrequires.
- Audit all required fields with a quick checklist before publishing — hidden required fields are the #1 reason forms silently fail.
Condition order matters
Jotform evaluates conditions from top to bottom. If two conditions touch the same field — one hides it, one shows it — the later one wins. This bites when you've built up a stack of conditions over months and a new one fires unexpectedly against an old one.
Before publishing any change to a production form with 10+ conditions, test every branch. Jotform has a 'Preview' mode but you have to walk through each path yourself. If the form is mission-critical, duplicate it, test on the duplicate, then copy changes over.
When to use Calculated fields instead
Conditional logic is great for branching. For math — totals, tax, discount codes, scoring — use the Form Calculation widget. It's faster to reason about because the formula is in one place, not spread across a stack of conditions. You can mix them: a calculation computes a total, and a condition shows a warning field if the total exceeds a threshold.
Edge cases that trip people up
Dropdown values with special characters
If a dropdown option contains a comma or a quote, Jotform conditions sometimes don't match the value cleanly. Either trim the special character out of the option label, or use 'contains' instead of 'equals'.
Multi-select fields
For checkboxes where multiple values can be selected, 'equals' only matches when exactly one value is chosen. If you want 'contains this option,' use the 'contains' operator, not 'is equal to.'
Conditions that depend on calculated fields
A condition can trigger on a calculated value — but only after the calculation has run. If the calculation hasn't computed yet (because its own inputs aren't filled), the condition won't fire. Sequence matters: fill inputs, compute, then condition fires.
Testing checklist
Before publishing any form that relies on conditional logic:
- Walk every branch in Preview. If you have three Yes/No fields with conditions, test all eight combinations.
- Submit a test response through each major path and verify the submission data in your Submissions tab.
- Check that emails and integrations fire with the right data — conditions don't always pass hidden-field values downstream.
- If you use Zapier or a webhook, look at the payload. Hidden fields may or may not appear depending on setup.
When Jotform conditions aren't enough
If your logic needs to reach outside the form — look up a customer in a CRM, check inventory, validate against a database — Jotform's built-in conditions can't do that. You'd need a webhook or Zapier trigger that fires mid-submission and writes data back. That's where custom work starts. Most forms never need that; 95% of what teams actually want is covered by the four condition types above.
Next step
If you're building a form that's outgrown basic conditions — approval flows, multi-stage workflows, routing to different teams — the kits on this site handle that whole pattern pre-built. Or if you want the logic wired for a custom case, book a free 20-minute call.

