Conditional logic
Logic makes one form work for different people: skip the questions that don't apply, and route each respondent to the pages that do. There are two kinds, and both are built visually in the form editor.
Show a field conditionally
Any field can carry a visibility condition: show this field only when an earlier field's answer matches. A field with no condition always shows.
Open a question in the page editor and tick Only show this question when… to add one. The condition must point at a field on a previous page — a field can't depend on an answer from its own page or a later one, so the control doesn't appear at all on page 1. A hidden field is simply skipped; nothing is recorded for it.
Adding a page
Three places make one, and they put it in different spots:
+ Add page, at the top of the canvas, is the one to reach for first. It adds a page at the end, just before Submit, and opens it. If the old last page was set to send everyone else straight to Submit, that is switched back to "next page" so the new page follows it. If the old last page routes somewhere else (back to an earlier page, say), nothing leads to the new page yet: the canvas and the page editor say not reached yet until a fork rule or an earlier page's everyone else points at it.+ Add page, in the footer of the page editor, adds a page right after the page you're editing and opens it. Nothing is routed anywhere — a page with no fork rules just flows into the one after it, so the new page is already the next step.+, on the connector between two cards on the canvas, inserts a page at that exact point in the flow, and its menu also offers Fork from this page.
A form holds up to 20 pages; at 20 the add buttons disable and say why.
Branch between pages
Each page can end with fork rules: "if the answer to X is …, then go to page Y." They live under After this page in the page editor, numbered rule 1, rule 2, and so on. When the respondent finishes the page, big checks the rules in that order and the first match decides where they go next. Things to know about targets:
- A rule can point at any other page — later or earlier — or straight to submit to end the form early. What big rejects is a loop: a route that could send someone round in circles won't save.
- The destination list also offers + A new page. Picking it creates the page and points the rule at it in one step, which is how you build a branch on page 1 of a new form — there is no other page to choose yet.
- Everyone else is where a respondent goes when no rule matches. Leave it alone and that's the next page in order, or submit if this is the last page.
- A rule that's missing its question, its answer or its destination routes nobody. The editor says so under the rule rather than saving a branch that can never match.
A page can hold up to 10 fork rules.
What conditions can test
The comparisons available depend on the field type you're testing:
| Field type | Available comparisons |
|---|---|
| Short text, email | equals, doesn't equal, contains |
| Long text | contains |
| Instagram handle | equals, doesn't equal |
| Phone, website | contains |
| Date | equals, doesn't equal (an exact day) |
| Number, rating | equals, doesn't equal, at least, at most |
| Single choice, dropdown, agreement scale | equals, doesn't equal |
| Multiple choice | none — can't be tested (yet) |
So "rating at most 3 → go to the feedback page, everyone else → submit" works; branching on a multiple-choice answer doesn't. A question big can't test never appears in a rule's question picker, so if one is missing from the list, check its type first.
How answers are compared
- Text is compared ignoring capitals and the spaces around it. equals brand matches an answer of
Brand, and contains shop matchesMy Shop. - At least / at most compare numbers. An answer that isn't a number never matches them.
- A question nobody answered matches no rule — not even doesn't equal. "Show this unless they picked Brand" hides the field from someone who skipped that question, so make the question you're testing required, or test for the answer you want instead.
- The value you compare against is up to 200 characters.
Which answers a rule can read
A rule only reads an answer the respondent has already given, and big checks this when you save:
- A field's visibility condition points at a field on an earlier page.
- A fork rule may also read a field on the page it leaves.
- Neither can read a field on a page the respondent can still be sent to from here. After a rule sends someone back to an earlier page, that page can be answered again, so its answers don't count as given yet, and a condition on them is refused.
Each page has one set of fork rules, and a set needs at least one rule or an everyone else destination.
If you're writing a form as JSON through the API, the CLI or an AI agent, the same rules are spelled out field by field in Form schema (v2).
A worked example
Say you're screening collaborators:
- Page 1 asks "Are you a brand or a creator?" (single choice).
- A fork rule on page 1: brand → page 2 (budget questions); everyone else → page 3 (portfolio questions).
- On page 2, a "Budget" number field with a visibility condition on an earlier answer, shown only when relevant.
- Page 2's exit jumps straight to submit, skipping the creator pages.
One form, two experiences, and nobody sees a question that wasn't meant for them.