AI visibility

Generative engine optimization: how assistants pick who to recommend

A customer asks an assistant for a good pizza place nearby and gets three names. Not ten links, three names. This post explains where they come from and why yours is not among them.

·Updated July 23, 2026·9 min read

In Google results a customer sees ten links and picks one. In an assistant’s answer they see two or three names and usually take the first. That single difference drives everything else in this post.

The English-language term for this is generative engine optimization, and it now draws roughly 27,000 searches a month worldwide. The related term ai seo adds another 25,000. Those are people looking for the service. The customers asking an assistant for a bakery or a dentist are a far larger group, and they are not searching for any of those words.

Where an assistant gets business names

A language model has no directory of businesses. It has two sources, and it is worth separating them, because they call for completely different work.

Model memory

What the model absorbed during training. If your business was widely written about at the time, the model knows it without looking anything up. This mostly applies to chains and well-known brands. A single-location business almost never sits in model memory, and that is normal.

Live search while answering

Every major assistant can now search the web mid-answer. The model issues a query, receives a handful of pages, reads them and builds the answer from what it found. This is the path that decides the fate of a small business, and it is the one you can influence.

The practical conclusion. Do not try to get into model memory; you have no control over it. Make sure that at the moment a model searches, it finds consistent and readable information about you.

What a model reads about a local business

In practice, for a business with one address, the sources rank roughly like this:

  1. Your Google Business Profile and whatever flows from it into maps. Usually the single most important source. More in the post on why your Google profile decides the answer.
  2. Customer reviews, and specifically their wording, not just the average. We cover this in the post on reviews and AI recommendations.
  3. Your own website, provided a crawler can read it and it is not built entirely from images.
  4. Directories and vertical sites: Apple Maps, Bing Places, Yelp, Foursquare, whatever is standard in your trade.
  5. Third-party writing: local news sites, blogs, forums, roundups of the best bakeries in somewhere.

The model cross-checks all of it and builds the answer out of what agrees. If three places list three different phone numbers, the model does not pick the best one. It skips the business and names a neighbour whose details line up. That is the single most common cause of absence we find in audits.

Why a Google ranking is no longer enough

You can be first in the map pack and never get named once. We have seen it repeatedly. There are three reasons.

What Google doesWhat an assistant does
Shows a map pack and a list of linksSays two or three names in a sentence
Weighs distance from the user heavilyOften works from a neighbourhood or city name
Rewards clicks and trafficRewards there being something to read about you
The result is reasonably stableThe answer changes on every single query

That last row matters most and gets skipped most often. Ask an assistant the same question five times and you get five differently worded answers and sometimes different sets of names. One screenshot proves nothing, neither in your favour nor against you.

How to measure it honestly

Since the answer moves, the only sensible measure is share across many answers. Here is the method we use, which you can repeat yourself:

  1. Collect customer questions, not keywords. Nobody types "bakery Brooklyn prices". They type "where can I get good sourdough near Bedford Ave". Twenty of those is a sensible minimum.
  2. Never put your business name in the question. A question containing the name always produces a hit and the result means nothing.
  3. Ask from a clean session. Log out or use a private window. Your own account knows your history and inflates the result.
  4. Repeat every question at least three times. Without repeats you are measuring chance.
  5. Store the full answers with timestamps. Without a record you cannot tell later whether anything changed.
  6. Compute the share. How many answers out of a hundred contained your name. One number you can track over time.
Twenty questions times three runs times four engines is 240 answers to read. By hand that is several hours of work per measurement. We do it automatically, and the method is written out step by step on the Method page.

What actually moves the number

After several dozen audits the causes of absence repeat in the same order.

1. No structured data on the site

The model has to guess your name, address, hours and trade from text written for humans. A dozen lines of code removes all the guessing. We show the exact code in the post on LocalBusiness structured data.

2. Details that disagree across services

Hours in Google that differ from Apple Maps, two entries for the same business, an old address on Foursquare. To a model that signals unreliable information, so it does not use it.

3. Assistant crawlers blocked

One line in robots.txt can shut out GPTBot, PerplexityBot and the rest at once. When that happens no other work matters. How to check is in the post on AI crawlers in robots.txt.

4. A site that answers no customer questions

If customers ask about parking, card payments and Sunday hours, and your site says nothing about any of it, the model has nothing to quote.

5. No recent reviews

Reviews from three years ago are a weak signal. It is not about volume, it is about somebody having written something in the last few months.

What is not worth doing

  • Buying reviews. Google detects and removes them, and models read the wording, not the star count. Thirty near-identical sentences are a warning sign, not an advantage.
  • Stuffing keywords into your business name. It breaks Google’s rules and does not help in assistant answers, because the model will name you the way maps know you anyway.
  • Writing pages for models instead of people. A page crammed with phrases reads badly, and a model will still extract either a fact or nothing.
  • Trusting a single screenshot. Neither the one showing you named, nor the one showing you absent.

Where to start this week

  1. Open yourdomain.com/robots.txt and check for blocks on GPTBot and the other AI crawlers.
  2. Open your Google Business Profile and complete the category, hours, services and the questions section.
  3. Check that name, address and phone are identical across Google, Apple Maps and Bing Places.
  4. Paste LocalBusiness structured data onto your site and validate it with Google’s tool.
  5. Ask an assistant about your trade and town five times from a private window. Write down what came back.

You can hand step five to us for free. We ask three of your customers’ questions, read the answers and send them to you in full with timestamps. The form is on the home page, and the price of the paid repair is stated plainly on the Pricing page.

Find out whether the assistants name your business

We ask ChatGPT three of your customers’ questions and show you the full answers with timestamps. You get the result straight away, no card.

Get the free scan
Free scan