
When researchers asked ChatGPT to name the best roofer, plumber or HVAC contractor in dozens of US and Canadian cities this September, it did not lean on Yelp at all. It leaned on the Better Business Bureau and on government licensing boards: the same places a careful homeowner checks before letting a stranger onto their roof.
That one finding changes how a contractor should think about AI search. The homeowner who used to type "roofer near me" into Google and scroll through a list now increasingly asks a chatbot and gets back a few names. In BrightLocal's 2026 survey of 1,002 US adults, the share of people using ChatGPT and other AI tools for local business recommendations jumped from 6% to 45% in a single year, making AI the third most common source of recommendations after Google and Facebook. The contractors who are not in that short answer never get the call.
The general local business groundwork still applies: a claimed Google profile, steady reviews, the same details everywhere. Our guide to near me answers covers that in full. This post covers the part that is specific to contractors. Hiring one is a high-trust, high-cost decision, and the evidence suggests AI engines treat it that way. So the useful question for AI SEO for contractors is not "how do I rank in ChatGPT?" It is this: when an AI goes through a homeowner's usual hiring checks on your business, does it find a clear, matching answer for each one?
What AI SEO for Contractors Actually Means
AI SEO, GEO (generative engine optimization) and AEO (answer engine optimization) are three names for roughly the same goal: making your business easy for AI assistants to find, understand and describe correctly when someone asks about your trade in your area.
It helps to split that goal into two parts, because only one of them is fully in your control.
Readiness is about your own website and your own listings. Can AI crawlers reach your pages? Do the pages state, in plain text, what you do, where you work and how to reach you? Do your details match the records other sites hold about you? All of that is checkable and fixable.
Visibility is whether an AI engine actually names you when a homeowner asks. That decision is made by the AI provider, it changes from one ask to the next, and nobody can promise it. Anyone who guarantees you a spot in ChatGPT's answers is guaranteeing something they do not control.
This guide is about readiness, because that is the part you can work on. Good readiness does not force a recommendation, but poor readiness gives an AI engine every reason to name someone else.
Where ChatGPT Looks Before It Names a Contractor
The study behind the opening finding was published on 5 October 2026 by 8ight.AI. The researchers asked ChatGPT, Claude and Gemini the same question, "Who is the best {trade} in {city}? Name specific businesses," for 39 trades (including roofers, plumbers and HVAC contractors) across 49 places in the US and the Greater Toronto Area. They collected 1,412 ChatGPT answers in September 2026 and compared the businesses named against 2,976 businesses pulled from Google Maps.
On sources, ChatGPT cited the Better Business Bureau in 38.7% of answers and government websites in 25.1%. About 7 in 10 of those government pages (250 of 355) were licensing boards, license look-ups or contractor registries. It cited Yelp in none of its 1,412 answers. Claude was the opposite: it cited Yelp in 202 of its 218 answers and government sites in none.
A few other findings from the same study are worth knowing:
- Review count mattered, star rating did not. ChatGPT named 3.4% of businesses with fewer than 25 Google reviews and 22.2% of businesses with 1,000 or more. The median star rating was 4.9 for both the named and the unnamed businesses.
- The engines disagreed. Of the 294 businesses named by at least one engine, only 28% were named by both.
- Answers changed when asked again. When ChatGPT was asked the same question twice, a median of 29% of the named businesses appeared in both answers.
Read this with the right amount of caution. 8ight.AI sells AI visibility services, which the study itself acknowledges. It used the engines' developer access rather than the consumer apps, it mostly covers large cities, and its authors say plainly that it shows where the engines read, not what makes them pick one business over another. Other studies with different methods have found Yelp, Angi and the BBB all appearing often. What this one does show is that, at least for ChatGPT in September 2026, the sources behind contractor recommendations looked a lot like a homeowner's due diligence. That is the thread the rest of this guide follows.
What a Homeowner Checks, and Where AI Finds the Answer
Before a careful homeowner hires a contractor, they check roughly seven things. An AI assistant answering on their behalf is trying to settle the same seven. The table shows where an AI engine can find each answer, and what your own site needs to say so that answer exists and matches.
| What the homeowner checks | Where AI can find it | What your site needs to say |
|---|---|---|
| Licensed to do the work | State licensing board or registry, your site | License number, type and issuing state, in text, plus your legal name |
| Insured | Mostly your site; some license records show insurance or bond status | Which cover you carry, within your state's advertising rules |
| Works in my town | Google profile, directories, your site | A plain list of the places you serve |
| Does this exact job | Almost only your site | One page per main type of job |
| Can come now | Google profile, your site | Real hours and emergency policy |
| Has done it before, well | Review sites, BBB, Google, your site | Written-up past projects with town and job type |
| Price and guarantee | Almost only your site | How you price, typical ranges, warranty terms |
Two things stand out. First, for three of the seven, your own website is the main or only source, so a thin site leaves those answers blank. Second, for the others, your site is one source among several, and what matters most is that it agrees with them.
License: give the AI a record it can match
A licensing board record is about as trustworthy as a source gets: an official body confirming that a named business holds a current license. The study above suggests ChatGPT reads these records. But a record only helps you if the AI can tell it belongs to the business it is about to recommend.
The board knows you by your license number and your legal name. So your site should state both, along with the license type or class and the issuing state, in the footer (so it appears on every page) and on your About page.
The legal name is where the link most often breaks. Many contractors trade under a different name from the one on their license. If the board lists "Smith Family Enterprises LLC" and your site, reviews and truck wraps all say "Smith Roofing," nothing tells an AI they are the same company. One sentence fixes it: "Smith Roofing is the trading name of Smith Family Enterprises LLC, state contractor license #12345." Now the license record, your BBB profile and your website all point at one business.
Insurance, within your state's rules
Homeowners want to know that if someone gets hurt or something gets damaged, they are not the one paying. Directories rarely carry this, so your site is usually the only source. State plainly which cover you carry, for example general liability insurance and workers' compensation. You do not need to publish policy numbers. Only state what you can show a customer if they ask for the certificate: a claim that turns out to be false is far worse than an honest gap.
Check your state's advertising rules before you write this part, because they differ. California's contractor board, for example, tells contractors not to advertise that they are bonded at all, because it can make the public think they are better protected than they are. The same board also says contractors may only advertise work within the trades they are licensed for, which matters for the service pages below. Your licensing board's website will have its own version of these rules.
Service area: the question small sites fail most
Our free checker asks an AI six questions about a business using only what it can read on the site, and one of them is "Which geographic areas does this company serve?" In an early sample of the first 39 sites run through it, sites of all kinds and not just contractors, the AI could answer that question for only about 1 in 5. For a contractor, whose whole business depends on travelling to customers, that is a serious gap.
The fix is a plain list of the towns, cities or counties you serve, written as text. Not a map image, and not "serving the greater metro area."
Keep the list honest and the same as your Google profile. Google's rules for service-area businesses allow up to 20 service areas and say your overall area shouldn't be more than "about 2 hours of driving time from where your business is based." Google also says that if you don't serve customers at your business address, you should remove that address from your profile, and your website should tell the same story. Our fix guide on service area details shows how to add the list in the dashboard.
One page per job you actually do
Someone with a sagging flat roof on a garage wants a roofer who does flat roofs, not one whose site just says "roofing services." This is where your site has the biggest advantage, because no directory describes your services as precisely as you can.
Give each main type of job its own page, named the way homeowners say it: "tankless water heater installation," "electrical panel upgrade," "storm damage roof repair." Each page should explain what the job involves, which situations it suits, roughly how long it takes, and which areas you do it in. A single "Services" page with a bulleted list of twenty items gives an AI engine almost nothing to quote. If you want those pages to be machine-readable too, our guide to Service schema explains how a page can describe a service, who provides it and where.
Hours and emergency call-outs
For a burst pipe, a dead furnace in January or a tree through the roof, the homeowner wants someone today. State your real working hours and whether you do emergency call-outs: "24-hour emergency plumbing, 7 days a week, across Franklin and Delaware counties." Only say it if it is true. An AI that tells a homeowner you answer at 2am, when you don't, sends them a bad experience with your name on it.
If your availability changes with the seasons, say that too. "We book AC tune-ups from March to May" or "Roof replacements are scheduled from April to November" are exactly the kind of specific facts an assistant can pass on.
Proof of past work, and reviews
Homeowners want evidence of jobs like theirs. Photo galleries help a person, but an AI reads the words around them, so write each project up: the town, the type of job and roughly when. "Full roof replacement, Westerville, 2025: architectural shingles, new underlayment, two-day job" tells an AI engine where you work and what you do in a single line.
On reviews, the study suggests that once you are rated well, the number of reviews matters more than the average. Make asking for a review a routine step at the end of every job rather than an occasional push. It is fine to ask customers to mention what you did and where, since that is what the next homeowner wants to know anyway. Don't pay for reviews or only ask the customers you expect to be happy; both break the rules of the major review platforms.
Prices and warranties
Homeowners ask AI assistants about cost constantly, and directories almost never answer. Say how you price (free estimates, call-out fee, fixed quotes), give typical ranges if you are comfortable publishing them, and spell out your warranty: "10-year workmanship warranty on all roof replacements." A contractor whose site gives a straight answer is one of the few sources an assistant can use.
How the Checklist Changes by Trade
The seven checks apply to every trade, but each trade has its own details that homeowners ask about. Covering them is one of the easiest ways to stand out, because most contractor websites don't.
Roofers. Storm damage and insurance claims are the big ones. Say whether you work with insurance adjusters, whether you do free storm damage inspections, which materials you install (asphalt shingles, metal, flat roofing systems), and which manufacturer certifications you hold. If you do emergency tarping, say so.
Plumbers. Emergency availability matters more here than in almost any other trade. Beyond that, name the specific jobs: drain cleaning, water heater repair and installation (tank and tankless), sewer line work, leak detection, repiping. If you do backflow testing, gas line work or anything else that needs a separate certification in your state, list it.
HVAC contractors. Homeowners ask which brands you service and install, whether you offer maintenance plans, and what your seasonal schedule looks like. Say whether you handle heat pumps, ductless mini-splits and indoor air quality work, and state your refrigerant handling certification if your customers might ask.
Electricians. License class matters a lot here, so state yours precisely. Homeowners often ask about panel upgrades, EV charger installation, generator hookups and whether you pull permits. Say that you do, if you do.
General contractors and remodelers. The questions shift to project size and process: which kinds of projects you take on (kitchens, bathrooms, additions, whole-home remodels), your typical project range, who handles permits, and whether your subcontractors are licensed. A clear "how a project works with us" page answers several of these at once.
Telling AI What Kind of Business You Are
Behind the visible text, your site can also describe your business in structured data, a small block of code that labels facts for machines: this is the business name, this is the phone number, these are the areas served. The vocabulary for it comes from schema.org.
Schema.org has a general type for trades, HomeAndConstructionBusiness, and eight more specific types under it: Electrician, GeneralContractor, HVACBusiness, HousePainter, Locksmith, MovingCompany, Plumber and RoofingContractor. If your trade is one of these, use the specific type rather than a generic "LocalBusiness." It is the most direct way to tell a machine what you do. Trades without their own type, such as landscaping or pest control, use the general HomeAndConstructionBusiness type.
Two properties do most of the work for a contractor. areaServed lists the places you serve, which gives the service area answer in a form machines read directly. sameAs lists the addresses of your profiles on other sites, such as your Google Business Profile, your BBB page and your Angi or Houzz listing, which helps an AI engine connect your website to the outside records it may be reading.
A Real Example: Green Circle Construction
Green Circle Construction is a home remodeling company in Ulster County, New York, and one of the contractors using AI Schema Gen on its WordPress site. We ran their website through our free checker on 20 October 2026 to see how it holds up against the checks in this guide. It scored 66 out of 100, a C, and the details are more useful than the grade.
What is working:
- Service area. Asked which areas the company serves, the AI answered "Ulster County, including Kingston and New Paltz." That is the question most sites fail. Here the answer was stated on the page in words, and the site's structured data confirmed it by listing Kingston and Ulster County as areas served.
- A specific business type. The structured data labels the business as a GeneralContractor rather than a generic local business.
- One page per job. Kitchen remodeling, bathroom remodeling, siding installation, decks, home additions, three-season rooms and basement finishing each have their own page.
- Contact details. The AI found the phone number, email and address, and the structured data backed up the answer.
What is left to do: the AI could not say who runs the business. The founder's name is in the site's structured data, but it is not written in the page text the AI read, so the AI had nothing to answer from. One sentence on the About page fixes that, and it is a good reminder that structured data confirms what your pages say rather than replacing it. The report also lists more routine fixes, such as adding a sitemap.
Common Mistakes
Building fifty near-identical town pages. It is tempting to create "Roofer in Westerville," "Roofer in Dublin," "Roofer in Hilliard" and so on, each a copy of the last with the town name swapped. Google's spam policies name this directly as doorway abuse, giving the example of "pages targeted at specific regions or cities that funnel users to one page." A town page is only worth having if it says something specific about your work there: real projects, local permit notes, local conditions. Otherwise, one clear service area list does the job better.
Putting your license number only in a badge image. Badges look good, but a number inside a picture is easy for a person to read and hard for a machine. Repeat it as text.
Showing your track record only in animated counters. Many contractor sites have a "Projects completed" or "Years of experience" counter that counts up as you scroll. Those numbers are usually filled in by JavaScript, so a crawler that does not run JavaScript reads "0+ projects completed." Write the real numbers in plain text somewhere too, for example on your About page.
Letting your trading name and legal name drift apart without explanation. If your license, your BBB profile and your website use different names and nothing links them, you are asking an AI engine to guess that they are the same business.
Saying "serving all of Texas." A claim that broad is not believable for most contractors, and it gives an AI nothing specific to match against the homeowner's town. List real places.
Claiming emergency service you don't really offer. It may win the occasional mention, but the homeowner who calls at midnight and gets voicemail will remember your name for the wrong reason, and may say so in a review.
Ignoring your BBB profile because nobody you know uses it. Your customers may not, but in the study above ChatGPT cited the BBB in close to 4 in 10 answers. An unclaimed or outdated profile there is now an AI problem, not just a reputation one.
Checking ChatGPT once and drawing conclusions. The same question asked twice shared only about a third of its named businesses. One ask tells you very little. Track a fixed set of questions over time instead; our guide on tracking ChatGPT mentions explains how to read the changes.
How to Check and Fix It
You can work through this in an afternoon, then keep it up with a short check every few months.
Step 1: See what an AI can learn from your site today. Run your homepage through our free AI readiness checker. Among other things, it asks an AI six questions about your business using only what it can read on your site: what you do, where you are, which areas you serve, which services you offer, who runs the business and how to contact you. For each answer, it also shows whether your structured data actually backs it up or whether the AI had to guess from the page text. For contractors, watch the "which areas" and "who runs it" answers closely.
Step 2: Fix the facts on your own site. Work through the seven checks above. Most of the fixes are plain text: a footer with your license number and legal name, a service area list, one page per main job type, your hours and emergency policy, your warranty terms, and a few written-up projects.
Step 3: Fix the structured data. In the AI Schema Gen dashboard, the Business Identity section is where you set your business type (including the specific trade types above), say whether customers visit you or you go to them, list your service area, add your contact details, and link your profiles elsewhere, including your BBB page. The dashboard then builds the structured data for your pages from those details and keeps it in place, on WordPress through our plugin and on other platforms through a copy-and-paste code block. One thing the dashboard does not have is a field for license numbers or insurance, so those belong in your page text, as described above.
Step 4: Check the records you don't own. Look up your own license on your state board's website and make sure the name, address and status are right, because that record is one ChatGPT has been seen reading. Do the same for your BBB profile and your Google Business Profile. Our near me guide covers the wider listings checklist.
Step 5: Watch the results over time. Ask the same handful of questions on a regular schedule ("best roofer in [your town]," "emergency plumber in [your county]") and record who gets named. Because answers vary from one ask to the next, look for a trend over several weeks, not a single result.
Frequently Asked Questions
Is your website ready for AI?
Check now. Free readiness score in under a minute, no signup, no card.