GEObubbles.comLLM Visibility Intelligence. Measured Everywhere.Log inFree Trial

    How we capture city-level answers from AI engines β€” no VPNs, no proxies, and what a local result does and does not prove.

    Prompt Localization

    If your customers search differently in Copenhagen than they do in Aarhus, your AI visibility differs there too. This page explains how we capture that β€” and, just as importantly, what a city-level result does and does not prove.


    No. There is no VPN, no proxy, and no browser pretending to sit in another city.

    We connect to each AI service directly, and the location travels with the question. When we ask an AI engine what it recommends, the request itself carries where the question is being asked from. That is a supported, documented part of how these services work β€” not something we simulate from the outside.

    This matters for accuracy. A proxy only changes the apparent origin of a connection, which most AI assistants ignore entirely. Sending the location as part of the request is the only way to get an answer that actually reflects a place.


    Two ways a city reaches the AI

    Not every AI engine accepts a city. So we use two mechanisms, and which one applies depends on the engine.

    1. The city travels with the question

    The question stays exactly as you wrote it, and the city is attached separately β€” the way a phone tells a maps app where you are, without you typing it.

    This is the truest measurement available: it captures what someone in that city sees when they ask the plain question, without the city ever being spoken aloud.

    2. The city is written into the question

    Some engines only accept a country. For those, PromptDNA writes additional prompts that name the city inside the sentence, phrased the way a local would actually say it — "Find en dygtig optiker i Præstø", not "find an optician in Præstø". The city is part of the question, in the local language, with the right preposition and the local spelling.

    These are written when your prompt library is generated, not bolted on afterwards. A city name stapled to the end of an existing prompt reads like a machine wrote it, and the AI answers it like one.


    Which engines do which

    EngineHow it gets the city
    GeminiCity travels with the question β€” full city-level targeting
    ClaudeCity travels with the question, in the countries where it is supported
    ChatGPTCountry level only β€” city comes from city-worded prompts
    Google AI OverviewsMeasured on the real search result for that location

    This is why the same city can score differently on two engines. It is not an inconsistency in the data β€” it is two different questions being asked, and both are worth knowing.


    Why we don't just add the city to every prompt

    Because it changes what is being measured.

    "Which optician should I choose?" and "Which optician should I choose in Aarhus?" are two different questions. The first tests whether you surface for someone who happens to be in Aarhus. The second tests whether you surface when Aarhus is named out loud.

    Both are real customer behaviour. Neither replaces the other. So we keep them as separate measurements rather than quietly merging them into one number.

    The practical rule for you: write your prompts the way a customer would ask them, and never type a city yourself. Pick your cities in the location settings and let the system handle the rest. Typing the city yourself produces a prompt we cannot tell apart from a national one.


    What a city result proves β€” and what it doesn't

    AI answers are not fixed. Ask the same question twice and you can get two different answers, from the same engine, on the same day. That variation is normal and it is usually larger than the difference between two cities.

    So a city-level result is a sample, not a verdict:

    • One answer means very little. A single run that mentions you β€” or doesn't β€” is noise.
    • Repetition is what makes it real. The more times a prompt runs, the more the random variation averages out and the underlying pattern shows.
    • Compare like with like. Two cities on the same engine are comparable. The same city on two different engines is not β€” they were asked differently.
    • A small town is its own answer. In a town of 50,000 the AI will often answer with national brands or drift to the nearest city. That is a genuine finding about how much local optimisation can achieve there, not a failed measurement.

    We report frequency of mention, position in the answer, and which sources get cited β€” across repeated runs, on a steady schedule β€” so that a change week over week means something.


    Where this fits in PromptDNA

    Localization is part of the PromptDNA workflow, not a separate step you run afterwards.

    When PromptDNA builds your prompt library it:

    • reads your site to learn what you actually sell, who buys it, and who you compete with
    • spreads prompts across the buying journey, from early research to ready-to-buy
    • covers your priority cities across the full journey and your remaining cities at the decision end, where local intent is strongest
    • writes city-worded prompts in the local language for the engines that need them
    • keeps a national set alongside the local ones, so you can see where the difference actually is

    For the settings side of this β€” choosing countries and cities, and how prompt counts multiply across locations β€” see Prompt Localisation in Prompts & Keywords.

    Free TrialContact