Guide
Product feed translation
Product feed translation means sending each market a feed whose titles and descriptions are in the language of its landing pages. Google Merchant Center fixes the language per data source, so a translated feed is a separate feed, not a column. Textfinity builds one feed per market from the same catalog, and an AI config translates titles and descriptions into 25 European languages, with a review step before anything is published.
We connect your store, build the feed and keep it in sync. Updated 2026-10-27.
At a glance
- In Merchant Center, the content language and feed label are set when a data source is created and cannot be changed afterwards.
- One language per data source: countries that share a language can share a feed; a country with a different language needs its own translated source.
- The feed, landing page and checkout must be in the same language, or products are flagged with the Incorrect language issue.
- Feed labels: up to 20 characters, A-Z, 0-9, hyphen or underscore, no spaces; a campaign targets one feed label.
- Textfinity: one feed per market; an AI config translates a field or enhances a title or description in a target language. Spanish is not among the target languages.
Merchant Center's rules for a translated product feed
Google treats language as a property of the data source, not of the product. When you create a product data source you choose its country, language and feed label, and Google's help states that the language and feed label cannot be modified once the source exists. Products in that source are expected to be written in that language; if most of them are not, Google raises Incorrect language and may disapprove them.
The landing page and checkout must be in the feed's language too. That is why a translated feed only works when the store has the translated pages: the link column should point at the localized URL (/de/products/... or the market domain). Prices go in a currency supported for the target country, for example SEK for Sweden or CHF for Switzerland.
Countries that share a language can be served by one multi-country source, such as a German feed for Germany and Austria. A country whose primary language differs gets a separate source with the data translated.
Feed labels and campaigns
Feed labels group data sources for targeting in Google Ads. A label is up to 20 characters using upper-case A-Z, digits, hyphens or underscores, and a Shopping or Performance Max campaign selects one label. Using the two-letter country code as the label (DE, SE, NL) keeps country-based campaign structures readable.
When we register a feed's URL in Merchant Center with you, we create the data source with the feed's market as the feed label and target country and the feed's language as the content language, so the market and language the feed was built for are the ones Google sees.
How AI configs translate titles and descriptions
An AI config reads the source fields you pick (title, description, category, manufacturer and any extra attributes as context) and does one job: enhance the title, enhance the description, or translate a chosen field. Enhancement can also write its output in a target language. Length rules are fixed by Textfinity: titles of 100 to 150 characters with the key information in the first 70, descriptions of 500 to 1,000 characters.
Generations are reviewed: accept them one by one or with Accept all. The feed uses AI text through the replace from AI config transform, which takes only accepted generations and falls back to the field you choose, so an unreviewed product goes out in its original text rather than empty. Editing a config creates a revision and the products are regenerated.
Target languages: English, Swedish, Bulgarian, Croatian, Czech, Danish, Dutch, Estonian, Finnish, French, German, Greek, Hungarian, Irish, Italian, Latvian, Lithuanian, Maltese, Norwegian, Polish, Portuguese, Romanian, Russian, Slovak and Slovenian. Spanish and non-European languages are not available.
Three ways to get translated text into a feed
| Source of the translation | Best for | How in Textfinity |
|---|---|---|
| Store already holds it (Shopify locales) | Stores using Shopify's translations | The feed's source language is set to the locale; no AI needed |
| AI config | No translations exist yet; 25 European languages | An AI config that translates a field, or enhances the title or description in a target language |
| Translator's file | Spanish, regulated copy, brand-approved wording | Merged source (CSV or Google Sheet) joined by SKU |
Examples
Worked examples, by situation
Different stores, different languages, different sources of the translation.
Swedish store, German feed with AI titles
Before
title: Matbord ek 180 cm, oljad link: store.se/products/matbord-ek
After
title: Esstisch Eiche 180 cm, massiv und geölt, für 6 bis 8 Personen link: store.se/de/products/matbord-ek
How we set it up
We set up an AI config that enhances the title in German, with category and material as context, and the store accepts the generations. Title uses replace from AI config with title as fallback; link uses replace from regexp store\.se/ with store.se/de/. The feed's market is DE, so Merchant Center gets feed label DE and content language German.
Translations already in the store
Before
title (en): Wool Blend Overshirt, Charcoal locale fr: Surchemise en laine mélangée, anthracite
After
title: Surchemise en laine mélangée, anthracite price: 89.00 EUR (FR market)
How we set it up
We build a Google Shopping feed with market FR and source language French. Textfinity reads the Shopify locale's translated fields, so no AI config and no review step are needed for this feed.
Translated descriptions, reviewed before use
Before
description: A lightweight gel moisturizer with hyaluronic acid for daily use.
After
description: Kevyt geelivoide, jossa on hyaluronihappoa, päivittäiseen käyttöön ... (not yet accepted: English fallback)
How we set it up
We set up an AI config that translates description into Finnish, and map description with replace from AI config, fallback description. Optionally we give that rule the condition is accepted in AI config, with leave empty otherwise, so the Finnish catalog never shows English copy; products then go out without a description until their generation is accepted.
Spanish via a translator's sheet
Before
title: Wireless Noise-Cancelling Headphones, Black (no Spanish in the store export)
After
title: Auriculares inalámbricos con cancelación de ruido, negro
How we set it up
Spanish is not an AI target language, so the translations come from a translator's Google Sheet (SKU, title_es) added as a merged source joined on SKU. We map title with a rule whose condition is title_es matches regexp ^\s*$ (empty): rename title, otherwise rename title_es, so untranslated rows keep the English title until the sheet catches up.
Copy this plan
Plan: launch a translated feed for one new market
Do one market end to end before copying the set-up to the next.
01
Confirm the localized storefront exists
Translated landing pages and checkout in the target language, with prices in the local currency. Without them, a translated feed will be flagged. This is store work, outside the feed.
02
Create a feed for the market
Pick the channel template, the market and the language. One feed per language and country pair keeps Merchant Center sources clean.
What we set up: We create a feed from the channel template with the market, source language and target language set for that pair.03
Choose where the translation comes from
Shopify locale if it exists; an AI config if it does not and the language is supported; a translator's sheet or merged source otherwise.
What we set up: We set up the AI config that translates, or enhances the title or description in the target language, or join the translator's sheet as a merged source.04
Review and accept the generations
Read a sample per category, then accept. Only accepted text reaches the feed.
What we set up: We go through a sample per category with you and accept the generations once you are happy with them.05
Map the translated fields and localized links
Point title and description at the AI config with the original as fallback; prefix or rewrite links to the localized URL.
What we set up: We map title and description with replace from AI config, the original as fallback, and rewrite link to the localized URL with replace from regexp.06
Register the feed in Merchant Center
Add the feed URL as a file data source with a scheduled fetch, the market's country, the feed's language and a feed label. Then target that feed label in a campaign in Google Ads.
What we set up: We register the feed URL in your Merchant Center with you, with the market as feed label and the feed's language as content language.
Customization tips
Make it yours
Translate titles first
Titles carry most of the matching weight in Shopping, and they are short enough to review quickly. Descriptions cost more AI configs and review time; start with titles and add descriptions once the market performs.
Use store translations where they exist
Title plus description in two new languages is already four AI configs to review. Where Shopify locales already hold a language, reading them needs no config and no review, so mix the two approaches market by market.
Keep IDs identical across language feeds
Use the same id in the German and French feeds. Google separates them by content language and feed label, and your reporting stays joined on one product id.
Hold back what is not reviewed
The fallback keeps products live in the source language, which is fine for a bilingual market and a problem elsewhere. Where the language must be consistent, accept before the feed goes live, or condition the rule on is accepted in AI config and leave the field empty otherwise. Filters cannot see whether a generation was accepted.
FAQ
Questions about product feed translation
Can one Google Shopping feed have several languages?
No. Merchant Center sets one content language per data source when it is created and does not let you change it. Send one feed per language; countries that share a language can share one multi-country source.
Do I need translated landing pages to advertise in another language?
Yes. Google requires the landing page and checkout to be in the same language as the feed. A translated feed pointing at untranslated pages is flagged with the Incorrect language issue and products may be disapproved.
Which languages can Textfinity translate a product feed into?
English, Swedish, Bulgarian, Croatian, Czech, Danish, Dutch, Estonian, Finnish, French, German, Greek, Hungarian, Irish, Italian, Latvian, Lithuanian, Maltese, Norwegian, Polish, Portuguese, Romanian, Russian, Slovak and Slovenian. Spanish is not available; use a translator's sheet or your store's own translations for it.
Do I need AI translation if my store is already translated?
No. If your Shopify locales already hold the translations, the feed reads the locale's fields directly and no AI config is involved. AI translation is for markets where no translation exists yet, and only generations that have been reviewed and accepted reach the feed.
Set up for you
Tell us your next market. We'll build its feed in its own language.
We create a feed per market, translate titles and descriptions with an AI config you review, and register it in Merchant Center with you under the right feed label and language.
Tell us your store and channels. We reply within 24 hours.