Operator reference
Conditions decide whether a group or a rule applies. Every condition compares one question’s answer against a value using one of these twelve operators.
Multiple conditions on the same group are joined with AND — all of them must hold. A group with no conditions matches everything.
Equality
Section titled “Equality”| Operator | Fires when |
|---|---|
equals |
The answer matches the value. |
not_equals |
The answer does not match the value. |
For a multiple choice answer, equals
holds if any selected option matches — so on a multi-select it behaves as
“includes”. If that is what you mean, contains_any says it more clearly.
For multiple-choice answers. Each takes a list of values.
| Operator | Fires when |
|---|---|
contains_any |
At least one of the values was selected. |
contains_all |
Every one of the values was selected. |
not_contains |
None of the values were selected. |
Numbers
Section titled “Numbers”For Number answers.
| Operator | Fires when |
|---|---|
gt |
Answer is greater than the value. |
gte |
Answer is greater than or equal to the value. |
lt |
Answer is less than the value. |
lte |
Answer is less than or equal to the value. |
between |
Answer falls in the range, inclusive of both ends. |
between takes a minimum and a maximum, and either can be left empty for an
open-ended range — a minimum of 100 with no maximum means “100 or more”.
For Text answers.
| Operator | Fires when |
|---|---|
starts_with |
The answer begins with the value. |
ends_with |
The answer ends with the value. |
These compare exactly, including case and spaces. Free text is unreliable
pricing input — a visitor typing Berlin , berlin or BERLIN gives you three
different answers. Where the price genuinely depends on the answer, use a
single-choice step and let people pick from a list.
Which operators suit which question type
Section titled “Which operators suit which question type”| Question type | Sensible operators |
|---|---|
| Single choice | equals, not_equals |
| Multiple choice | contains_any, contains_all, not_contains |
| Number | gt, gte, lt, lte, between, equals |
| Text | equals, starts_with, ends_with |
| Not used in pricing | |
| Message | Stores no answer — cannot be used |