Overview
Conditions let you control when options appear to customers. They work like "if-then" rules: "IF this condition is true, THEN show/hide these options." This creates a cleaner, more personalized shopping experience by displaying only relevant choices.
Create dynamic option sets that show or hide based on customer selections, product attributes, or time-based rules.
Why Use Conditions?
- Reduce option clutter by showing only relevant choices
- Create product-specific experiences
- Offer VIP or member-only options
- Run time-limited promotions
- Build dependent option flows (e.g., show color only after size is selected)
Before You Start
Make sure you have:
- Created an option set with at least two options
- Understanding of which options should be conditional
- Clear idea of when options should show or hide
Accessing Conditional Logic
- Navigate to Option Sets page
- Click on the option set you want to add conditions to
- Click the Conditional Logic tab at the top
- Click Add Condition button
You're now ready to create your first condition!
Creating a Condition
Step 1: Choose Logic Operator
Start by selecting how your rules should work together:
| Logic Operator | Type | How It Works | Use When | Example |
|---|---|---|---|---|
| If ANY of the following | OR | At least one rule must be true | You want flexibility | Show option if Day is Saturday OR Sunday |
| If ALL of the following | AND | Every rule must be true | You need strict requirements | Show option if Customer is logged in AND has VIP tag |
Step 2: Add Conditions
Click Add Condition to create rules. Each rule has three parts:
2.1 Select Field Type
Choose what to base your rule on:
| Field Type | Category | Description |
|---|---|---|
| Option | Option-based | Another option in this option set |
| Product Tag | Product-based | Tags on the product |
| Product Price | Product-based | Base price of the product |
| Product Title | Product-based | Name of the product |
| Customer Tag | Customer-based | Tags on the customer |
| Customer Logged In | Customer-based | Whether customer is logged in |
| Date | Time-based | Specific dates |
| Day of Week | Time-based | Days of the week |
2.2 Choose Operator
Select how to compare the field and value:
| Operator | Works With | Description | Example |
|---|---|---|---|
is | Text, Number, Date | Exact match | Size is "Large" |
is_not | Text, Number, Date | Does not equal | Color is not "Red" |
contains | Text | Includes this text | Title contains "Premium" |
does_not_contain | Text | Does not include text | Tag does not contain "Sale" |
is_empty | Text | No value set | Customer Tag is empty |
is_not_empty | Text | Has any value | Customer Tag is not empty |
is_more_than | Number | Greater than | Price is more than 100 |
is_less_than | Number | Less than | Price is less than 50 |
is_before | Date | Before this date | Date is before "2024-12-31" |
is_after | Date | After this date | Date is after "2024-01-01" |
2.3 Enter Value
Specify what to compare against:
| Field Type | Input Method | Example |
|---|---|---|
| Option | Select the option and its value | Select "Size" → "Large" |
| Product Tag/Title | Type the tag or title text | Type "Premium" or "Summer" |
| Product Price | Enter the price amount | Enter 100 (no currency symbol) |
| Customer Tag | Type the customer tag | Type "VIP" or "Wholesale" |
| Date | Choose date in YYYY-MM-DD format | 2024-12-31 |
| Day of Week | Select the day | Monday, Tuesday, etc. |
| Customer Logged In | Choose true or false | true or false |
Add more conditions: Click Add Condition again to add additional rules to this logic group.
Step 3: Add Actions
Click Add Action to define what happens when conditions are met:
3.1 Choose Action Type
| Action | Default State | Behavior | Best Use Case |
|---|---|---|---|
| Show | Option is hidden | Appears when condition is met | Options that only apply sometimes |
| Hide | Option is visible | Disappears when condition is met | Options that should disappear in certain cases |
3.2 Select Target Option
Choose which option to show or hide when the condition passes.
Add more actions: Click Add Action to affect multiple options with the same logic.
Step 4: Add Another Logic Rule (Optional)
Click Add Logic Rule to create a separate group of conditions.
This creates a new box with:
- Its own logic operator (Any/All)
- Its own conditions
- Its own actions
ALSO label appears between logic rule boxes, meaning both logic groups are evaluated.
Example use case:
- Logic Rule 1: If ANY of [Saturday, Sunday] THEN Show "Weekend Special"
- ALSO
- Logic Rule 2: If ALL of [Customer logged in, Has VIP tag] THEN Show "VIP Discount"
This lets you create complex conditional scenarios with multiple independent logic paths.
To delete a logic rule: Click the bin icon in the top right corner of the logic rule box to remove it.
Step 5: Save Your Conditions
Click Save in the contextual bar to activate all your conditional logic.
Example Walkthroughs
Example 1: Size-Based Gift Wrapping
Goal: Show gift wrapping option only when size Large is selected
- Logic: If ALL of the following
- Condition:
- Field: Option → "Size"
- Operator:
is - Value: "Large"
- Action:
- Type: Show
- Target: "Gift Wrapping"
- Save
Result: Gift wrapping option appears only when customer selects Large size.
Example 2: Weekend Special
Goal: Show weekend discount on Saturdays and Sundays
- Logic: If ANY of the following
- Conditions:
- Condition 1: Day of Week
is"Saturday" - Condition 2: Day of Week
is"Sunday"
- Condition 1: Day of Week
- Action:
- Type: Show
- Target: "Weekend Special Price"
- Save
Result: Weekend option shows on Saturday OR Sunday.
Example 3: VIP Customer Benefits
Goal: Show premium options for logged-in VIP customers
- Logic: If ALL of the following
- Conditions:
- Condition 1: Customer Logged In
is"true" - Condition 2: Customer Tag
contains"VIP"
- Condition 1: Customer Logged In
- Action:
- Type: Show
- Target: "Premium Options"
- Save
Result: Premium options appear only when BOTH conditions are met.
Example 4: Seasonal Products
Goal: Hide holiday options after December 31, 2024
- Logic: If ALL of the following
- Condition:
- Field: Date
- Operator:
is_after - Value: "2024-12-31"
- Action:
- Type: Hide
- Target: "Holiday Gift Wrapping"
- Save
Result: Holiday option disappears after the date.
Example 5: High-Value Products
Goal: Show white glove delivery for products over $100
- Logic: If ALL of the following
- Condition:
- Field: Product Price
- Operator:
is_more_than - Value: "100"
- Action:
- Type: Show
- Target: "White Glove Delivery"
- Save
Result: Premium delivery shows for expensive products only.
Managing Conditions
Editing a Condition
- Go to the Conditional Logic tab in your option set
- Click on the condition you want to edit
- Make your changes to rules, logic, or actions
- Click Save in the contextual bar
Deleting Conditions
You can delete at different levels:
Delete an individual condition:
- Click the X icon in the condition's row (e.g., remove "Day of week is Tuesday")
- The condition is removed from the logic rule
Delete an individual action:
- Click the X icon in the action's row (e.g., remove "Show Gift Wrapping")
- The action is removed from the logic rule
Delete an entire logic rule box:
- Click the bin icon in the top right corner of the logic rule box
- The entire logic rule (all conditions and actions) is removed
When you delete logic rules or actions, affected options return to their default visibility.
Testing Your Conditions
In Preview Mode
Some conditions work in preview, others don't:
| Condition Category | Works in Preview? | Condition Types |
|---|---|---|
| Option-based | ✅ Yes | Option |
| Time-based | ✅ Yes | Date, Day of Week |
| Product-based | ❌ No | Product Tag, Product Price, Product Title |
| Customer-based | ❌ No | Customer Tag, Customer Logged In |
Test on Live Store
Product and customer conditions automatically return true in preview mode. Always test these on your live storefront with real products and customer accounts.
Testing Checklist
Test all scenarios:
- ✅ Condition activates when rules are met
- ✅ Condition doesn't activate when rules aren't met
- ✅ Multiple conditions work together correctly
- ✅ Show/Hide actions work as expected
- ✅ Options appear in cart and checkout correctly
Common Patterns
Progressive Disclosure
Show options step-by-step based on previous selections:
- Customer selects "Add Engraving" checkbox
- Then show "Engraving Text" input field
- Then show "Engraving Font" dropdown
Mutually Exclusive Options
Hide conflicting options:
- If "Express Shipping" is selected → Hide "Standard Shipping"
- If "Gift Wrap" is selected → Hide "No Wrapping"
Time-Limited Offers
Control availability by date:
- Show "Holiday Special" before December 31st
- Hide "Summer Collection" after September 1st
Customer Segmentation
Different options for different customers:
- Show "Wholesale Pricing" for B2B customers
- Hide "Trade Discount" for retail customers
Best Practices
Start Simple
- Begin with one or two simple conditions
- Test thoroughly before adding complexity
- Add more conditions as you understand the system
Keep Logic Organized
- Start with simple conditions before complex ones
- Group related conditions together
- Document what each condition does if complex
Test Thoroughly
- Test all rule combinations
- Try edge cases (what if price is exactly $100?)
- Verify on live store for product/customer conditions
Document Complex Logic
For intricate condition setups:
- Keep notes on why conditions were created
- Document expected behavior
- Share with team members who manage the store
Monitor Performance
- Check if conditions reduce customer confusion
- Watch for unexpected behaviors
- Adjust based on customer feedback
Advanced Tips
Combining Show and Hide
Remember: Hide always wins if both conditions pass.
Multiple Actions Per Condition
One condition can affect multiple options. Use this to show/hide related options together.
Layered Conditions
Create sophisticated flows by stacking conditions:
- Condition A shows Option B
- Condition B (based on Option B) shows Option C
- And so on...
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article