IF & LOGIC IF with OR Formula in Excel and… IF with OR is the formula for any-of-these-qualifies logic.… Excel 2003+ Google Sheets Same syntax Microsoft Excel D2 =IF(OR(condition1, condition2, ...), value_if_true, … A B C D Ticket Status Days Open Action 2 TKT-001 Urgent 5 Escalate 3 TKT-002 Normal 45 Escalate 4 TKT-003 Normal 12 Normal
Learning Hub Formulas IF & Logic

IF with OR Formula in Excel and Google Sheets

IF & Logic 📊 Excel 2003+ ✓ Google Sheets Same syntax in both apps
Purpose
IF with OR is the formula for any-of-these-qualifies logic. When a result should be triggered by any one of several…
IF with OR is the formula for any-of-these-qualifies logic. When a result should be triggered by any one of several possible conditions -- not all of them simultaneously but any single one -- this is the pattern. Escalate a support ticket if it is marked Urgent OR has been open more than 30 days. Apply a discount if the customer is Premium OR their order exceeds a threshold. Flag a row for review if a required field is blank OR contains a placeholder. Every situation where meeting any single condition from a list is enough to trigger an outcome uses this pattern. OR alone returns the boolean TRUE or FALSE -- wrapping it in IF converts that into a label, a number, or any other output you need. Once you have both IF with AND and IF with OR in your toolkit, you can handle the vast majority of real-world multi-condition business rules in a single formula without any helper columns.
Syntax
✓ Excel 2003+ ✓ Google Sheets = Same syntax
=IF(OR(condition1, condition2, ...), value_if_true, value_if_false)
Arguments
ArgumentRequiredDescription
OR arguments: condition1 Required The first condition to test. Any expression that returns TRUE or FALSE.
condition2 ... Optional Additional conditions, up to 255. OR returns TRUE if any one is TRUE.
IF arguments: value_if_true Required What to return when OR is TRUE -- a label, number, formula, or cell reference.
value_if_false Required What to return when all OR conditions are FALSE.
How it works
OR evaluates each of its arguments and returns TRUE the moment it finds one that is TRUE, without evaluating the rest. It returns FALSE only when every argument is FALSE. IF receives that TRUE or FALSE as its logical_test and returns value_if_true when OR is TRUE, and value_if_false when OR is FALSE. The conditions inside OR can be any logical expressions: comparisons like B2="Urgent" or C2>30, IS functions like ISBLANK(D2), or results from other functions. Text comparisons inside OR are case-insensitive. OR accepts up to 255 arguments so many alternatives can be listed in one formula. For a long list of values to match against the same cell, using COUNTIF with a hard-coded array is often more compact: =IF(COUNTIF({"A","B","C"},A2),"Match","No match"). To require all conditions simultaneously rather than any one, replace OR with the AND function.
Examples
1
Escalate a support ticket when its status is Urgent OR it has been open for more than 30 days.
fx =IF(OR(B2="Urgent",C2>30),"Escalate","Normal")
A B C D
1 Ticket Status Days Open Action
2 TKT-001 Urgent 5 =IF(OR(B2="Urgent",C2>30),"Escalate","Normal")
3 TKT-002 Normal 45 Escalate
4 TKT-003 Normal 12 Normal
5 TKT-004 Urgent 32 Escalate
6 TKT-005 Normal 28 Normal
7 TKT-006 Low 8 Normal
Row 2: Escalate — TKT-001 has status Urgent -- the first OR condition is TRUE so the whole OR is TRUE and IF returns Escalate. TKT-002 is Normal but has been open 45 days -- the second condition is TRUE, triggering Escalate. TKT-003 and TKT-005 meet neither condition.
TKT-004 meets both conditions -- status is Urgent AND it has been open 32 days. OR still returns TRUE because any one match is enough. The result is the same whether one condition or all conditions are met.
2
Apply a discount flag when the customer is a Premium member OR the order total exceeds 500.
fx =IF(OR(B2="Premium",C2>500),"Discount","Full price")
A B C D
1 Customer Tier Order Price
2 Alice Premium 350 =IF(OR(B2="Premium",C2>500),"Discount","Full price")
3 Bob Standard 620 Discount
4 Carol Standard 280 Full price
5 Dan Premium 150 Discount
6 Eve Standard 500 Full price
7 Finn Standard 501 Discount
Row 2: Discount — Alice is Premium so the first condition is TRUE and Discount is returned regardless of her order size. Bob qualifies through order size alone at 620. Carol and Eve meet neither condition. Eve at exactly 500 does not qualify because C2>500 is strict -- Finn at 501 does.
The > operator is strict so an order of exactly 500 does not trigger the discount. Change to >=500 if the boundary value should qualify. Always verify whether your business rule is strictly above or at-or-above the threshold.
3
Include a sales rep in a regional report if their region is North OR South, excluding East and West.
fx =IF(OR(B2="North",B2="South"),"Include","Exclude")
A B C
1 Rep Region Report
2 Alice North =IF(OR(B2="North",B2="South"),"Include","Exclude")
3 Bob East Exclude
4 Carol South Include
5 Dan West Exclude
6 Ella North Include
7 Finn South Include
Row 2: Include — Alice is in North -- the first condition matches and Include is returned. Carol, Ella, and Finn also qualify through North or South. Bob in East and Dan in West meet neither condition and are excluded.
For three or more region values to include, extend the OR arguments: =IF(OR(B2="North",B2="South",B2="East"),"Include","Exclude"). For a longer list, COUNTIF with an array constant is more compact: =IF(COUNTIF({"North","South","East"},B2),"Include","Exclude").
Common use cases
1. Escalate a support ticket when status is Urgent or days open exceeds the SLA
=IF(OR(B2="Urgent",C2>30),"Escalate","Normal")
2. Apply a shipping discount when the customer is a member or the order meets a minimum value
=IF(OR(B2="Member",C2>=100),"Free shipping","Standard")
3. Include rows from two qualifying regions in a filtered report
=IF(OR(C2="North",C2="South"),"Include","Exclude")
4. Flag a record for review when a required field is blank or contains a placeholder value
=IF(OR(ISBLANK(B2),B2="TBC"),"Review","OK")
5. Classify an order as high-priority when the amount is above threshold or the customer is VIP
=IF(OR(C2>1000,B2="VIP"),"Priority","Standard")
Common errors
Formula returns TRUE or FALSE instead of custom labels
OR is being used without the IF wrapper. OR alone returns the boolean TRUE or FALSE.
Fix: Wrap OR in IF: =IF(OR(condition1,condition2),"Yes","No"). OR becomes the logical_test argument of IF.
Formula always returns the true result for every row
A condition is too broad and matches all rows, or the conditions are checking different cells from what was intended.
Fix: Test each OR argument individually in a separate cell to find which one is unexpectedly matching every row.
Some rows return the wrong result near boundary values
A comparison uses > when >= was needed or vice versa. =OR(C2>500) excludes exactly 500 while =OR(C2>=500) includes it.
Fix: Check whether the business rule is strictly above or at-or-above the threshold and choose the operator accordingly.
Tips and variations
Use COUNTIF with an array for long OR lists
When OR would need five or more arguments checking the same cell against different values, =IF(COUNTIF({"A","B","C","D","E"},A2),"Match","No match") is more compact and easier to maintain. Add new values inside the curly braces without restructuring the formula.
=IF(COUNTIF({"North","South","East"},B2),"Include","Exclude")
Combine AND and OR for mixed requirements
Nest OR inside AND for all-of-these AND any-of-those logic: =IF(AND(C2>0,OR(B2="VIP",D2>1000)),"Qualify","Pass"). This covers most complex real-world qualification rules in a single flat formula.
=IF(AND(C2>0,OR(B2="VIP",D2>500)),"Qualify","Pass")
Test OR conditions separately to debug unexpected results
When an IF OR formula produces wrong results, put =OR(condition1) and =OR(condition2) in separate cells to see which individual condition is misbehaving. Debugging the conditions separately is far faster than reading the combined formula.
=OR(B2="Urgent")
Excel vs Google Sheets
Excel vs Google Sheets
IF with OR works identically in Excel 2003 and newer and every version of Google Sheets. The OR argument limit, case-insensitive text matching, and short-circuit evaluation are the same in both applications. Formulas copy between them without changes.
Frequently asked questions
IF with OR tests whether any one of multiple conditions is true and returns one result if at least one condition passes, and a different result if none do. =IF(OR(condition1,condition2),value_if_true,value_if_false) runs value_if_true when either condition is met. It replaces a chain of nested IF statements when you want any qualifying condition to trigger the same outcome.
IF with OR triggers the true result when any one condition is true -- meeting one out of many is enough. IF with AND triggers the true result only when every condition is true simultaneously -- all requirements must be met. Use OR when alternatives qualify, such as either this region or that region. Use AND when all conditions must be met, such as above this threshold and below that one.
Yes. OR accepts up to 255 arguments so you can test as many conditions as needed: =IF(OR(A2="North",A2="South",A2="East"),"Include","Exclude"). For a very long list of values to match against, COUNTIF with an array of values is often cleaner: =IF(COUNTIF({"North","South","East"},A2),"Include","Exclude").
Yes. Nest one inside the other: =IF(AND(C2>0,OR(B2="VIP",D2>1000)),"Qualify","Pass") requires C2 to be positive AND either B2 to be VIP or D2 to exceed 1000. AND requires all conditions; OR requires any one. Combining them handles mixed requirements that are common in real business rules.
The IF wrapper is missing -- OR alone returns the boolean TRUE or FALSE, not a custom label. Wrap OR in IF: =IF(OR(condition1,condition2),"Yes","No"). The OR result becomes the logical_test argument of IF, which then returns the label from value_if_true or value_if_false.