Product badges on a multilingual Shopify store: how to show "Sale" in every language with Shopify Markets

✍️ Mindaugas Bružas3 min readShopifyShopify MarketsMultilingual StoreProduct BadgesTranslationsLocalizationBadgelyShopify Apps
Product badges on a multilingual Shopify store: how to show "Sale" in every language with Shopify Markets

You translated the store into German and French with Shopify Markets. Product titles, descriptions and the checkout all follow the shopper's language. Then you install a badge app, and every product card says SALE and NEW in English on the German storefront. It looks like a template someone forgot to finish.

This post explains why it happens and how to get badges that follow the storefront language, including the translated product URLs that Markets creates.

Why badges end up in English

Shopify Markets translates your content through the Translations API: titles, descriptions, options, metafields. A badge app's label text is not your content, it is the app's content. So it is only translated if the app itself ships translations for the label and knows which language the storefront is showing.

Most badge apps handle this in one of three ways:

  1. English only. The label is a fixed string. Common in cheaper apps.
  2. Manual translation fields, usually on a paid plan. You type "Angebot", "Soldes", "Išpardavimas" yourself for every badge and every language.
  3. Pre-translated labels that switch automatically with the storefront locale.

Only the third option scales to a store with five languages and twenty badge types.

The second trap: translated URLs

Shopify Markets can localise product URLs: /products/red-mug becomes /de/products/rote-tasse. A badge app that decides which badge to show by matching the product handle in the URL will not find rote-tasse in its list and silently shows nothing on the German storefront. You only notice when a German customer asks why the sale is not marked.

The fix is for the app to match products by ID, not handle, and to understand the localised path. Check this specifically if you use translated URLs.

How to set it up so it just works

  1. Pick a badge app that ships translations. Ask how many storefront languages the labels are pre-translated into and whether they switch automatically. If the answer is "you can add translations on the Pro plan", budget the time.
  2. Let data-driven badges do the work. "Sale" from compare-at price, "New" from publish date, "Low stock" from inventory. These need no per-language input beyond the label text.
  3. Override only where your brand voice differs. "Sale" in Lithuanian is "Išpardavimas", but you may prefer "Akcija". A good app lets you override a single language without touching the other 59.
  4. Test on each market, including the translated URL of one product per market.

What Badgely does

Badgely ships every badge pre-translated into 60 storefront languages, and the label follows the storefront locale automatically. That includes the languages most badge apps skip: Lithuanian, Latvian, Estonian, Finnish, Czech, Slovak, Hungarian, Croatian, Slovenian, Romanian, Bulgarian, Greek, Icelandic. Any translation can be overridden per language.

It matches products by ID and understands Shopify Markets' translated URLs, so /de/products/rote-tasse gets the same badge as /products/red-mug. Badge data is precalculated on the server, so product grids do not make extra requests, and it is a theme app extension: nothing in your theme files, nothing left behind on uninstall.

Badgely is free with no product limit. The language list and override instructions are in the Badgely setup guide.

Frequently asked questions

Does Badgely translate my custom badge text? Custom text is yours, so you enter it per language you care about. The eleven built-in badge types are already translated.

What if a language is missing? Write to us with the language and the wording for the built-in badges. Adding a language takes us a day.

Can I show different badges per market, not just different languages? Targeting is by product, tag and collection. If your markets use different collections (common for region-specific ranges), badges follow. Market-specific targeting beyond that is on the roadmap.


Badgely is built by MB „Liūto media" in Lithuania. All our Shopify apps are listed at liutoapps.com.

MB
Mindaugas Bružas

Founder of MB „Liūto media“ — building six focused Shopify apps: estimated delivery dates, shipping bars, product badges, email deliverability, theme cleanup and reorder reminders.

Built by the team behind six Shopify apps. See what we make →