Skip to main content
Contextual conditions let you control when a merchandising rule applies based on visitor session data. Target specific audiences with tailored merchandising strategies by combining conditions in the dashboard.

How contextual conditions work

Contextual conditions are evaluated at request time against session context data including:
  • Geographic data: Country, state/province, city
  • Market data: Market ID, market handle, market countries
  • Customer attributes: Customer tags, account status, purchase history
  • UTM parameters: Marketing source, medium, campaign
  • Device information: Device type, operating system
  • Shopping channel: Online store, mobile app, etc.
Each condition checks a visitor attribute against one or more values using an operator (equals, does not equal, is in list, etc.). If the condition evaluates to true for the current visitor, the rule is applied. Rules without contextual conditions always match and act as default/catch-all rules. When multiple rules target the same collection, rules with contextual conditions are always evaluated before default rules. This ensures that a more specific conditional rule is never blocked by a default rule, regardless of creation order.

Condition examples

The contextual conditions form in the dashboard lets you build these targeting rules without writing code. Below are common examples of what you can set up. Target US visitors:
FieldOperatorValue
CountryequalsUS
Target mobile users in California (combine with AND):
FieldOperatorValue
StateequalsCA
Deviceequalsmobile
Target visitors from specific marketing campaigns:
FieldOperatorValue
Marketing campaignis in listsummer-sale, holiday-promo
Target customers with specific tags:
FieldOperatorValue
Customer tagscontainsvip
You can target shoppers based on Shopify customer tags (for example, “vip”, “wholesale”, or any tag synced from Shopify). Use “is in list” or “is not in list” to match against multiple tags, or “contains” to match any tag that includes a substring. Target visitors in a specific Shopify Market (by handle):
FieldOperatorValue
Market handleequalsca
Target visitors in markets that include a specific country:
FieldOperatorValue
Market countriescontainsUS

Case sensitivity

String-based condition operators (contains, does not contain, begins with, does not begin with, ends with, does not end with) are case-insensitive. A condition matching “klaviyo” will also match “Klaviyo” or “KLAVIYO”. This applies wherever contextual conditions are evaluated, including merchandising rules, request transforms, sort orders, and block rules.

Overlap detection

When you create or edit contextual conditions in the dashboard, Layers automatically checks whether your conditions overlap with another merchandising rule targeting the same collection and sort order. If an overlap is detected, a warning toast appears with the name of the conflicting rule and a link to view it. Two rules overlap when their conditions could match the same visitor session. For example, two rules that both target the same country or use a “contains” check that matches a subset of the other rule’s values. Overlap detection helps you avoid situations where a visitor could match multiple conditional rules unexpectedly. If you see an overlap warning, review both rules to confirm the intended priority or adjust the conditions to make them mutually exclusive.

Use cases

Geographic merchandising: Show region-specific products or promotions based on visitor location. Market-specific merchandising: Apply different product arrangements per Shopify Market, so shoppers in your EU market see a different collection grid than shoppers in your North America market. Campaign-specific merchandising: Display different product arrangements for visitors arriving from specific marketing campaigns. Device-optimized merchandising: Adjust product ordering based on device type for optimal mobile or desktop experiences. Customer segment targeting: Show VIP customers different merchandising than first-time visitors.

See also