The first thing I do on a discovery call now is generative engine optimization for local business in its crudest form: I open ChatGPT on one screen and Gemini on the other, type who should I call for a burst pipe in Round Rock, and read the answers out loud to the owner sitting across the table from me. It takes ninety seconds. It is the single most uncomfortable ninety seconds of the meeting.
Most of the time the owner is not in the answer. Sometimes nobody is - the assistant hedges and tells the reader to check Google Maps. But often three or four companies get named, with a sentence apiece about what they do and why they were picked, and the owner recognizes every one of them. He has bid against them. He has poached a tech from one of them. And he is standing outside the answer while a homeowner with water on the floor reads it.
I have watched a landscaper go quiet at that table. He had been buying search ads for six years and had a site he was proud of - big hero photo of a limestone patio, a slideshow, a contact form. The assistant did not mention him once across four phrasings of the same question. What he said after was the thing I keep coming back to: "So it's not that I'm ranked low. It's that I'm not in the conversation at all."
That is the right way to say it. Ranking and being recommended are two different games now, and the second one runs on different fuel.
How Do AI Assistants Choose Which Local Business to Name?
Strip away the mystique and the mechanics are unglamorous. An assistant answering a local question is doing three things in sequence: it retrieves a small set of sources, it extracts facts it can state confidently, and it composes a short answer naming a handful of entities. Every step is a filter, and each one throws out contractors for a boring reason.
Retrieval pulls from whatever the engine can actually reach - your site if its crawler is allowed in, your Google Business Profile, review platforms, association directories, city permit portals, local news, Reddit threads, Nextdoor posts. Extraction keeps only the claims that are stated plainly enough to be lifted. "Serving Central Texas since 2009" survives that step. A slideshow with the words baked into a JPEG does not. Composition then favors businesses the model can describe in one sentence without guessing, because a model that has to guess tends to skip you rather than risk it.
That third filter is the one nobody plans for. An assistant will drop a perfectly good company simply because it cannot tell whether you do residential or commercial, whether Georgetown is inside your radius, or whether you are a licensed contractor or a lead broker. Ambiguity reads as risk. Risk gets edited out.
The scale of this stopped being theoretical a while ago. According to the Pew Research Center, about 34% of U.S. adults had used ChatGPT as of mid-2025 - roughly double the share two years earlier. That is one product. Add AI Overviews sitting above the map pack and the number of local buying decisions that pass through a generated summary is no longer a rounding error.
Curious what a site like this costs you in missed leads? See real builds for businesses like yours.
Does Your Site Even Let the Generative Engines In?
Before anything else, check the door. This is the cheapest fix on the list and the one I find broken most often, usually because somebody pasted a robots.txt file from a forum post in 2023 when "block the AI scrapers" was the going advice.
Open yourdomain.com/robots.txt in a browser. You are looking for these user-agent names:
- GPTBot and OAI-SearchBot - OpenAI's training crawler and its search crawler. These are separate. Blocking the first is a defensible choice; blocking the second removes you from ChatGPT's cited answers.
- ClaudeBot - Anthropic.
- PerplexityBot - Perplexity, which cites sources heavily and sends real referral clicks.
- Google-Extended - controls use in Gemini and related grounding, separate from ordinary Googlebot crawling.
A blanket Disallow: / under any of those is a wall you built around your own storefront. I have found it on three contractor sites in the last year, twice put there by a previous developer without telling the owner. If you are not sure who controls that file, that is its own problem worth solving - the section on owning and managing your business website covers what access you should hold in your own name.
While you are in there, view the source of your homepage and search for a phone number. If your number, your city, and your services only exist inside images, inside a JavaScript widget that loads after the page renders, or inside a chat bubble, an extraction step has nothing to grab.
Why Entity Clarity Beats Keyword Density for a Local Business
Old-school local SEO taught people to sprinkle "Austin plumber" through a page. Generative engines do not count words. They assemble an entity - a thing in the world with attributes - and then decide whether that entity answers the question. Your job is to make the attributes unambiguous.
An entity-clear contractor site states, in text a machine can read without inference:
- What trade you are. Not "home services solutions." Plumber. Roofing contractor. Electrical contractor.
- What you actually do and do not do. Repipes yes, septic no. Residential yes, ground-up commercial no. The exclusions matter as much as the inclusions, because a model that names you for work you refuse learns quickly not to name you again.
- Where you work. Named cities and counties, not "the greater metro area." Cedar Park, Leander, Georgetown, Pflugerville - written out.
- Your license and credentials. This is where Texas trades have an advantage most of them waste. The Texas Department of Licensing and Regulation requires air conditioning and refrigeration contractors to include the ACR license number in advertising, and the Texas State Board of Plumbing Examiners requires the Responsible Master Plumber's license number in plumbing ads. That number is a hard, checkable identifier - exactly the kind of fact an engine will repeat because it can be verified. Roofers in Texas have no state license at all, which is why a roofer's citable credentials have to come from Roofing Contractors Association of Texas certification, manufacturer credentials, and named insurance carriers instead.
- Hours, emergency availability, and response window. "24/7 emergency service" as text on the page, not as a badge graphic.
Then say it twice - once in prose for the human, once in structured data for the machine. Schema.org publishes trade-specific types beneath LocalBusiness, including Plumber, Electrician, HVACBusiness, and RoofingContractor. Declaring the specific type instead of generic LocalBusiness is a small edit with outsized clarity. Inside it, areaServed takes your city list and hasOfferCatalog takes your service list, both as machine-readable facts rather than sentences someone has to parse. Google's own local business structured data documentation lays out the required and recommended properties.
There is no special markup for AI answers, and anyone selling you one is selling smoke. The markup that helps is the ordinary markup, filled in honestly and completely.
What Kind of Content Do Generative Engines Actually Quote?
Here is the shift that took me the longest to internalize. A page written to rank is often written to keep the reader scrolling. A page written to be quoted has to give the answer away immediately and completely, in a chunk that survives being lifted out of context.
Go look at your service page for water heater replacement, or panel upgrades, or roof repair. Find the sentence that answers the question a homeowner is actually asking. If it takes four paragraphs of preamble to arrive, an extraction step will probably take a competitor's cleaner sentence instead.
The format that gets pulled looks like this: a real question as a heading, then two to four sentences that answer it standing alone. "How long does a water heater replacement take?" followed by "Most standard tank replacements take three to four hours from shutoff to first hot water. Tankless conversions run a full day because they require new gas line sizing and venting. Permit inspection in most Central Texas jurisdictions happens after the install, not before." That block is quotable out of context. It also happens to be the block a real customer wanted.
Do that for the fifteen questions your dispatcher answers on the phone every week. Not blog topics - the actual questions. What does a service call cover. Do you charge to come out on a weekend. Can you work with my insurance adjuster. Do you pull the permit or do I. How soon can you get here from Kyle. Each one becomes a heading with a straight answer under it, and each one is a candidate to be cited.
This is the same discipline that makes a page convert, which is why it is not wasted effort if AI traffic stays small for you. Clear answers and obvious next steps are what turn website visitors into booked jobs regardless of which surface sent them.
Which Third-Party Mentions Move the Needle for a Local Business?
Your own site establishes what you claim. Third-party sources establish whether the claim holds. Models weight the second more heavily than owners expect, because corroboration across independent sources is how a system decides a fact is safe to repeat.
What has held up in practice:
- Your Google Business Profile, filled out to the last field. Services, service areas, attributes, categories, Q&A, and photos with real filenames. It is the most-cited local source there is and it is free. If yours is half-built, start with the walkthrough on optimizing a Google Business Profile for local service businesses before touching anything else.
- Reviews with substance in the text. A five-star rating with no words gives an extraction step nothing. A review that says "replaced our 40-gallon gas heater in Leander the same afternoon we called" hands it a fact about your trade, your city, and your response time. Ask customers what the job was, not how you did.
- Association and manufacturer listings. RCAT, ACCA, state association member directories, manufacturer dealer locators. Independent pages that name your business and your city.
- Local, non-SEO coverage. Chamber directories, neighborhood association newsletters, the trade write-up when you sponsor a Little League team. Unglamorous and durable.
What does not work, and is now a legal exposure: buying reviews. The FTC's rule banning fake and undisclosed reviews took effect on October 21, 2024, and it carries civil penalties. Review-buying arrived at its expiration date at exactly the moment review text started feeding AI summaries.
How Do You Tell If Generative Engine Optimization Is Working?
You cannot get a ranking report for this, and I would be suspicious of anyone who hands you one. What you can do is measure it the way you would measure anything else you cannot see directly: with a repeatable test and a stopwatch.
Build a list of ten to fifteen questions a customer would actually type - the emergency phrasing, the comparison phrasing, the "who's good in" phrasing, each anchored to a specific city you serve. Run them across ChatGPT, Gemini, and Perplexity on the first of every month, from a clean browser session. Record two things per question: whether you were named, and which sources the answer cited. That second column is the useful one. It tells you exactly which pages an engine trusts for your trade in your market, which is a target list you did not have before.
On the back end, check your analytics for referral traffic from chatgpt.com, perplexity.ai, and gemini.google.com. Volume will be modest. Intent tends to be high, because someone arriving from a generated answer has already been told you are a fit.
Ninety days is the honest window before the picture means anything, and it is the same window I would give a straightforward local search push. It is worth understanding how these surfaces stack against each other before you decide where the next dollar goes - the breakdown of how local service businesses get found online puts the relative math side by side.
Where I Would Start on Monday
The landscaper who went quiet at that table did four things over the following month, in this order. Checked robots.txt and removed a blanket block a previous developer had added. Rewrote his services page to name each service and each city in plain text instead of a graphic. Added specific structured data with his real service area. Asked his last thirty customers to mention the job and the town in their reviews.
None of it is exotic. All of it is the same work that makes a site legible to a human in a hurry, done with a second reader in mind - one that cannot squint at your hero photo and infer that you must do irrigation because there is a sprinkler head in the corner of the image.
That second reader is now standing between you and a real customer with a real problem. It is worth telling it plainly who you are.
Ricky West is the founder of Turnkey Web, which builds websites for service businesses across Texas.
Questions Owners Actually Ask
Is generative engine optimization different from local SEO, or is it the same work with a new name?
It overlaps by maybe seventy percent and diverges on the rest. Both depend on a crawlable site, accurate structured data, a complete Google Business Profile, and third-party corroboration. The divergence is in content shape: local SEO rewards pages that hold attention, while generative engines reward pages that surrender the answer immediately in a self-contained block. If you have neglected the fundamentals, start with local SEO for small business - the generative work sits on top of it, not instead of it.
Should I add an llms.txt file to my site?
No major engine has committed to reading it. It costs nothing to add and it will not hurt you, but treat it as optional housekeeping rather than a step that changes outcomes. Your robots.txt permissions, your structured data, and your on-page text are what actually determine whether you appear.
Should I block AI crawlers to protect my content?
For a local service business, almost never. You are not a publisher whose revenue comes from people reading your words. You are a contractor whose revenue comes from being findable when a pipe bursts. Blocking OAI-SearchBot or PerplexityBot to protect three paragraphs about drain cleaning trades a real lead channel for nothing.
My competitor keeps getting named and I don't. What is he doing that I'm not?
Usually one of three things, and you can check all of them in twenty minutes. He states his trade, cities, and license number in crawlable text and you state them in an image. He has reviews describing specific jobs in specific towns and yours are wordless five-star ratings. Or he appears in independent directories - association, manufacturer, chamber - and you appear nowhere but your own domain. The same diagnostic instinct applies here as in the audit for why a competitor ranks higher than you: compare the sources, not the aesthetics.
How long before this shows up in booked jobs?
Crawler access changes can show up within a couple of weeks. Structured data and content rewrites need a re-crawl and then a re-index, so give it thirty to sixty days. Review text and third-party mentions accumulate slowly and are the slowest to move and the hardest for a competitor to copy. Ninety days is a fair first read.
Frequently asked questions
Is generative engine optimization different from local SEO, or is it the same work with a new name?
It overlaps by roughly seventy percent. Both need a crawlable site, accurate structured data, a complete Google Business Profile, and third-party corroboration. The difference is content shape: local SEO rewards pages that hold attention, while generative engines reward pages that give the full answer immediately in a self-contained block.
Should I add an llms.txt file to my site?
No major engine has committed to reading it. It costs nothing and will not hurt you, but treat it as optional housekeeping. Your robots.txt permissions, your structured data, and your on-page text are what determine whether an assistant can name you.
Should I block AI crawlers to protect my content?
For a local service business, almost never. You are not a publisher whose revenue depends on people reading your words. Blocking OAI-SearchBot or PerplexityBot to protect a few paragraphs about drain cleaning trades away a real lead channel for nothing in return.
My competitor keeps getting named by AI assistants and I don't. What is he doing that I'm not?
Usually one of three things. He states his trade, cities, and license number in crawlable text while yours live inside an image. His reviews describe specific jobs in specific towns while yours are wordless star ratings. Or he appears in independent association and manufacturer directories and you appear only on your own domain.
How long before this shows up in booked jobs?
Crawler access fixes can register within a couple of weeks. Structured data and content rewrites need a re-crawl and re-index, so allow thirty to sixty days. Review text and third-party mentions build slowest and are the hardest for a competitor to copy. Ninety days is a fair first read.