OR
Check if at least one condition is true.
Use OR when you need something to happen if ANY of several conditions are met. Common in eligibility checks (qualified if A OR B), validation (must fill field X OR field Y), and flexible filtering.
How it works
OR(condition1, condition2, condition3, ...)condition1, condition2, ...- Tests to check
Returns true if any of the conditions are true. Returns false only if all conditions are false.
OR checks from left to right and stops as soon as it finds something true.
Examples
Approve discount for multiple customer types
Give a discount if someone is either a loyalty member OR was referred by another customer.
OR(IS_LOYALTY_MEMBER, HAS_REFERRAL_CODE)Returns true if either (or both) are true. Customer gets the discount.
Allow login with email OR username
Let people log in using whichever identifier they prefer.
OR(NOT(ISEMPTY(EMAIL_ADDRESS)), NOT(ISEMPTY(USERNAME)))Returns true if they filled in at least one of the fields.
Show express shipping for urgent orders OR premium members
Offer faster delivery based on either order urgency or customer status.
OR(DELIVERY_URGENCY = "Urgent", CUSTOMER_TIER = "Premium")Regular customers ordering urgent get express shipping. Premium customers always get express shipping.
Route leads to sales if they meet any qualification criteria
Send to the sales team if the lead has high budget OR company size OR expressed immediate interest.
OR(
BUDGET_RANGE >= 50000,
COMPANY_SIZE >= 100,
TIMELINE = "Immediately"
)Any one of these conditions qualifies the lead for immediate sales contact.
Accept multiple payment methods
Check if the customer selected any valid payment option.
OR(
PAYMENT_METHOD = "Credit Card",
PAYMENT_METHOD = "PayPal",
PAYMENT_METHOD = "Bank Transfer"
)Returns true if they picked any of the three accepted methods.
Common mistakes
Using OR when you need AND -
OR(HAS_LICENSE, IS_TRAINED)means "either one is fine". If you need both, useAND(HAS_LICENSE, IS_TRAINED).Testing the same variable multiple times - Instead of
OR(STATUS = "Draft", STATUS = "Pending", STATUS = "Review"), create a list and useIN(STATUS, ["Draft", "Pending", "Review"]).Combining with NOT incorrectly -
NOT(OR(A, B))means "neither A nor B is true". That's different fromOR(NOT(A), NOT(B))which means "at least one is false".
When to use alternatives
All conditions must be true: Use AND instead
Need both verified email AND phone?
AND(EMAIL_VERIFIED, PHONE_VERIFIED)
Checking one variable against multiple values: Use IN
Instead of
OR(COUNTRY = "NL", COUNTRY = "BE", COUNTRY = "DE"), useIN(COUNTRY, ["NL", "BE", "DE"])
Complex multi-step logic: Use IFS for clearer conditions
Better readability when you have many OR conditions with different outcomes
Related functions
AND, NOT, IF, IFS, IN