We asked three AI engines about painters in 25 US cities.
225 answers from ChatGPT, Gemini and Google AI Mode. Ask who the best exterior painter is and they name a local business in 74 of 75. Ask what the job costs and 43 of 75 name no local business at all. And when two engines name the best exterior painter in the same city, their lists overlap by 14.6% on average (names both gave, divided by names either gave).
answers recorded
cities and states
distinct business names
domains cited
Ask who is best, you get a local name. Ask the price, most answers give none.
Three questions, asked on three engines in 25 cities. Here is how often an answer named a business that actually operates in that city.
“Who is the best exterior painter in [CITY] with good reviews?”
“Recommend a cabinet refinishing company in [CITY].”
“How much does it cost to paint the interior of a 2,000 square foot house in [CITY]?”
74 of 75 answers about who is best named a local business. So did 75 of 75 cabinet refinishing answers. On price it was 31 of 75. The engines are not short of names: 524 distinct business names came up across the study, 757 times in total. They reach for one far less often when the question is about money.
On price, the engines split.
On who is best and on cabinet refinishing, every engine named a local business in at least 24 of 25 answers. Asked what the work costs, they went separate ways: ChatGPT named a local business in 15 of 25, Google AI Mode in 10 of 25 and Gemini in 6 of 25.
| Engine | Who is best | What it costs | Cabinet refinishing | All three |
|---|---|---|---|---|
| ChatGPT | 24/25 | 15/25 | 25/25 | 64/75 |
| Gemini | 25/25 | 6/25 | 25/25 | 56/75 |
| Google AI Mode | 25/25 | 10/25 | 25/25 | 60/75 |
Every engine got the same 75 prompts, three questions in each of 25 cities, so the rows compare like for like. It is still two days and one recorded answer per cell. A snapshot of how these engines behaved on those days, not a ranking of which is better.
There is no such thing as “the” AI answer.
Ask two engines who the best exterior painter in a city is and compare the lists. Overlap is the business names both engines gave, divided by the business names either one gave. Across 75 engine-to-engine comparisons, the average was 14.6%.
average overlap when two engines name the best exterior painter in the same city
engine pairs with no business name in common
cities where all three engines gave at least one identical business name
In 21 of 75 comparisons, two engines asked the identical question about the identical city gave no business name in common. Names are matched strictly, so some of those pairs are one business spelled two ways, like “CertaPro Painters of Greenville East” and “CertaPro Painters of Greenville East, SC”. Two of those pairs include an answer that named no business at all. The closest pair was ChatGPT and Google AI Mode at 25.4%. The furthest apart were ChatGPT and Gemini at 7.7%. Being named by one engine tells a business little about whether the next one will name it.
It shows up in the long tail too. 524 distinct business names came up across the study, and 343 of those names, 65.5%, came up exactly once. The engines are not converging on a shortlist.
115 of the 524 business names carry a national franchise brand.
The 115 franchise names are 21.9% of the names and 21.3% of all 757 mentions. The biggest brands are CertaPro Painters (30 names), N-Hance (20 names) and That 1 Painter (11 names).
A brand in two cities counts as two names.
Small review counts get named first too.
We recorded a Google review count only when one live Google profile clearly matched the first business named. 103 answers passed, covering 80 different businesses. Across those answers the median was 184 reviews, the range ran from 1 to 4,898, and 20 of the 103 had fewer than 50. A small review count did not keep a business from being named first.
Angi was cited in 95 of the 137 answers whose sources we could read.
Of the 137 answers with a source list we could read, here is how many cited each domain at least once. Ties at the cutoff are included, so the list runs to 11.
113 of the 137 answers with readable sources cited at least one lead marketplace or review directory, 82.5%. After Angi, the most cited directory was homeadvisor.com, in 21. Reddit showed up in 12. Most of the 137 readable source lists came from ChatGPT answers, so these figures lean on it. A painter trying to get into these answers is up against Angi for the engine's attention, not just the painter down the road.
17 of the 113 businesses we checked had FAQ schema.
FAQ schema is the markup that tells a search or answer engine “this page answers this question”. For each answer we took the first business named, fetched its homepage and searched the raw source for it. 17 of 113 businesses had it, 15%. Every YES was checked again by hand.
That is 113 businesses, not all 524 names. Only the first business named in each answer was checked, and 38 answers could not be checked and are marked UNKNOWN. Not checked is not the same as absent. The check reads the homepage as served, so FAQ markup on an inner page, or added by JavaScript after load, is not seen.
How this was collected.
- Three questions, asked about 25 US cities in 16 states, on three answer engines: ChatGPT, Gemini and Google AI Mode. 225 answers, 75 per engine. Every engine was asked every question in every city.
- Every answer in this data was run the same way: in each product's own interface, set up logged out, in a fresh session, on the default model, with no location set. Not through an API, because an API answer is not the answer a homeowner sees.
- Perplexity was also run. Its answers are not in this data.
- The question text was used verbatim, with only the city name changed.
- For each answer we recorded every business named, the sources cited, whether the answer linked or named the first business's own website, that business's Google review count, whether its homepage carries FAQ schema, and whether any business that actually operates in that city was named at all. A directory listing or a national franchise page does not count as a local business. Neither does a business that shows up only as a source card or citation link.
- Review counts come only from the business's live Google profile, and only when one listing clearly matches: the same name, no phone number shared with another listing, no second listing of the same name nearby, and an address in the study city (or, for a business that hides its address, a profile that names the city or its county). Anything else is UNKNOWN.
- FAQ schema was checked on the homepage of the first business named, by reading the raw page source for FAQPage markup. Every YES was checked again by hand.
- Business names are matched after light cleanup: lowercase, punctuation removed, a trailing LLC, Inc, Co or Company dropped, and a trailing bracket like “(Phoenix)” dropped. Nothing else is merged, so one business written two ways counts as two names. The same name in two cities also counts as two. A name repeated inside one answer counts once.
- Overlap between two engines: for each city, on the “who is best” question, the business names both engines gave divided by the business names either one gave.
- Sources are counted by domain: lowercase, with the scheme, the path, “www.” and “m.” removed. Some Google AI Mode answers listed site names instead of links. A site name counts only where it maps to one domain without doubt: 15 did, and 11 did not and are left out of the domain counts. The CSV keeps the raw values.
- Directories are lead marketplaces and review sites such as angi.com, homeadvisor.com, thumbtack.com and yelp.com.
- Franchise names are branches of national brands such as CertaPro Painters, N-Hance and That 1 Painter.
- Where a value could not be confirmed, the cell says UNKNOWN rather than a guess. Where it was not checked, the cell says NOT_CHECKED. Those rows are in the CSV.
The 25 cities
Atlanta, GA · Austin, TX · Boise, ID · Charlotte, NC · Columbus, OH · Dallas, TX · Denver, CO · Greenville, SC · Houston, TX · Indianapolis, IN · Jacksonville, FL · Kansas City, MO · Knoxville, TN · Las Vegas, NV · Nashville, TN · Oklahoma City, OK · Orlando, FL · Phoenix, AZ · Portland, OR · Raleigh, NC · Sacramento, CA · San Antonio, TX · Sarasota, FL · Tampa, FL · Tucson, AZ
Collected 18 and 19 September 2026.
The limits, stated plainly.
A study that only lists what it proves is a sales page. These are the reasons to be careful with it.
- 25 cities across 16 states is not a national sample. Treat the size of each effect as indicative, not precise.
- Two days, 18 and 19 September 2026, and one recorded answer per cell. These answers are generated fresh every time and they move. Ask again and you may get different names.
- Every citation figure is out of the 137 answers with a source list we could read, not all 225.
- Review counts are strict on purpose. 103 answers have one. 75 are UNKNOWN under the matching rules, 3 were not checked (NOT_CHECKED), and 44 named no business at all.
- The FAQ check covers the first business named in each answer, on its homepage, as raw HTML. 113 businesses were checked. 38 answers could not be checked and are marked UNKNOWN. FAQ markup on an inner page, or added by JavaScript after the page loads, is not seen. Not checked is not the same as absent.
- Names are matched strictly, after the cleanup under Method. So one business written two ways counts as two names: in Greenville, “CertaPro Painters of Greenville East” and “CertaPro Painters of Greenville East, SC” count as two. That pushes the business-name, franchise and FAQ counts up and, most likely, the overlap figures down, and some of the zero-overlap pairs are two spellings of one business.
- In three Google AI Mode price answers (Orlando, Atlanta and Boise) the business names were recorded as a sentence, not a list. They count as naming a local business, as recorded, but they are left out of every name-level figure: distinct business names, mentions, overlap and franchises.
- One price answer could not be coded either way. It is marked UNKNOWN and stays in the denominator.
- This measures who gets named. It does not measure clicks, calls or work won, and nothing here should be read as a claim about those.
The data is on this page so you can disagree with it.
Every row, including the ones marked UNKNOWN. The CSV keeps the raw values, and the counting rules are in the method above. Check the cities, re-run the questions, see what you get.
Reading the raw data
Some cells use a label instead of a value.
- UNKNOWN
- : we could not confirm the value. For sources, the engine showed some but we could not read them.
- NO_SOURCES_SHOWN
- : the engine gave no source list.
- NOT_CHECKED
- : we did not check this field for that business.
- NA
- : the field does not apply, because the answer named no business.
- NONE
- : the answer named no business.
The price question is the open one.
On who is best, the engines named a local business in 74 of 75 answers, and across the study they gave 524 distinct business names. On price, 43 of 75 answers named no local business at all.
A page that answers what the work costs, in that city, with real numbers, looks like the obvious missing page. That is our read of the data, not something it proves. It is also why we build those pages.
Growth Recon AI, 21 September 2026. Free to cite with a link to this page.