Theme Stack Guide

How to Add Product Badges in Shopify Without Code

October 16, 2026

Product badges are the small labels on product images in collection grids: sale percentages, new arrivals, bestsellers, low stock warnings. They work because shoppers scan grids quickly and badges answer the first questions instantly. Most modern Shopify themes include badge settings for sale and sold out states, and apps cover custom badges, all without touching theme code.

What badges actually do for shoppers

Badges reduce the work of comparing a grid of similar products. A sale badge with a real percentage lets a bargain hunter filter visually. A new badge tells returning customers what changed since their last visit. A low stock badge adds honest urgency for shoppers who were planning to think it over.

Used sparingly, badges raise click through from collections into product pages. Used on everything, they cancel each other out and the grid looks noisy. A useful rule is one badge per product, chosen by priority: sold out first, then low stock, then sale, then new.

Using your themes built in settings

Start in the theme editor. Most current themes have product card settings that toggle sale badges, sold out labels, and sometimes a custom label field tied to a product tag or metafield. Check the product card and product template sections before installing anything, since built in badges will match your theme styling automatically.

For tag based custom badges, the common pattern is tagging a product with a word like new or bestseller and having the theme display that tag as a label. Read your themes documentation for its exact convention, set up two or three test products, and confirm the badge appears in collections, search results, and featured sections, not just one of them.

When an app is the better route

Badge apps earn their place when you need rules: automatic badges by inventory level, publish and expiry dates for seasonal labels, different badges per collection, or animated and image based badges your theme cannot produce. They also centralize control, so a sale badge appears and disappears across the whole store on schedule.

The cost is another subscription and another script on your pages. Keep the app count honest: if your needs are sale and new labels only, theme settings do the job free. If badges are part of a real merchandising calendar with dated promotions, the apps automation pays for itself in staff time.

Design and honesty rules

Keep badge text short, two or three words, in one consistent position, usually the top left of the image. Use one badge color for informational labels and reserve your strongest color for sale or low stock, so shoppers learn your system in one visit.

Only display badges that are true. A permanent sale badge on a price that never changes, or a low stock warning on deep inventory, erodes trust and can create legal exposure in some jurisdictions. Audit badges monthly, remove expired ones, and let the scarcity of real badges keep their power.

Keep reading on this site: Index, Index, Index. Each of those pieces connects to the ideas above and gives more detail on the parts this guide could only summarize.

Frequently asked questions

Why is my sale badge not showing?

The usual causes are a compare at price that is missing or not higher than the price, a theme setting that is switched off for product cards, or a badge rule that only applies to certain collections. Check the compare at price on the product first, then the theme editor settings for the card.

Can I show two badges on one product?

Some themes and most badge apps allow stacked badges, but two should be the ceiling and they should answer different questions, like new plus low stock. More than two makes the product image hard to scan and dilutes every label on the page.

Do badges help SEO?

Not directly. Badges are a conversion aid, not a ranking factor. Their indirect value is real though: better click through into product pages and fewer bounces back to search results signal a catalog that is easier to shop, which supports the pages that do rank.