If your Shopify store ships to multiple countries, you’ve probably already set up Shopify Markets, translated your product titles, and added a currency switcher. But there’s a layer most cross-border stores miss entirely: image alt text in every storefront language.
This is the short, ugly piece of HTML on every product image —
<img alt="..."> — that nobody sees, search engines read religiously,
and screen readers depend on. When your German storefront shows the
same image but with English-only alt text, three things happen:
- Google’s image search in Germany ranks you lower for German queries because the alt doesn’t match the language of the page.
- German shoppers using screen readers hear English, which is jarring and accessibility-noncompliant.
- Your translated storefront looks “half done” to anyone who inspects.
Most stores never notice because the missing layer is invisible to casual browsing. But if you care about cross-border SEO or accessibility (WCAG 2.1 compliance increasingly enforced in the EU under EAA), this matters.
This guide walks through the three ways to actually handle multi-language alt text on a Shopify Markets store, what each costs you in time and quality, and when to use which.
Why this is harder than translating product descriptions
Translating a product description on Shopify is a solved problem. You go to Translate & Adapt (Shopify’s free official translation app), pick a language, paste or generate translations, and they’re live. Apps like Transcy, Langify, and Weglot extend this to handle thousands of products in bulk.
But none of these apps deeply handle image alt text. Here’s why.
Image alt text in Shopify isn’t a field on the product itself. It’s a
field on the media resource (MediaImage in GraphQL terms),
attached to the product. The translation system that handles
product.title and product.body_html is a different layer from the
one that handles image.alt. And while Shopify added image alt to its
translatable resources in July 2025, the UI for managing those
translations is still half-built — most translation apps just don’t
surface a place to edit it.
The result: even merchants who’ve done a great job translating their store’s text are still serving English alt text on the German, French, Spanish, and Japanese storefronts.
The three approaches
Approach 1: manual, one image at a time
The brute-force option. For each product image, write the alt text in each of your storefront languages.
In Shopify Admin, you can only write the primary-locale alt directly on the image. For other locales you have to go to Settings → Apps → Translate & Adapt → switch language → Products → find the product → scroll to media (if your version of the app surfaces it) and enter each translation.
When does this work?
- Catalog under ~25 products.
- One or two extra languages.
- You’re doing this once and never adding new products.
When does it break?
- 50 products with 4 images each in 3 extra languages is 600 manual edits. At a generous one minute per edit, that’s ten hours of switching admin pages.
- Every new product means coming back to do it again.
- You’ll make typos. You won’t notice for months.
The honest read: manual works only at the smallest scale. Most cross-border stores already have more inventory than this approach can handle.
Approach 2: Shopify Magic per locale
Shopify Magic, the platform’s built-in AI, can sometimes generate alt text. As of 2026, this is a “may suggest” feature — when you upload an image to a product, Magic occasionally surfaces an “AI alt” suggestion in the media editor. You accept or edit.
The good:
- Free, native to Shopify, no extra app.
- Reasonably accurate single-image output.
The catches:
- Only your primary locale. Magic writes alt in your store’s default language. There’s no “generate this in French too” button.
- Conditional. It doesn’t suggest for every image. You can’t rely on it to cover your catalog.
- No bulk. Per-image, per-upload. Same scale problem as Approach 1.
When does this work?
- Your store is single-locale and you want Magic to help with new uploads. Great use case.
When does it not?
- The moment you turn on a second storefront language, Magic is no longer enough — it doesn’t translate, it just generates in your primary language. You’re back to Approach 1 for everything except the primary.
Approach 3: a dedicated alt text app that knows about Markets
This is where third-party apps step in. The category is called “alt text generators” on the Shopify App Store. The well-known ones (AltText.ai, AltGenius, SmartAlt) do roughly the same thing: bulk-scan your store, generate alt for images that don’t have it, and let you review or auto-publish.
What most of them don’t do is generate per-locale. They write alt in
the language you set in the app’s settings, and that single string
goes onto the image’s primary alt field. The German storefront
inherits the same English alt.
A small subset of the category — disclosure: including our own app,
BigAI Catalog SEO — generates alt per storefront locale. For each
image, the app calls the AI once per published locale, gets idiomatic
output in that language (so the German alt is actual German, not a
machine-translated English sentence), and writes it via Shopify’s
translationsRegister GraphQL mutation. That mutation is the layer
underneath Translate & Adapt — the same place Shopify’s own
translation UI stores its data.
The result: when a customer browsing your German storefront views a
product, the page-source <img alt> is in German. Google’s German
image index picks that up. A German screen reader reads German. All
without you opening a translation editor.
When does Approach 3 work?
- You have more than ~25 products.
- You have at least two storefront locales.
- You’d rather review AI output than write everything yourself.
When does it not?
- You’re a one-product store with everything translated manually. No ROI to install an app.
- You want absolute control over every word and have time to do it.
Honest comparison
| Approach | Setup time | Time per new product | Per-locale | Cost |
|---|---|---|---|---|
| Manual | 0 | ~10 min/locale/product | Yes (but manual) | $0 |
| Shopify Magic | 0 | ~1 min for primary | No | $0 |
| Bulk alt app (no Markets) | ~5 min | Auto | No | $5-$50/mo |
| Per-locale alt app | ~5 min | Auto, all locales | Yes | $15-$150/mo |
If your cross-border SEO actually matters — meaning at least one of your non-primary locales contributes meaningful sessions or revenue — the per-locale app pays for itself fast. A single product with an extra $100/mo revenue in Germany is more than the entire app cost.
If your cross-border SEO doesn’t matter yet, you’re fine with Approach 2 and revisit later.
Setting up per-locale alt in 5 minutes (using BigAI Catalog SEO)
For transparency: this is the app we build. The flow below is what any per-locale alt app should look like; substitute your app of choice and the screenshots will differ slightly.
- Install BigAI Catalog SEO from the Shopify App Store.
- Open the app. The first thing it does is query your store’s published storefront locales — the languages you’ve enabled in Settings → Languages. Confirm the list looks right.
- Click Scan now on the Overview page. The app reads each product’s title, type, tags, and description, then generates AI alt text in each enabled locale. A 200-product store takes about 2 minutes to scan.
- Open the Review tab. You’ll see one button per locale at the top — click German, click French, etc. The list shows the original English alt (or empty) and the AI-written alt for that language side by side.
- Approve, edit, or skip each suggestion. Approved suggestions are
written: the primary locale through
fileUpdate, every other locale throughtranslationsRegister. The change is live on your storefront within seconds. - Turn on Auto-process new products in Settings. From now on, when you publish a new product, the app generates alt in every locale automatically. New products land in the review queue with suggestions waiting; you approve them when convenient.
Total active time to set up: 5 minutes. Total active time per week afterward: a few minutes reviewing new-product suggestions.
A word on review queues
One detail worth understanding: every reputable per-locale alt app operates a human-in-the-loop review queue. AI writes a suggestion, you approve it before anything publishes. This matters because:
- AI occasionally generates alt that’s too long, too generic, or technically wrong (e.g., it identifies a “blue shirt” as “navy dress”).
- For brand-sensitive stores, every published string is a brand decision.
- Approval lets you build a feel for which AI outputs need editing, so you can adjust the prompt or brand tone.
Apps that publish without review aren’t faster — they just put the proofreading on you after the fact, often after Google has already indexed the wrong alt.
Where to go next
The honest priority order for a cross-border Shopify store:
- Fix what’s broken now. Run a scan in any per-locale alt app to see how many images are missing alt entirely in your non-primary locales. Most stores find the number is 100%.
- Decide if Approach 3 is worth it. If your non-primary locale revenue is below maybe $500/month, defer. Above, definitely run a trial.
- Don’t forget the rest. Image alt is the layer everyone misses, but multi-locale product descriptions, meta titles, and meta descriptions matter too. Translate & Adapt covers the basics for free; the apps in §Approach 3 typically extend the same path to descriptions and image alt together.
If you’d like to try our take on this, BigAI Catalog SEO has a free tier (100 images/month, single locale) so you can verify the AI output before committing. The paid tiers start at $14.99/month and scale up by locale count.
The image alt layer is small. The SEO and accessibility impact is not. Worth the half-hour to fix.