How to display conditional product labels in Shopify store?

I’m working on my Shopify store and need help with adding custom labels to products. I want to show different tags like “hot deal”, “fresh arrival”, or “limited time” based on specific criteria.

The goal is to automatically display these labels when products meet certain requirements. For example, if an item was added recently, it should show a “fresh arrival” tag. If it’s discounted, then a “hot deal” label should appear. Products that don’t match any criteria shouldn’t display any labels.

I’ve been looking for tutorials online but most explanations are too technical for my current skill level. Since I’m still learning Shopify development, I’d really appreciate a step-by-step approach or some beginner-friendly guidance on how to implement this feature.

Has anyone successfully added conditional product badges to their Shopify theme? What’s the best way to approach this?

I used product tags with conditional logic and it worked great. Set up custom tags in the product admin - stuff like ‘hot-deal’ or ‘new-arrival’ - then modified the product template to show different badges based on those tags. The key is building a system where you can manage labels without touching code every time. I threw in a simple if statement in the product loop that checks for specific tags and displays the right badge with custom CSS. You get full control over how it looks and can manually assign labels to products that don’t fit automatic rules. Perfect for seasonal promos or anything that needs special highlighting.

totally! found those apps super easy to use. u can tweak the labels to fit ur store’s vibe too. really helps if u wanna avoid coding. give it a shot!

I did this with liquid code in my theme files. Edit your product card template to check conditions and show labels based on what you find. For ‘fresh arrival’ tags, use product.created_at to check if the product’s under 30 days old. For discounts, compare the compare_at_price against regular price. Drop the code in product-card.liquid or whatever template you’re using. You’ll need CSS to style how each label looks. Takes some theme work, but it’s way more flexible than apps and won’t cost you monthly fees. Back up your theme first though.