Conditional display
Show or hide a badge based on cart, customer, and product metafield rules evaluated in the shopper's browser.
Conditional display lets a badge appear only when specific rules are true at the moment a shopper views a product. Rules can check things about the product (price, inventory, metafields), the cart (total, item count), or the customer (logged in, has tag, order count). LinkSpot evaluates them in the shopper's browser, so the badge can change as the cart or customer changes.
You configure conditions in the Advanced tab of the badge form, in the Visibility conditions card.
How conditions are combined
Conditions are organized in groups:
- Conditions inside a group are combined with AND. All conditions in the group must be true for the badge to show.
- Multiple groups are combined with OR. The badge shows if any one group is fully satisfied.
This lets you express rules like "(price > 100 AND in stock) OR (customer has tag VIP)".
Available conditions
The conditions you can use depend on your plan. The full set is below.
Always available
These conditions are part of the base badges feature:
- Compare-at price exists (the product is on sale according to Shopify).
- Price (is, is not, less than, greater than, between).
- Discount percentage.
- Discount amount.
- Inventory quantity.
- Product metafield (exists, does not exist, equals, contains). When picked, a Metafield key field appears where you enter the
namespace.keyvalue to check.
Advanced product conditions
Plan-gated under badges_advanced_visibility_conditions. Unlocks additional product-level checks:
- Number of variants.
- Vendor (is, is not, contains).
- Product type (is, is not, contains).
- Product created date (within last X days, before, after).
- Published date (within last X days, before, after).
Cart-level conditions
Plan-gated under badges_cart_level_conditions. Unlocks rules based on the shopper's cart at the moment of view:
- Cart total price.
- Cart item count.
- Cart total plus this product's price — useful for "free shipping at $X" style badges.
Customer-level conditions
Plan-gated under badges_customer_level_conditions. Unlocks rules based on the logged-in customer:
- Customer is logged in (exists, does not exist).
- Customer has tag (is, is not).
- Customer order count.
- Customer accepts marketing (exists, does not exist).
Operators by field type
The available operators depend on the type of value you are checking:
- Existence fields: exists, does not exist.
- Numeric fields: is, is not, less than, greater than, between.
- String fields: is, is not, contains.
- List fields: is, is not.
- Date fields: within last X days, before, after.
- Metafield fields: exists, does not exist, equals, contains.
How conditions interact with the rest
Conditions are evaluated alongside targeting and scheduling. The badge shows only if all of the following are true:
- The targeting matches (the product is in the targeted set).
- The current time falls inside the schedule window (if one is set).
- At least one visibility-condition group is fully satisfied.
If you have not configured any visibility conditions, the third check is skipped.
Tips
- Use cart-level conditions for time-of-checkout messaging (a badge that says "Almost free shipping!" when the cart total is close to a threshold).
- Use customer tags to show exclusive badges to specific customer segments (VIP, wholesale).
- Combine an inventory condition with a low-stock countdown badge to flag urgency only when stock really is low.
Last updated 1 day ago
Built with Documentation.AI