Condition selectors reference
A complete reference of every condition rule available in Llama Upsell campaigns, grouped by category with matchers and value types.
When you build a condition for a campaign, you choose a selector (the piece of cart or customer data you want to check), a matcher (how to compare it), and a value (what to compare it against). This page is the quick, grouped tour of every selector so you can find the right rule fast.
Looking for full detail on a specific rule? See the Selector reference for the exact value format, JSON shape, per-selector matcher behavior, and where each rule is available.
If you are new to conditions, start with How conditions work to understand rule groups and AND/OR logic first.
Not every selector works everywhere. Some are limited to certain campaign types (noted on the rule below), and rules evaluated at checkout — by Cart Restrictions and checkout discounts — support a smaller set than storefront campaigns. A rule that's unsupported in that context is silently ignored. See Where each rule works for the exact list per context.
Line item rules
These rules look at the products that are in the shopper's cart.
Product
Matches specific product variants in the cart.
- Matchers: equals any (any product or variant in the cart — no specific selection needed), is equal to (pick specific variants)
- Value: Shopify resource picker — select product variants from your catalog
Product tag
Matches line items where a product has a specific tag.
- Matchers: is equal to, ends with, starts with, contains, does not contain, is not empty, is empty
- Value: tag multi-select autocomplete
Product vendor
Matches line items by the product vendor or brand name.
- Matchers: is equal to, is not equal to
- Value: vendor name autocomplete
Product title
Matches line items by the product title.
- Matchers: is equal to, ends with, starts with, contains, does not contain
- Value: text field
Product SKU
Matches line items by SKU code.
- Matchers: is equal to, ends with, starts with, contains, does not contain, is not empty, is empty
- Value: text field
Product type
Matches line items by the product type (for example, "Apparel" or "Electronics").
- Matchers: is equal to, ends with, starts with, contains, does not contain, is not empty, is empty
- Value: product type autocomplete
Collection
Matches line items that are — or are not — in a specific collection.
- Matchers: is equal to (item is in the collection), is not equal to (item is not in any listed collection)
- Value: collection search — selected collections appear in a table with product count and status
Cart attribute
Matches a cart-level custom property (also called a cart property). Requires a key and a value.
- Matchers: is equal to, is not equal to
- Value: two fields — Key and Value (both required)
Line item attribute
Matches a custom property on an individual line item. Requires a key and a value.
- Matchers: is equal to, is not equal to
- Value: two fields — Key and Value (both required)
UTM
Matches UTM parameters from the URL the shopper used to reach your store.
- Matchers: is equal to, is not equal to, contains, does not contain
- Value: UTM parameter dropdown (utm_source, utm_medium, utm_campaign, utm_term, utm_content) plus a value input. "Contains" and "does not contain" let you enter multiple values via a tag input.
Ref
Matches the ref= parameter in the store URL.
- Matchers: is equal to, is not equal to, contains, does not contain, is not empty, is empty
- Value: text field
Page URL
Matches the URL of the page the shopper is currently on — handy for showing an offer only on specific pages (a product page, a landing page, and so on).
- Matchers: contains (this is the only matcher available)
- Value: text field — enter a substring of the URL to look for, such as a path or query string
Promo code
Matches when a specific Shopify discount code is applied at checkout.
- Available for: Gift with Purchase, Auto-Add, and Checkout Upsells only
- Matchers: is equal to, starts with
- Value: searchable dropdown of your existing Shopify discount codes
Learn more about using discount codes as a trigger in Promo code triggers.
Specific country
Matches the shopper's country.
- Available for: Checkout Upsells only
- Matchers: is equal to, is not equal to
- Value: multi-select of country names
Customer tag
Matches the tags on a logged-in customer's account.
- Matchers: is equal to, is not equal to
- Value: customer tag autocomplete — pick from the tags used on your customer accounts
- Logged-in only: the shopper must be signed in. A guest with no account has no tags, so this rule won't match for them.
Amount rules
These rules look at the overall value of the cart.
Cart subtotal
Matches based on the cart value after discounts are applied.
- Matchers: is equal to, is not equal to, is greater or equal to, is less or equal to, is between
- Value: currency amount input. Supports per-currency values for multi-currency stores. The "is between" matcher shows two fields for the minimum and maximum.
Cart total
Matches based on the cart value before discounts (the original price).
- Matchers: is equal to, is not equal to, is greater or equal to, is less or equal to, is between
- Value: currency amount input (multi-currency supported)
- Not available for Post-Purchase campaigns
Only one subtotal or total rule can be added per group.
Smart filter rules
Smart filter rules apply only to the products that were already matched by your line item rules. Add at least one line item rule first — the smart filter options then appear below the Applied after rules above divider.
This lets you, for example, match products from a specific collection and then check the combined subtotal or quantity of just those products.
Subtotal
The total price of the filtered products, after discounts.
- Matchers: is equal to, is not equal to, is greater or equal to, is less or equal to, is between
Total
The total price of the filtered products, before discounts.
- Matchers: is equal to, is not equal to, is greater or equal to, is less or equal to, is between
Quantity
The count of filtered product units in the cart.
- Matchers: is equal to, is not equal to, is greater or equal to, is less or equal to
Restriction-only rules
Per-SKU quantity
Limits the quantity of specific SKUs allowed in the cart. This rule is only available in Cart Restrictions — it does not appear in campaign conditions.
- Matchers: is greater or equal to, is less or equal to
- Value: one or more SKUs plus a quantity limit
For the exact JSON value shape and behavior of the Per-SKU quantity rule, see the Selector reference. For how restrictions evaluate rules differently from campaigns, see Where each rule works.
How matchers behave
A few matchers change the value input or behave in a special way:
This is just the surface. For the complete mechanics — case-sensitivity per matcher, the exclusive upper bound on "is between", and the guard that stops "does not contain" matching everything — see the Matchers reference.
Cart Restrictions reuse most of these selectors, but evaluate a smaller set at checkout. See Where each rule works for which rules apply there, and Cart restrictions for setup details.
Related
Selector reference
Every rule in depth: value formats, JSON shapes, per-selector matchers, and availability.
Matchers reference
Exactly how each matcher compares values, including case-sensitivity and edge cases.
Where each rule works
Which selectors are supported on the storefront versus at checkout.
How conditions work
Rule groups, AND/OR logic, and how conditions are evaluated.
Promo code triggers
Use a Shopify discount code to trigger a campaign.
Schedule, markets & customer tags
Control when and to whom a campaign is shown.
How conditions (display rules) work
Learn how rule groups and AND/OR logic decide when your campaign shows its offer to a shopper.
Selector reference (every rule, in depth)
The canonical, selector-by-selector reference for every condition rule — data point, matchers, value format, case-sensitivity, and availability.
