
Alt Text Gaps in Multilingual WooCommerce Stores
Translated WooCommerce product pages often keep the original alt text or drop it entirely. Here's how to find and fix the gap across every language.
Run a WooCommerce store in more than one language and there's a good chance half your product images are described in the wrong language, or not described at all. WPML and Polylang duplicate the product, the price, the description — but the featured image and gallery images usually get duplicated as references, not re-translated. The English alt text rides along into the French, German, or Spanish version of the page untouched.
Most site owners never notice, because the images themselves still display correctly. Nothing looks broken in the browser. The gap only shows up when you check what a screen reader announces on the translated page, or when you look at how Google Images ranks the non-English version against the original.
Why translation plugins skip alt text by default
WPML and Polylang were built to translate strings — post titles, body content, product descriptions, taxonomy labels. Media attachments sit slightly outside that model.
WPML's default behaviour: when you duplicate a product into a new language, WPML by default reuses the same featured image and gallery attachment IDs across all translations, unless you've explicitly enabled "Custom Fields Translation" for image alt text or turned on media translation in WPML's Media settings. Even then, translating the attachment alt text field is a separate, easy-to-miss step from translating the product itself. It's not part of the main product translation editor most people use day to day.
Polylang's default behaviour: Polylang treats each media item as its own translatable object, which sounds better in theory. In practice, most stores never create a translated copy of the attachment — they just attach the same image ID to every language version of the product, because duplicating media files serves no visual purpose. The alt text field on that shared attachment can only hold one value at a time, so whichever language it was written in last is what every version of the page gets.
Either way, the practical result is the same: one alt text string, several languages of product page, and no warning that anything's missing.
Why it actually matters here
For a single-language store, alt text is mostly about accessibility and image search. For a multilingual store, there's a third factor: Google indexes translated pages separately, using hreflang to understand which version serves which market. If the French version of a product page has English alt text, that's a language-mismatch signal on exactly the element Google Images uses to understand what the image shows — on the one page where matching content to locale matters most.
For a screen reader user on the French page, hearing "blue ceramic mug" announced when everything else on the page reads in French is a jarring, obviously untranslated experience — worse than no alt text at all in some assistive tech, because it interrupts the reading language mid-sentence.
Finding the gap on your own store
- Pick your two most different languages — ideally ones using different scripts or clearly different vocabulary, so a mismatch is unmissable (English/German is fine; English/English-US is not).
- Open the same product in both languages side by side, using your translation plugin's language switcher, not two separate tabs you navigated to manually — you want to confirm it's genuinely the translated version.
- Inspect the image element (right-click → Inspect, or view page source and search for the product image filename) and read the
altattribute on each language version. - Note whether it's identical, blank, or genuinely translated. Identical text across languages is the most common failure. Blank alt text is the second most common — some translation setups strip the field entirely on the duplicated attachment rather than copying it.
- Check the gallery images, not just the featured image. Featured images get more attention during setup; gallery images almost always inherit whatever the first-created language version had.
- Repeat across a sample of 5–10 products, not just one — if the pattern holds, it's a sitewide setup issue rather than an isolated oversight, and worth fixing at the attachment-translation-setting level, not product by product.
If most of your alt text turns out identical across languages, the fix isn't rewriting it per product by hand — that doesn't scale past a handful of SKUs. It's re-running a proper alt text pass on each language version separately, treating each translated product's images as needing their own description rather than inheriting one written for a different market.
What "fixed" looks like
The end state isn't just "every image has alt text" — it's every image has alt text in the language of the page it's on. A German product page with a German alt text string, a French one with French. That's a bigger job than a single-language store's alt text backlog, because it multiplies by however many languages you support, but it's the same underlying workflow repeated per locale: scan, review the suggestion, save.
OpptiAI Alt Text scans your media library and drafts suggestions you review before saving — running it once per language version, rather than once for the store as a whole, catches exactly this kind of gap because it's working from what's actually on each translated page rather than assuming one description fits every locale.
Frequently asked questions
Does WPML translate image alt text automatically?
Not by default. WPML translates post content, titles, and most taxonomy fields automatically when you duplicate a product into a new language, but the attachment's alt text field is treated separately. You need to enable custom field translation for it specifically, or use WPML's Media Translation add-on, and even then someone still has to write or review the translated string — WPML doesn't generate translated alt text on its own, it just gives you a place to put it.
Can I use the same alt text across all language versions of a product?
You can, but it undermines the reason you're running a multilingual store in the first place. Alt text read out by a screen reader or indexed by Google should match the language of the surrounding page. Identical alt text across languages either forces non-English readers to hear English text, or forces you to write English-only descriptions that don't reflect the market you're translating for. It's a shortcut that costs you both the accessibility and the SEO benefit in every language except the original.
How do I check which WooCommerce products have mismatched alt text across languages without checking every product by hand?
There's no built-in WooCommerce report for this specifically — you're comparing the same attachment's alt text field against the language of the page rendering it, which most audit tools don't cross-reference. The manual sampling method above (checking 5–10 products across your two most distinct languages) is usually enough to confirm whether it's a sitewide pattern. Once confirmed, the fix is a per-language content pass rather than a one-off audit script, since each language genuinely needs its own reviewed alt text rather than a detection-only report.
Multilingual alt text gaps are easy to miss because nothing about the page looks broken — every image still loads, every price still displays. OpptiAI Alt Text scans your media library and drafts descriptions you review before saving, which makes a per-language pass practical instead of a manual slog. If you want a quick read on where your store currently stands, the free image SEO audit checks a URL in under a minute.
Related Posts
How to Fix Missing WooCommerce Alt Text Fast
WooCommerce product images often ship with empty alt text or filenames like IMG_4821. Here's a fast way to find and fix the gaps across your catalogue.
WooCommerce Variation Images Need Alt Text Too
Fixing the featured image alt text isn't enough. WooCommerce variation images are stored separately and need their own descriptions to be found.
Stop Checking WooCommerce Alt Text Product by Product
Opening every WooCommerce product to check alt text doesn't scale past a handful of items. Here's a scan-filter-fix workflow that does.


