Unlock More Sales: Display 'Save ₹X' Badges on Your Shopify Dawn Theme

Hey store owners!

As someone who spends a lot of time diving deep into the Shopify community forums, I often see recurring questions that highlight crucial opportunities for store improvement. One such topic popped up recently, and it's a gem for anyone looking to make their sales really pop: how to display a dynamic "Save ₹X" badge on your Dawn theme product cards, instead of just a generic "Sale" tag.

It sounds like a small change, but trust me, it can make a huge difference in how customers perceive your deals. Let's dig into a fantastic discussion that unfolded, offering both app-based and code-based solutions.

The Power of Specific Savings: Why "Save ₹X" Wins

Our friend @swarique kicked off the conversation, running Dawn theme 15.4.1. They had managed to remove the default "Sale" badge but now wanted something more impactful: a badge that clearly showed the actual amount a customer would save (e.g., "Save ₹500"). They wanted this to appear everywhere a product was featured – collection pages, search results, you name it.

This is a brilliant move. A generic "Sale" badge is good, but "Save ₹500" immediately tells your customer the tangible benefit. It’s more persuasive and drives urgency. The community quickly jumped in with some excellent advice.

App vs. Code: Two Paths to Savings Badges

One of the great things about the Shopify ecosystem is that there's usually more than one way to tackle a problem. This discussion was no different.

Option 1: The App Route (for non-coders)

@omarshahban chimed in with a suggestion for those who prefer a no-code solution: his free app, Product Badges by Win-Win. This app promises to let you show various sale info (amount saved, percentage off) and even customize the currency symbol (like "Rs." instead of "$") without touching any code. It's a fantastic option if you're not comfortable editing theme files, though @swarique did encounter a minor hiccup during installation, which @omarshahban quickly offered to help resolve via DM. Apps are great for quick implementation, but always weigh them against potential long-term costs or dependencies.

Option 2: The Code Route (for hands-on control)

For those of us who like to get under the hood, the community offered some solid Liquid code snippets. This is where the real insights came through, particularly from @tim_1 and @mastroke.

The Core Idea: Modifying card-product.liquid

The key file to target is snippets/card-product.liquid. This snippet is responsible for rendering how individual product cards appear across your store – on collection pages, search results, featured sections, and more. Both @tim_1 and @mastroke highlighted that the Dawn theme actually defines the sale badge in two places within this file: one for products without images (NoMediaStandardBadge) and one for products with images (the standard Badge). You need to update both!

Initially, @devcoders offered a different approach by adding a new

element, but the cleaner method, as refined by others, is to directly modify the existing badge element to change its content.

Step-by-Step Guide: Adding "Save ₹X" Badges

Based on the fantastic guidance from @mastroke and @tim_1, here's how you can implement this:

  1. Duplicate Your Theme (Crucial First Step!):

    Before making any code changes, always, always, always duplicate your live theme. Go to Online Store → Themes → Actions → Duplicate. Work on the duplicated (draft) theme first to avoid breaking your live store.

  2. Access Your Theme Code:

    In your Shopify admin, go to Online Store → Themes. Find your duplicated theme, click Actions → Edit code.

  3. Open card-product.liquid:

    In the code editor, navigate to the Snippets folder and open the file named card-product.liquid.

  4. Locate and Replace the Sale Badge Code (First Instance):

    Search for the following line of code:

    {%- elsif card_product.compare_at_price > card_product.price and card_product.available -%}

    You'll find a block of code immediately following this condition that defines the "Sale" badge. It will look something like this:

    {%- elsif card_product.compare_at_price > card_product.price and card_product.available -%}
                  
                    {{- 'products.product.on_sale' | t -}}
                  

    As @mastroke showed in their screenshot, locate this section:

    Replace this entire block with the following code:

                {%- assign savings = card_product.compare_at_price | minus: card_product.price -%} 
                 Save {{ savings | money }} 

    This code calculates the savings amount and then displays it within the existing badge structure.

    Here's how it should look after the replacement:

  5. Locate and Replace the Sale Badge Code (Second Instance):

    @tim_1 specifically highlighted that there's another similar block further down the card-product.liquid file, typically for products with images. You need to apply the exact same replacement there. Search for the same {%- elsif card_product.compare_at_price > card_product.price and card_product.available -%} condition and replace the subsequent block with the same new code provided in step 4.

    The code to be replaced will be similar to this, but without the NoMediaStandardBadge ID:

    
          
            {{- 'products.product.on_sale' | t -}}
          

    Replace this with:

                {%- assign savings = card_product.compare_at_price | minus: card_product.price -%} 
                 Save {{ savings | money }} 
  6. Save Your Changes and Preview:

    Click "Save" in the top right corner of the code editor. Then, you can preview your duplicated theme to see the changes. Check your collection pages, featured product sections, and search results to ensure the "Save ₹X" badge appears correctly.

  7. Ensure Compare-at Prices are Set:

    Remember, this badge will only appear for products where you have a "Compare-at price" set in the product editor that is higher than the actual price. If you don't have this, the badge won't show up!

Optional: Adding Custom Styling

If you want to add a distinct style to your new savings badge (though it should inherit your theme's default badge styling), @devcoders shared some CSS that you could adapt. If you were adding a *new* badge element, this would be more relevant. Since we're modifying an existing one, it should already look consistent. However, if you want to tweak colors or fonts, you could add similar CSS to your assets/base.css file:

.save-price-badge {
  color: #d10000;
  font-weight: 600;
  font-size: 14px;
  margin-top: 4px;
}

Just remember to adjust the class name if you're targeting the existing .badge class or a new one.

It's worth noting that @swarique encountered an issue with extra spaces appearing in their code file after a paste, as shown in these images:

This kind of issue can happen if code is pasted incorrectly or if there's an unexpected character. Always double-check your copy-pasting and ensure you're replacing the correct sections. If you're unsure, starting with a fresh duplicate theme (as @swarique later tried) can help isolate if the issue is with your existing theme files or the new code. When in doubt, a collaborator request to an expert (like @devcoders offered) is always a good backup.

Implementing a clear, dynamic "Save ₹X" badge is a fantastic way to enhance your store's visual appeal and, more importantly, communicate value to your customers. Whether you opt for an app or roll up your sleeves with some Liquid code, the community's insights prove that a little customization can go a long way in boosting those conversion rates. Happy selling!

Share:

Start with the tools

Explore migration tools

See options, compare methods, and pick the path that fits your store.

Explore migration tools