Ask ChatGPT "who should I call to replace a tile roof in Mesa?" and it will give you names — usually two or three, with a sentence about each. Those names aren't random, and they aren't ads. They come out of a retrieval process you can understand and, to a meaningful degree, influence.
How does ChatGPT generate a contractor recommendation?
For a local buying question, modern assistants don't answer from memory. They run a web search behind the scenes, pull a handful of pages they trust, and then write an answer grounded in what those pages say. That means every recommendation is really two decisions: which pages get retrieved, and which companies those pages support. You can lose at either step — invisible to the search, or present in the sources but not compelling enough to be named.
What sources do AI engines cite for trades questions?
Across our July 2026 sampling batches — Miami roofing, Tampa HVAC, LA plumbing; 480 runs and roughly 3,400 citations — the cited sources cluster into three buckets, in a fairly stable pattern:
- Contractors' own websites — the single largest category. Cost guides, service pages, and project galleries with real local detail get retrieved constantly.
- Review and directory platforms — Google reviews, Yelp, Angi, Houzz, BBB. The engines lean on these for trust signals: ratings, review counts, years in business, license status.
- Community and editorial sources — Reddit threads, local news, "best of" roundups. Fewer citations, but outsized influence when they exist, because they read as third-party endorsements.
What gets a company from cited to recommended?
Getting your pages retrieved is necessary but not sufficient — the engine still decides which companies to put in the answer. Watching thousands of answers, the companies that get named share a recognizable profile:
- A strong, recent review record — rating and volume both matter, and engines notice recency. A 4.7 with fresh reviews beats a 4.9 that went quiet in 2024.
- Consistent identity everywhere — same name, phone, service area, and trade across your site, Google Business Profile, and directories. Mismatches read as uncertainty, and engines skip uncertain candidates.
- Verifiable specifics — license numbers, years operating, real project photos, named neighborhoods. Engines prefer claims they can ground in a source.
- Content that answers the actual question — if the question is about cost, pages with real numbers win. If it's "emergency repair", pages that say response time win.
Do different AI engines recommend different contractors?
The same company can be a fixture on Gemini and nearly absent from ChatGPT — in our data, the gap runs as high as 3.5× between engines. Gemini leans on Google's local graph (Maps, reviews, Business Profiles), while ChatGPT leans more on the open web (your site, directories, Reddit). Practically, that means you can't check one engine and call it done: your review profile might carry you on one while a missing cost guide sinks you on the other.
What should a contractor do with all this?
- Audit the question set, not the engine. List the 20–50 buying questions that matter in your market. That list — not any single answer — is the battleground.
- Publish the pages the engines are starving for: a priced cost guide per major service, a real page per city you serve.
- Tighten the trust layer: review velocity, consistent NAP data, license info on your site.
- Track per engine, weekly, and let the deltas tell you what's working.



