Overview
Conditions let you control when options appear on your storefront. You can create rules based on other option selections, time, product attributes, or customer information to display relevant options at the right moment.
Use different condition types to show or hide options dynamically based on various criteria.
Dynamic Options
Conditions help reduce clutter by showing only relevant options, creating a cleaner shopping experience and preventing customer confusion.
Condition Categories
Conditions are organized into four categories:
- Option - Based on other option values selected
- Time - Based on current date or day of week
- Product - Based on product tags, price, or title
- Customer - Based on customer tags or login status
Available Condition Types
1. Option
Show or hide options based on what customers select in other options.
When to use:
- Show gift wrapping only when certain sizes are selected
- Display engraving text field only when "Add Engraving" checkbox is checked
- Show color options based on product style selection
Available operators:
is- Exact matchis_not- Does not equalcontains- Contains specific textdoes_not_contain- Does not contain textis_empty- No value selectedis_not_empty- Has a value selected
Example: "Show 'Gift Message' option only if 'Gift Wrapping' is selected"
2. Date
Show or hide options based on the current date.
When to use:
- Hide seasonal options after a specific date
- Show promotional options during a campaign period
- Display holiday-specific options only during holidays
Available operators:
is- Exact date matchis_not- Not this dateis_before- Current date is before target dateis_after- Current date is after target date
Date format: YYYY-MM-DD (e.g., 2024-12-31)
Timezone: Uses customer's browser local timezone
Example: "Hide 'Holiday Gift Wrapping' after December 31, 2024"
3. Day of Week
Show or hide options based on the current day of the week.
When to use:
- Show weekend-only options on Saturday and Sunday
- Display weekday specials Monday through Friday
- Offer next-day delivery only on specific days
Available operators:
is- Matches the dayis_not- Does not match the day
Available days: Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday
Timezone: Uses customer's browser local timezone
Example: "Show 'Weekend Special' option only on Saturday and Sunday"
4. Product Tag
Show or hide options based on tags assigned to the product in Shopify.
When to use:
- Show bulk options only for wholesale-tagged products
- Display special packaging for premium-tagged items
- Offer customization only for specific product categories
Available operators:
is- Exact tag matchis_not- Does not equalcontains- Product has tag containing textdoes_not_contain- Product does not have tagis_empty- Product has no tagsis_not_empty- Product has tags
Storefront Only
Product tag conditions only work on your live storefront. They're bypassed in preview mode.
Example: "Show 'Bulk Pricing' option only if product has 'wholesale' tag"
5. Product Price
Show or hide options based on the product's base price.
When to use:
- Offer premium services for high-value products
- Show budget shipping only for lower-priced items
- Display insurance options for expensive products
Available operators:
is- Exact price matchis_not- Not this priceis_more_than- Price greater than valueis_less_than- Price less than value
Value format: Number (minimum 0)
Storefront Only
Product price conditions only work on your live storefront. They're bypassed in preview mode.
Example: "Show 'Premium Packaging' if product price is more than $100"
6. Product Title
Show or hide options based on the product's title in Shopify.
When to use:
- Show engraving for products with "Jewelry" in the title
- Display size guides for products containing "Apparel"
- Offer specific options for product name patterns
Available operators:
is- Exact title matchis_not- Does not equalcontains- Title contains textdoes_not_contain- Title does not contain text
Storefront Only
Product title conditions only work on your live storefront. They're bypassed in preview mode.
Example: "Show 'Engraving' option only if product title contains 'Ring'"
7. Customer Tag
Show or hide options based on tags assigned to the customer in Shopify.
When to use:
- Show VIP options only for tagged customers
- Display wholesale pricing for B2B customers
- Offer loyalty rewards to tagged members
Available operators:
is- Exact tag matchis_not- Does not equalcontains- Customer has tag containing textdoes_not_contain- Customer does not have tagis_empty- Customer has no tagsis_not_empty- Customer has tags
Requires Login
Customer must be logged in for this condition to work. Guests are treated as having no tags.
Storefront Only: These conditions only work on your live storefront and are bypassed in preview mode.
Example: "Show 'Member Discount' option only if customer has 'VIP' tag"
8. Customer Logged In
Show or hide options based on whether the customer is logged into their account.
When to use:
- Show member-only options to logged-in customers
- Hide guest checkout options for registered users
- Display personalized features for account holders
Available operators:
is- Only operator available
Available values:
true- Customer is logged infalse- Customer is not logged in (guest)
Storefront Only
This condition only works on your live storefront and is bypassed in preview mode.
Example: "Show 'Saved Addresses' option only if customer is logged in"
Logic Operators
Combine multiple rules using logic operators:
All (AND Logic)
All rules must be true for the condition to pass.
Example:
- Rule 1: Customer is logged in
- Rule 2: Customer has "VIP" tag
- Logic: All
- Result: Both conditions must be met
Use when you need strict requirements.
Any (OR Logic)
At least one rule must be true for the condition to pass.
Example:
- Rule 1: Day of week is "Saturday"
- Rule 2: Day of week is "Sunday"
- Logic: Any
- Result: Either condition can be met
Use when you want flexibility.
Actions
When a condition passes, choose what happens:
Show
Makes the target option visible.
Default behavior: Option is hidden until the condition is met.
Use case: "Show gift wrapping when size is large"
Hide
Hides the target option.
Default behavior: Option is visible until the condition is met.
Use case: "Hide express shipping when product price is less than $50"
Precedence Rules
When multiple conditions affect the same option:
- Hide wins - If any passing condition says HIDE, the option is hidden
- Show next - If any passing condition says SHOW (and no HIDE), the option is shown
- Default visibility - If no conditions pass:
- Options with SHOW actions: hidden by default
- Options with HIDE actions: visible by default
Operator Reference
Text/String Operators
| Operator | Description | Example |
|---|---|---|
is | Exact match | Color is "Red" |
is_not | Not equal | Color is not "Blue" |
contains | Contains text | Title contains "Shirt" |
does_not_contain | Does not contain | Title does not contain "Sale" |
is_empty | No value | Tag is empty |
is_not_empty | Has value | Tag is not empty |
Number Operators
| Operator | Description | Example |
|---|---|---|
is | Exact match | Price is 50 |
is_not | Not equal | Price is not 100 |
is_more_than | Greater than | Price is more than 50 |
is_less_than | Less than | Price is less than 100 |
Date Operators
| Operator | Description | Example |
|---|---|---|
is | Same date | Date is "2024-12-25" |
is_not | Different date | Date is not "2024-12-25" |
is_before | Before target | Date is before "2024-12-31" |
is_after | After target | Date is after "2024-01-01" |
Example Use Cases
Size-Based Options
Scenario: Show gift wrapping only for large sizes
- Condition: "Large Size Gift Wrap"
- Rule: Option "Size" is "Large"
- Logic: All
- Action: Show "Gift Wrapping"
Weekend Specials
Scenario: Display weekend discount on Saturdays and Sundays
- Condition: "Weekend Discount"
- Rule 1: Day of week is "Saturday"
- Rule 2: Day of week is "Sunday"
- Logic: Any (OR)
- Action: Show "Weekend Special Price"
VIP Features
Scenario: Show premium options for logged-in VIP customers
- Condition: "VIP Benefits"
- Rule 1: Customer logged in is "true"
- Rule 2: Customer tag contains "VIP"
- Logic: All (AND)
- Action: Show "Premium Options"
Seasonal Products
Scenario: Hide holiday options after the season
- Condition: "Holiday Availability"
- Rule: Date is_after "2024-12-31"
- Logic: All
- Action: Hide "Holiday Gift Wrapping"
High-Value Services
Scenario: Offer white glove delivery for expensive products
- Condition: "Premium Delivery"
- Rule: Product price is_more_than "100"
- Logic: All
- Action: Show "White Glove Delivery"
Product Category Options
Scenario: Show engraving only for jewelry products
- Condition: "Jewelry Engraving"
- Rule: Product title contains "Jewelry"
- Logic: All
- Action: Show "Custom Engraving"
Important Notes
Preview Mode Behavior
Product and Customer conditions:
- Automatically return true in preview mode
- All options show so you can test the layout
- Test on live storefront for accurate behavior
Time and Option conditions:
- Evaluate normally in preview mode
- Work the same in preview and live
Circular Dependencies
The app automatically detects and prevents circular dependencies where options reference each other in a loop. If detected, affected conditions are disabled.
Hidden Option References
If a condition references an option that's currently hidden, that rule is automatically filtered out to prevent unexpected behavior.
Best Practices
Keep It Simple
- Start with simple conditions and add complexity as needed
- Too many conditions can confuse both you and customers
- Test conditions thoroughly before going live
Use Descriptive Names
- Name conditions clearly: "VIP Weekend Special" not "Condition 1"
- Future you will thank present you for good naming
Test on Live Store
- Product and customer conditions don't work in preview
- Always test with real products and customer accounts
- Check all possible combinations of rules
Combine Strategically
- Use AND logic when all requirements must be met
- Use OR logic when any requirement is sufficient
- Don't over-complicate with too many rules
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