This post was promised in our article on tax-exclusive pricing: the question of one feed or several comes right after the price question, because a bilingual Canadian store runs into both on the same day. Everything below was re-read on Google Merchant Center's help pages on September 20, 2026.
What Google actually structures: language, not country
Merchant Center separates two attributes that do different jobs. target_country tells Google which country to show products in. content_language tells Google which language the feed is written in, from a closed list of accepted languages that includes French and English. The help page on supported languages and currencies states the rule that settles our question: you can upload a data source in any supported language and use it to show products in any country where Shopping ads are available. Country and language are two independent axes, not a single "market" axis, as a one-feed-per-market instinct would suggest.
The price attribute specification adds the constraint that closes the question: use the same language for all attributes in a feed. A feed is one language from start to finish, titles, descriptions, variant labels included. There is no setting that lets a single data source mix French and English so Google can serve either one depending on the shopper.
The answer: two feeds, both targeting Canada
For a store selling in both French and English in Canada, the structure that follows directly from these two rules is two separate feeds: one with content_language: fr, target_country: CA, built from the site's fr-CA pages, and one with content_language: en, target_country: CA, built from the en-CA pages. Same target country, same currency, two languages, two data sources.
This is not the same question as a multi-country feed. Following the relaxation Google documented and Search Engine Land reported, a single feed can now target several countries as long as they share a language: an English feed can cover English-speaking Canada and the United States in some cases. But that relaxation moves along the country axis, not the language axis: it still does not let one feed cover both French and English for a single country. The two axes do not substitute for each other.
What breaks when a store tries to run one feed
Three ways we have seen stores try to work around the rule, and why none of them holds.
A feed declared as French with English products mixed in. Some stores that have not finished translating their catalogue upload a content_language: fr feed that still contains English titles for the untranslated listings. Google runs automated language detection on feed content and flags the mismatch as an incorrect language issue when one or more products use a language different from the one declared for the feed. The symptom is not an immediate account suspension, it is a gradual decline: affected products lose visibility while the warning accumulates.
A single feed with titles duplicated in both languages in the same field. A title such as "Lit en bois massif / Solid wood bed" reads as neither French nor English to the detection system, and produces the same flag, on top of an unreadable listing for shoppers.
Two feeds, but one bilingual landing page with automatic switching. The English feed is clean, the French feed is clean, but both point to the same URL that displays content based on the browser's detected language. The problem is no longer the feed, it is the match between the ad and the page: a click from an English ad landing on a French page, because the visitor's browser is set to French, breaks the experience and the per-language conversion measurement.
The attribute that tells the two feeds apart in one account
Once the two feeds exist, you need to keep them separable inside Shopping and Performance Max campaigns. That is the role of custom labels (custom_label_0 through 4): a language:fr label on the French feed and language:en on the English feed lets you filter reports and build product groups by language without depending on the data source's file name. It is the same prefix logic we recommend for naming Search campaigns in our article on language targeting.
The product identifier (id) itself should not change between the two language versions of the same physical product: Google documents that the same identifier can be reused for the same product across countries and languages, which some ad formats use to group multiple offers of one item together. In practice, the key that must stay stable is the underlying stock-keeping unit, matched between the fr-CA and en-CA versions of a product.
What this means on Shopify
A Shopify store running its two languages under a single market with two locales publishes its fr-CA and en-CA pages under two distinct paths, typically a /fr root for French and a separate English root, with reciprocal hreflang tags between the two. That URL structure is what should feed both data sources: the French feed pulls its product page URLs and content fields from the /fr pages, the English feed from the English pages. A feed-sync app that is misconfigured and reads the same "title" field without distinguishing locale republishes the same content into both feeds, which lands right back on the incorrect-language problem described above.
Check, inside the app or module that generates the feed, that it exposes a source-locale setting per feed, not just a currency or country setting. This is the configuration point most often missing when a feed was set up quickly at account opening.
Ten-minute check
- In Merchant Center, open "Products, Data sources" and confirm there are two active sources, one per language, both with Canada as the target country.
- Open each source and check the declared language setting at the top of the sheet: it must match the actual language of the titles visible in the product preview.
- In "Products, Diagnostics," filter for issues containing the word "language." A healthy feed has none.
- Pick three products from the French feed and three from the English feed at random, open each landing page in a browser with no history, and confirm the page's language matches the feed's, with no automatic switching.
- Confirm the language custom label is populated on both feeds, then build or check the Shopping product groups filtered by that label.
Two feeds do not cost more to operate than one, once the structure is in place: it is the same product data, exported twice per locale. What costs money is discovering the rule after six months of accumulated flags on a feed that tried to carry both languages at once. If you are opening a Canadian Merchant Center account from an existing European feed, our Google Ads agency page in Montréal describes how we structure feeds and Shopping campaigns for the Canadian market.