Why AI Names a Competitor in Your Town Instead of You
AI named a rival window cleaner instead of you? The reason is rarely quality. It is what the engine could see about your area in the places it checks.

Built BakingSubs to 162,500 Copilot citations and accelerating. Now teaching the system behind it.
- local-ai-visibility
- local-service
- google-business-profile
- reviews
You typed "best window cleaner in [your town]" into ChatGPT, saw a competitor's name come back, and felt your stomach drop. The reason is almost never that they do better work than you. The engine had something of theirs to read in the places it checks for your area, and it had less of yours.
Key takeaways
- Across 9,454 checks we ran of local businesses against AI answers, the business was not among the sources the answer used in 84.3% of cases. About 94% of that failure happens before the engine picks a winner, not during the picking.
- The single biggest predictor of clearing that first stage is Google presence for the exact question, at an odds ratio of 12.74. Nothing on the page itself came close.
- Different AI engines pull local names from different places: ChatGPT leans on Foursquare and Yelp, Gemini on Google Maps, Perplexity on Yelp and industry directories, Claude on Brave Search.
- 38.7% of the time an AI answer names no real local peer at all and falls back on directory pages. If that is your situation, nobody in your town has won yet.
- Fixing what an engine can see about you in your area is winnable. But we can only say it makes you eligible. Anyone promising that a fix causes a citation is guessing.
What actually happened when AI named your competitor
The engine answered a question about your town by quoting the sources it had for that town. Your competitor was among those sources. You were not among the sources this answer used.
That sentence is careful on purpose. We can see which businesses an engine's answer quoted. We cannot see what it looked at and set aside. So the accurate statement is always "not among the sources this answer used", never "AI did not find you". A residential window cleaner named Riverside Shine Windows in Boise might not appear in a ChatGPT answer for "best window cleaner in Boise" for many reasons, and none of them is a verdict on their work.
Here is what we do know from our own numbers. Across 9,454 question-by-business observations, 84.3% of the time the business was not among the sources the answer used. That is a very large sample and the pattern is stable. When we broke down where the failure happened, roughly 94% of it happened before the engine picked its top few businesses. In other words, the fight is over eligibility, not judgment. The engine did not weigh your reviews against your rival's reviews and prefer theirs. It weighed their sources against a shorter list that included fewer of yours.
The dominant predictor of clearing that eligibility stage, at an odds ratio of 12.74, was Google presence for the question in the local area. We tested nine technical page signals against the same data. None survived Bonferroni correction. That does not mean pages are useless. It means the signal that separates winners from missing is happening off your website, in the places engines already look for local business names.
The six places an AI engine looks for local names
When an AI engine has to name a window cleaner in your town, it does not read the whole internet from scratch. It checks a small set of sources that already carry local business data, and it repeats the names it finds there most consistently. There are six that matter, and every local visibility check we run reports against them.
1. Your Google Business Profile, and your Bing Places listing. These are the map cards. They anchor your name, address, phone, hours, and service area. Gemini is grounded directly in Google Maps. ChatGPT falls back to Bing Places when its other sources are thin. A missing or half-filled profile is where a lot of the 84.3% starts.
2. Real reviews that are recent and specific. Not the count. What the reviews actually say. A review that mentions "third-floor exterior windows on a Victorian in the North End" is doing work that ten "great service!" reviews cannot do. Yelp announced a licensing deal with OpenAI on July 23, 2026, bringing Yelp reviews, ratings, and photos directly into ChatGPT. Reservations and waitlist followed on August 10, 2026. A Foundation and AirOps analysis of 28 million AI responses in Q4 2025 found Yelp took 512,680 citations, about 3.4 times the next platform. Reviews matter more now than a year ago, and where they live matters too.
3. The map and listing data an engine checks first. Foursquare announced a partnership with OpenAI on December 16, 2024, covering its Places API with over 100 million points of interest across 200-plus countries. That is one of the pipes ChatGPT pulls local names through before it looks at anything else. If your business is not represented cleanly in that layer, you are relying on the fallbacks.
4. Consistent name, address, and phone across directories. In local search, a "citation" means a listing of your name, address, and phone on a directory site. That is a different thing from an AI citation, which is when an engine names your business in its answer. The two overlap because engines cross-check names against directory data to decide who is real and who has moved. If your address on three directories does not match the one on your Google Business Profile, that is a real problem.
5. Being named in local best-of roundups. "The 8 best window cleaners in Boise 2026" articles from local blogs, newspapers, and neighborhood sites are quoted back by AI engines constantly. The Foundation and AirOps analysis found that 91 to 97% of AI citations come from category queries like "best plumber near me" rather than brand searches. Category queries are exactly what those roundups target. If you are not on any of them, you are missing the most quoted source type.
6. A page on your site for each service you offer in each town you serve. This is the one on-site signal that behaves like a local one. A page called "Residential Window Cleaning in Meridian, Idaho" that actually describes your work in Meridian is very different from a homepage that lists eight towns in the footer. Nine towns and three services is 27 pages, and if they are real, they help. If they are junk duplicates, they hurt.
Why "they do better work than you" is almost never the answer
Trade owners take the AI answer personally. Do not. The engine did not read your competitor's five-star review from a customer in 2019 and think "this is a better company." It read a page that named a Boise window cleaner and quoted the page.
Look at where your competitor shows up outside AI. Do a normal Google search for "window cleaner Boise" and see if they rank on page one. Check if they are on the top three "best of Boise" lists. Look at their Google Business Profile review count and read a handful of the reviews to see whether the reviewers say what they cleaned and where. This is the exercise we walk clients through when a competitor shows up in AI and they do not.
In almost every case, the reason the rival got named is boring: they were easier to find in the places AI checks. That is winnable. It is winnable without changing the quality of the work you do, and it is winnable without you becoming a marketer. The reason we cannot promise you a citation from doing it is that we have measured association, not causation. But of the levers you can pull, presence in these six places is the one with the biggest measured effect by a wide margin.
The case where nobody won
Sometimes you check ChatGPT and it does not name your rival. It names a directory. "You can find several highly-rated window cleaning services on Yelp, Angi, and Thumbtack…" That is the empty case, and it happens more than people realize.
In our local scans, 38.7% of Invisible results cite no real local peer at all. The engine had nothing specific to say and fell back on directory pages. If that is your situation, nobody in your town has won yet. The first credible local window cleaner to become easy to see across those six signals is who gets named next. That is a very different situation from watching a specific rival get quoted, and it is a better one, because the seat is open.
The way to find out which case you are in is to run the actual queries. Type "best window cleaner in [your town]" and "residential window cleaning [your town]" into ChatGPT, Gemini, and Perplexity. Read what each one says. If a rival is named, you are catching up. If a directory is named, you are competing to be first.
You can also just run the free AI Visibility Check, which does this for you across the four main engines and reports back what came up. If you want the longer version of the mechanic behind it, we wrote up the 84% finding in more detail here.
Why the engines disagree about who is best
Ask ChatGPT and Gemini the same question about a plumber in your town and you can get two different names. That is not a bug. Each engine leans on a different set of local sources.
- ChatGPT pulls from Foursquare's Places data and now from Yelp reviews directly, with Bing Places as a fallback.
- Gemini is grounded in Google Maps, which means your Google Business Profile does the heavy lifting.
- Perplexity leans on Yelp, TripAdvisor, and industry-specific directories.
- Claude leans on Brave Search results, which behave more like general web search than a local data pipe.
BrightLocal's Local Consumer Review Survey, published February 11, 2026, with 1,002 US adults, found the share of consumers using AI to find local businesses rose from 6% to 45% year over year. ChatGPT was the most used at 31%, with Google AI Mode second at 23%. Different consumers are asking different engines. If you are winning on Gemini and losing on ChatGPT, your Google Business Profile is probably solid and your presence in Foursquare and Yelp is weak. If it is the reverse, the map card is where to look.
The specific engine your buyer uses is not something you control. What you control is being present in enough of the six places that the answer comes back with your name no matter which engine they ask.
What to actually do next
Do not go rewrite your homepage. That is the wrong lever and it was the biggest failure pattern we saw in a year of testing. The signals that move the eligibility stage are almost all outside your website.
Start with your Google Business Profile and your Bing Places listing. Make sure the address, phone, and service area are correct and match across both. Read the last twenty reviews you have and check whether they say what you cleaned and where. If they do not, the reviews are working less hard for you than they could. Search for "best window cleaner in [your town]" and see which local blogs or neighborhood sites list your competitors. Those lists take a phone call or an email to get on. Then look at your own site and count how many pages describe a specific service in a specific town. If the answer is zero, that is where the site work belongs.
You can also read our writeup on what AI actually pulls from a Google Business Profile if you want the detail on that one lever.
Frequently asked questions
Why does AI recommend my competitor even though I have more reviews?
Review count alone is not the strongest signal. AI engines read what reviews say, which platforms they are on, and how consistently the business's name and address appear across those platforms. A competitor with fewer but more specific reviews on Yelp, plus a clean Google Business Profile, can be easier for an engine to quote than a business with a higher raw count and gaps in the other signals.
Can I make ChatGPT recommend my business by adding pages to my site?
Adding a real page for each service in each town you serve is genuinely one of the six signals, so it can help. But the biggest measured predictor of eligibility in our data was Google presence for the query itself, not the page content. Anyone who promises you that a specific page change will produce an AI citation is guessing. We can only say it makes you more visible to the engine.
How long until my Google Business Profile changes show up in AI answers?
We do not have a clean number and anyone quoting one is inventing it. What we do know is that engines refresh their local sources at different speeds. Gemini, being grounded in Google Maps, tends to reflect Google Business Profile changes fastest. ChatGPT and Perplexity depend on when Foursquare and Yelp update, which is not on your schedule.
What if AI does not name anyone in my town, just directories?
That is the empty case, and it happened in 38.7% of the Invisible scans we ran. Nobody has won yet in your area. The first business to become easy to see across the six local signals is who gets named next, so the situation is better than being beaten by a specific rival, not worse.
Does this mean local SEO still matters more than "AI SEO"?
For local businesses, most of what people call "AI SEO" is local SEO done for a wider set of destinations. Your Google Business Profile, your reviews, your directory listings, and being on best-of roundups all still matter. What changed is that those signals now feed AI answers too, and each engine reads a different subset. It is one job now, not two.
The next move is to see what each engine currently says about window cleaners in your town, and which of the six signals you are missing. Running the free AI Visibility Check will show you exactly that across ChatGPT, Gemini, Perplexity, and Claude. If it comes back Invisible or Mixed, you will get a specific readout of where the gap is, not a generic score. That is the piece worth spending seven minutes on today.