Article5 min read

AI can cite the wrong market of your brand (and hreflang won't protect you)

I asked two AI engines (ChatGPT and Gemini), posing as a user in Portugal, which was the right site for four international brands. When the market signals were clear and consistent, they got it right. When they contradicted each other, they served the wrong country with full confidence: one Portuguese brand got the Brazilian version presented as "the version for the Portuguese-speaking market (PT)". hreflang was built for classic search to choose between versions; AI engines resolve your brand by entity and by content, and they don't always read your tag. Measuring what AI serves each market is no longer optional.

What decides which version AI cites

  1. 1A consistent entity across markets
  2. 2Language and locale in the content, not just the tag
  3. 3Reciprocal hreflang with no contradictions
  4. 4Server-rendered content: AI doesn't run JavaScript

AI resolves by entity and content, not by your tag.

Four signals decide which version of your brand AI serves each country. hreflang is only one of them, and the weakest.

The worst way to find out your internationalization is broken is a customer telling you the AI sent them to the wrong store, with the wrong price, in the wrong language. And you never notice, because that traffic doesn't even leave a business card. I've worked on international sites at scale, and the usual mantra (correct hreflang, one version per market, Google handles the rest) no longer holds, because the conversation isn't only with Google anymore.

The question I asked, and why

The new question isn't whether your hreflang is correct. It's this: when someone in a given market asks a chatbot "where do I buy this", which version of your brand does the AI show? The right one, another market's, or one that doesn't exist? Few people measure this, so I did.

How I measured it, so you can repeat it

On 4 October 2026 I posed as a user in Portugal and asked two engines, Gemini and ChatGPT, both logged out, the same question about four brands: which site is right for me and an example price. I logged the domain, language and market of each answer, and cross-checked it against each brand's real architecture, verified live in the code. The four span the spectrum: a global domain with a per-country path, one domain per country (ccTLD), a hybrid setup, and a Portuguese company that is global and English-first. I anonymize them: the point is the pattern, not naming names.

What the AI answered

Half the brands failed something. The two with a clear, consistent market signal, the furniture retailer with a per-country path and the beauty eCommerce with one domain per country, were served correctly by both engines, in euros. The other two failed, each in its own way. For the sports retailer, one engine got the market right but invented a domain that doesn't exist: hallucinating the address with the real page right in front of it. And the Portuguese brand gave us the worst case.

The case that matters: the Portuguese brand the AI can't place

The Portuguese company, global and English-first, does have a European-Portuguese page, and the Portuguese is clean. Looks ideal. It isn't. That page declares itself, in the code, as English, and the site's hreflang map doesn't even include it: it lists the Brazilian version, not the Portuguese one. The brand itself is telling the engines its Portuguese-speaking face is Brazil.

The result was telling. One engine obeyed the tags and served the Brazilian version to a Portuguese user, with the confident caption that it was "the version for the Portuguese-speaking market (PT)". The other ignored the tags, read the content, saw it was European Portuguese, and got it right. The correct page showed up only because a machine chose to distrust the brand's own instructions. That's luck, not strategy, and luck doesn't invoice.

Why this happens

hreflang is an instruction for classic search engines to pick between versions they've already decided to show. AI engines work differently: they resolve your brand as an entity and weigh the content they find, not only the tags. When content and tags contradict each other, each engine decides on its own, and they decide differently.

There's also a technical layer almost nobody checks. Most AI crawlers don't execute JavaScript: Vercel, with Merj, showed that GPTBot and PerplexityBot don't render, and only Gemini, via Googlebot, does. If your per-market version only assembles in the browser, with content and hreflang injected by JavaScript, much of the AI sees an empty page. You can rank on Google and be invisible to AI at the same time.

What to do: the CITAR method applied to international

The method I use for GEO applies market by market, not just at global scale. Five fronts.

Clarity of entity. Your brand has to be the same entity in every market, with sameAs and, where it makes sense, an Organization per country. A fuzzy entity gets cited at random.

Information that's citable, with a locale signal. Language and market have to live in the content you read, not just in the tag: currency, address, language, local references. If the page says it's English but speaks Portuguese, you're handing the AI two truths.

Trust, local. Authority in the market counts. Citations and press from the country itself are worth more than global authority for being served there.

All-engine reach. ChatGPT, Perplexity and Copilot run on Bing. Without a Bing presence per market, your odds of being cited drop, and serve content server-side, or the JavaScript-less AI won't see you.

Results tracking, per market. Measure what the AI serves each country as regularly as you measure rankings. Without measurement, international GEO is faith; with it, it's management.

What this doesn't prove

To be honest about the sample: one day, two engines, one question per brand, four brands (it's not NASA, it's a diagnosis). Engines are volatile and tomorrow's answer may not be today's. This generalizes no law. It's enough to show the problem is real and to give you a method to test it on your own brand, with your own questions and markets, before drawing conclusions about your case.

The cost of not looking

If you don't measure this, the AI keeps showing your brand to customers with the wrong market's price, stock and language, swearing it's the right one. No warning, no analytics referral, no complaint, because the customer never reaches you: they reach your wrong version, or the local competitor the machine found clearer. hreflang was last decade's answer. This decade's question is simpler and harder: does the AI know which brand is yours in the country of the person asking?

Sources

Frequently asked questions

Is hreflang enough for AI search?

No. hreflang helps classic engines choose between versions, but AI engines resolve the brand by entity and by content, and don't always read the tag. You need entity consistency and market signals in the content itself, not just in the annotations. Common hreflang mistakes →

Why does AI show the Brazilian version to a Portuguese user?

Almost always because the brand's signals point there: a pt-PT page outside the hreflang cluster, self-labeled as English, while the pt-BR version is declared. The AI follows the strongest signal, and sometimes the strongest signal is the wrong one. See GEO →

How do I measure what AI serves my brand per market?

Ask your customers' real questions, by market and language, across several engines, and log which domain, language and country each one cites. Repeat regularly, because engines change. It's manual work today, but it's the only reliable base. Get in touch →

Share:LinkedInWhatsAppEmail