Measurement

ChatGPT changes its vendor picks by city. Gemini changes them by country.

By Arnav Mukherjee, founder of TofuBofu · October 24, 2026

When we built our scan, we added one question to the intake before any query gets written: where do you sell? Global, national, national plus local, or local. We added it because getting that wrong skewed the whole report. An MSP in Vancouver and a SaaS company selling everywhere need different buying queries, and scoring one on the other's queries measures nothing.

That fixed the wording of the queries. On 16 October, two researchers published the engine side, and it's sharper than I expected. Ask ChatGPT the same question from two cities and it names different vendors. Gemini does the same between countries, through a completely different channel. A visibility number measured from one place describes that place, and the report should tell you which one.

How was this measured?

The paper is "Location, Location, Generation: Where You Ask Matters for Generative Engine Optimization" by Mahe Chen and Nick Koudas, arXiv 2610.24081, submitted 16 October 2026. I read it at source. Their design:

Their main measure is a localization index: how much two answers from the same setting overlap, minus how much answers from two different settings overlap. In their words, "0 means that location has no effect beyond noise." Higher means location moved the answer.

The limitations are theirs and they're real: "We use the engines' APIs and small models, which need not behave like the consumer applications." The VPN exits are data-centre addresses, and the results describe the engines as of October 2026. So read this as the mechanism, measured on the API.

Does ChatGPT recommend different vendors in different cities?

Yes, when the question depends on place. For near-me questions, ChatGPT in one city "recommends only 8% of the businesses that the same request recommends in another of our 15 cities, against 32% when the request is repeated in the same city." Counting every business, brand and product named in near-me answers across all 19 declared locations, "two identical requests share 23% of these names; two different declared locations share 4%."

The sources tell the same story. For near-me questions, ChatGPT's cited sources "differ between two US cities by 0.14 and between cities in different countries by 0.28." For questions that don't depend on place, the index sat at 0.00 and 0.03. So ChatGPT localises when the question calls for it and leaves the rest alone.

The channel is the declared location. OpenAI's own documentation says a developer "can specify an approximate user location using country, city, region, and/or timezone." The network the request came from made no difference: "between network locations in different countries, its index is 0.00, 0.01 and 0.01."

One more number is worth knowing if you run a local services firm. With no declared location, "ChatGPT answers 63% of near-me questions by asking for a ZIP code or city (4% with a location)." A tracker that never declares a location gets a clarifying question back on most near-me questions, and a clarifying question ranks nobody.

Which location each engine listens to Declared location set by the app, to the city Network location where the request comes from ChatGPT Gemini follows it, city by city follows the country ignored Chen and Koudas, arXiv 2610.24081, 16 October 2026. Measured on the engines' APIs.

Each engine responds to one location channel and ignores the other. A tracker has to set the right one per engine.

Why does Gemini answer differently from another country?

Because it reads the network, and only at country level. The authors note Gemini's API "also accepts declared coordinates; in a pilot they had no effect." Within one country, the network didn't matter either: "between New York and Los Angeles its index is 0.00."

Between countries, Gemini moved a lot, and it moved on questions where ChatGPT held still. For questions that don't depend on place, Gemini's cited sources from different countries "still differ by 0.23 (CI 0.20 to 0.27)." The businesses it recommends on those questions moved less, with an index of 0.07 (CI 0.04 to 0.10), but they moved. So a question that names no country still gets a country's answer.

One caution before the B2B read. All 300 questions were consumer topics: home services, health care, finance, insurance, telecom, dining, retail, cars, travel and public services. Nothing in the study is a B2B buying question. My read is that the mechanism carries over, because it comes from how each engine searches, whatever the topic. If it does, the bigger trap is for a global software brand, which assumes "best CRM for agencies" has one answer worldwide.

Start with the market you sell into. Our free scan asks where you sell before it writes a single query, then runs them across all five engines. No card, no call.

Run a free AI visibility scan

What should a B2B firm do about it?

Four things, in order. The first three follow from the paper's own guidance; the fourth is my read.

  1. List the markets you sell into. Cities if you're a local services firm, countries if you sell across borders. Each one is its own measurement.
  2. Set the location on the channel each engine uses. A declared city or country for ChatGPT. A network in the right country for Gemini. The paper found one network location per country was enough, because New York and Los Angeles didn't differ. It tested only those two US exits, both data-centre addresses, and notes Gemini may localise more finely on residential connections.
  3. Hold the location fixed over time. Compare London with London, scan to scan. If a tool's query location moved between two reports, the change you're looking at may be geography.
  4. Ask every vendor where they ask from. Before you trust any AI visibility number, ours included, ask which location each engine is queried from and whether it's the same every time. Here's our answer. We write the queries for your market, and we ask Google AI Mode from that market. We don't yet declare a location on ChatGPT, Claude or Perplexity, and Gemini is called from our US servers. Both are now in our queue.

For local firms there's a content consequence too. The authors suggest local visibility on ChatGPT may lean on local directories, review sites and local institutions more than national rankings. My read is that a city-level listing can matter more to an MSP than another national backlink. We've written up how engines pick their sources in which sources AI engines cite.

Frequently asked questions

Does ChatGPT recommend different companies in different cities?

Yes, for questions where place matters. In a study of 31,200 answers published on 16 October 2026, ChatGPT's recommendations for near-me questions in one US city matched only 8% of the businesses it recommended for the same request in another city, against 32% when the request was repeated in the same city. Questions that don't depend on place barely moved.

How does ChatGPT know where I am?

In the study, through the location the application declares. OpenAI's web search tool lets a developer specify an approximate user location using country, city, region or timezone, and ChatGPT localised its searches to that location down to the city. Changing the network the request came from had no measurable effect: its localization index between countries was 0.00, 0.01 and 0.01.

Does Gemini change its answers by location?

Yes, but by the country of the network the request comes from, not by a declared location. The authors found declared coordinates had no effect on Gemini in a pilot. New York against Los Angeles produced an index of 0.00, while different countries changed Gemini's sources even for questions that don't depend on place, by 0.23.

Why does my AI visibility tool show different results from what I see?

One reason is location. A tracker that asks ChatGPT with no declared city, or asks Gemini from a server in one country, measures that setting and nothing else. If you check from another city or country, a different set of sources and vendors can come back. Ask any tool which location each engine is queried from before comparing its number with your own.

How should a B2B firm measure AI visibility in several countries?

Measure each market on its own and hold the location fixed over time. For ChatGPT that means a declared location per market. For Gemini it means a network location in each country, and the study found one per country was enough because New York and Los Angeles didn't differ, though it tested only those two US exits. Compare a market only with itself, scan to scan.

Does this study apply to the ChatGPT app?

Not directly. The authors used the engines' APIs with small models, gpt-5.4-mini and gemini-3.1-flash-lite, and wrote that these need not behave like the consumer applications. Their VPN exits were data-centre addresses, the questions were in English, and the results describe the engines as of October 2026. Treat it as strong evidence about the mechanism, measured on the API.

Sources and further reading

Related reading

Why AI engines give different answers
AI visibility for local businesses
The API versus the chat interface

Arnav Mukherjee

Founder, TofuBofu