Local Business Schema for AI Search: What It Does, What It Doesn't, and How to Set It Up
LocalBusiness schema is worth adding, but not for the reason most guides give. Here is what the platforms actually say, what the data shows, and a setup you can copy and test in an afternoon.
TL;DR
- Google says structured data isn't required for its generative AI features and there is no special schema to add. It still recommends schema for rich result eligibility.
- Bing says structured data may support clearer grounding but does not guarantee visibility. OpenAI says sites that block OAI-SearchBot will not appear in ChatGPT search answers.
- An Ahrefs vendor study of 1,885 pages found no meaningful AI citation lift from adding JSON-LD. Treat schema as hygiene, not a lever.
- The real value is consistency. Your markup, your visible page, your Google Business Profile, Bing Places and directories should all state the same facts.
- Service-area businesses should not publish a street address in markup that their Google profile hides. No markup guarantees an AI citation or recommendation.
Does LocalBusiness schema help my business show up in AI search?
Not by itself. Google says structured data isn't required for generative AI search, and there's no special schema.org markup you need to add. Bing says it may help with grounding but guarantees nothing. An Ahrefs vendor study found no meaningful citation lift. Schema's real job is keeping your business facts identical everywhere.
So should you skip it? No. In that same passage, Google adds that it's a good idea to continue using it as part of your overall SEO strategy, as it helps with being eligible for rich results on Google Search. Schema is cheap, it is useful, and it should be correct. It is just not the lever many guides make it out to be.
The rest of this guide covers what the platforms say, what the data says, how to set up the markup step by step, and a checklist for the mismatches that actually cause trouble.
What LocalBusiness schema is, and what it is not
LocalBusiness schema is a small block of code on your website that labels your business facts: name, phone, address, hours, service area and type of business. It uses the shared Schema.org vocabulary. It inherits from both Organization and Place, and has many subtypes, including FoodEstablishment, HomeAndConstructionBusiness, HealthAndBeautyBusiness, ProfessionalService, Store, Dentist and AutomotiveBusiness.
The format matters less than people think, but there is a clear default. Google recommends using JSON-LD for structured data if your site's setup allows it, as it's the easiest solution for website owners to implement and maintain at scale.
Here is what schema is not:
- Not a ranking switch. Google does not guarantee that your structured data will show up in sea rch results, even when it is valid.
- Not a replacement for your Google Business Profile. Your profile, Bing Places and Apple Maps listing are separate records. Schema should agree with them, not compete with them.
- Not a way to add facts. Don't add structured data about information that is not visible to the user, even if the information is accurate.
- Not a reputation fix. Code cannot change what customers say about you on review sites.
What Google, Bing and OpenAI actually say
Each platform says something narrower than most schema articles claim. Here is the short version, then the detail.
| Platform | What its docs say | What it means for you |
|---|---|---|
| Google (AI Overviews, AI Mode) | No special schema needed. Markup must match visible text. | Use normal LocalBusiness markup. Keep it honest. |
| Bing and Copilot | Structured data may support grounding. No guarantee. | Helpful context, not a ticket in. |
| ChatGPT search | Blocking OAI-SearchBot keeps you out of search answers. | Check robots.txt before you touch schema. |
| Claude, Perplexity, Grok | I found no public statement tying schema to answers. | Crawlable pages with clear, visible facts. |
Google's guide to generative AI features is blunt. It lists "overfocusing on structured data" as something you can ignore. Google's separate AI features page, as quoted by a secondary source, says "You don't need to create new machine readable files, AI text files, or markup to appear in these features. " That same page, according to another summary, does explicitly name one recommendation in the AI features documentation: your structured data should match the visible text on the page.
Google's general structured data rules back this up. Your structured data must be a true representation of the page content. Break the rules and there are consequences: violating a quality guideline can prevent syntactically correct structured data from being displayed as a rich result in Google Search, or possibly cause it to be marked as spam.
For more on Google's AI surfaces, see how to get found in Google AI Overviews and Google AI Mode for local businesses.
Bing and Copilot
Bing rewrote its guidelines to cover AI answers. These guidelines describe how Bing discovers, crawls, indexes, evaluates, and surfaces content across Bing search experiences, Copilot, and grounding API results. On schema, a secondary summary quotes Bing's careful line: structured data "may support clearer grounding but does not guarantee visibility or grounding traffic."
What Bing does stress is consistency. Its grounding section advises publishers to state key facts explicitly rather than implying them and to use consistent entity names across pages. And per coverage of the rewrite, GEO doesn't guarantee citations, the guidelines note, just as SEO doesn't guarantee rankings.
OpenAI and ChatGPT
OpenAI's crawler docs are the most practical of the three. Sites that are opted out of OAI-SearchBot will not be shown in ChatGPT search answers, though can still appear as navigational links. If that crawler is blocked, no schema can fix it.
The settings are separate. A webmaster can allow OAI-SearchBot in order to appear in search results while disallowing GPTBot to indicate that crawled content should not be used for training. Changes are not instant: it can take ~24 hours from a site's robots.txt update for our systems to adjust. I walk through the full setup in how to allow AI crawlers in robots.txt.
Claude, Perplexity, Gemini and Grok
I did not find any public document from Anthropic, Perplexity or xAI that says LocalBusiness schema affects their answers. The safe approach is the same everywhere: let the search crawlers in, and put your facts in plain visible text. Our desk notes suggest Claude's web results lean on Brave Search, so it is worth checking whether Brave has indexed your site. Platform guides: Claude, Perplexity, Gemini and Grok.
What the data says about schema and AI citations
The best test so far is a vendor study from Ahrefs. I could not load the original report, so these numbers come from several write-ups that agree on the basics.
- The setup. Ahrefs tracked 1,885 pages that added JSON-LD schema against about 4,000 control pages from August 2025 to March 2026.
- The result. Google AI Mode showed +2.4% and ChatGPT +2.2%, both statistically indistinguishable from random variation. AI Overviews showed a 4.6% drop. Reports disagree on whether that drop was statistically significant.
- The correlation trap. Ahrefs' original scan of 6 million URLs found AI-cited pages were almost three times more likely to carry JSON-LD than uncited ones. The controlled test suggests that gap reflects site quality, not the code.
Not everyone accepts the study. One critic argues the 30-day window and other design choices hide real effects. That is a fair debate. Still, it is the only controlled test I found, and it points the same way as Google's own guidance.
A separate experiment, reported secondhand, found that five major AI systems, ChatGPT, Claude, Perplexity, Gemini, and Google AI Mode, extract only visible HTML content during retrieval. That is one test, not settled fact. But it lines up with Google's rule: if a fact only lives in your JSON-LD, do not count on it reaching an answer.
What does seem to matter for local? A BrightLocal study, relayed on X, looked at 200,875 local AI searches and about 1.97 million citations across ChatGPT, AI Mode and AI Overviews. Individual business websites made up 93% of the unique cited domains and earned 42% of citations. That is a vendor study, so treat it as a signal. The signal is that your own site's visible facts get read.
The original GEO research paper also tested changes to visible content, like adding quotes, statistics and citations. It did not test markup. The research keeps pointing back to the page itself.
Why consistency is the real job
AI assistants pull from many places at once: your website, your Google Business Profile, Bing Places, Apple Maps, Yelp, directories and review sites. When those sources disagree, the assistant has to guess which one is right. Sometimes it guesses wrong. Sometimes it skips you.
Results also move around. Another BrightLocal finding, relayed on X, says only 20 to 33 percent of local AI results overlap when the same search is repeated. You can't control that churn. You can make sure every source that gets picked says the same thing.
Schema is one more place to state your facts. Its value is that it states them in a clean, labeled format that matches everything else. That's why this guide starts with your facts, not your code.
Step-by-step setup
Work in this order: facts first, code second, testing third.
Step 1: Lock one set of facts
Open your live Google Business Profile and copy these exactly. Do not work from memory.
- Business name, exactly as it appears on signage and the profile
- Address, or the fact that you hide it because you travel to customers
- Main phone number
- Regular hours
- Service areas
- Primary category
- Official profile URLs (Facebook, Yelp, LinkedIn and others)
Then check that Bing Places and Apple Maps say the same thing. If you haven't claimed Apple yet, see Apple Business Connect setup.
Step 2: Pick the most specific subtype
Google's guidance: "Use the most specific LocalBusiness sub-type possible." A plumber should use Plumber, a dentist Dentist, an accountant AccountingService. Match it to your primary Google category as closely as Schema.org allows. If nothing fits, LocalBusiness itself is fine.
Step 3: Write the JSON-LD
Here is a template for a service-area plumber. Every value is a placeholder. Replace all of it with your real facts.
{
"@context": "https://schema.org",
"@type": "Plumber",
"@id": "https://www.example.com/#business",
"name": "Example Plumbing Co",
"url": "https://www.example.com/",
"telephone": "+1-555-555-0100",
"address": {
"@type": "PostalAddress",
"addressLocality": "Anytown",
"addressRegion": "ST",
"addressCountry": "US"
},
"areaServed": [
{ "@type": "City", "name": "Anytown" },
{ "@type": "City", "name": "Lakeside" }
],
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": [
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday"
],
"opens": "08:00",
"closes": "17:00"
}
],
"sameAs": [
"https://www.facebook.com/example",
"https://www.yelp.com/biz/example"
]
}
Wrap it in a script tag with the type application/ld+json. What each property does:
- @type: your subtype from Step 2.
- @id: a stable label so other markup on your site can point to this business.
- name, url, telephone: must match the visible page and your profiles exactly.
- address: read Step 4 before you fill this in.
- areaServed: only the places you really serve.
- openingHoursSpecification: your regular hours, the same as your profile.
- sameAs: links to your official profiles on other sites. Don't point it at your own pages.
Step 4: Handle the address honestly
This is where most service-area businesses go wrong. Only name and address (PostalAddress) are mandatory for Google's local business markup, and testing tools may warn when the street line is missing.
| Your setup | Address in markup | Address on page |
|---|---|---|
| Storefront or office customers visit | Full street address, postal code | Same full address |
| Service-area business, address hidden on Google | City, state, country only | Service areas, no street |
| Both (shop plus service calls) | Full address, plus areaServed | Address and service areas |
If your Google profile hides your address, don't publish a street address in the markup to clear a warning. That would contradict your profile and your page. A warning is not an error. A contradiction is a real problem.
Step 5: Put it on a page people can read
Place the JSON-LD on the page that actually shows these facts, usually your home or contact page. Don't mark up content that is not visible to readers of the page. For example, if the JSON-LD markup describes a performer, the HTML body must describe that same performer.
If your hours are not on the page, either add them to the page or leave them out of the markup. The same goes for service areas.
Step 6: Test it
- Run the page through Google's Rich Results Test and fix any errors.
- Run it through the Schema Markup Validator for a general syntax check.
- Open your page and your Google profile side by side. Compare every field by eye.
- Do the same with Bing Places and Apple Maps.
A validator checks your code. It does not check whether your facts are right. Step 3 and 4 of this list matter more than the first two.
Step 7: Check crawler access
Open yourdomain.com/robots.txt. If OAI-SearchBot is blocked, ChatGPT search can't show you, whatever your schema says. A minimal allow rule looks like this:
User-agent: OAI-SearchBot
Allow: /
Also check that your firewall or CDN isn't blocking AI crawlers before they reach your site. Allowing a crawler makes you eligible. It doesn't make you appear.
Step 8: Keep it current
Google's guidelines say to provide up-to-date information. When you change your phone, hours or service area, update the profile, the page and the markup on the same day. Put a reminder on your calendar to recheck all three every quarter.
The mismatch checklist
The problems that hurt you are rarely syntax errors. They are two places saying different things. Check each row.
| Field | Must match | Common slip |
|---|---|---|
| Business name | Page, Google, Bing, Apple | Keywords added to one version |
| Phone | Page, profiles, directories | Old number left in markup |
| Hours | Page and Google profile | Holiday change in one place only |
| Street address | What your profile shows or hides | Hidden address published in code |
| Category | Subtype and primary category | Generic type, specific profile |
| Service areas | Where you actually work | Listing towns you don't serve |
| sameAs links | Live profiles you control | Dead or abandoned profiles |
If this list turns up several problems, fix the listings first. Your markup is only as good as the facts you feed it. The AI visibility audit checklist covers the wider review.
Schema mistakes that hurt trust
Marking up hidden content
Facts that only live in the code break Google's core rule. Put the fact on the page or take it out of the markup.
Self-serving review stars
Some guides suggest adding Review and AggregateRating markup to your own pages. Be careful. Google's review snippet documentation restricts self-serving reviews for local businesses and organizations. Its general policy also says don't mark up irrelevant or misleading content, such as fake reviews or content unrelated to the focus of a page. Earn reviews on Google, Yelp and industry sites instead. Never fake them.
Misrepresenting who you are
Google warns: Don't impersonate any person or organization, or misrepresent your ownership, affiliation, or primary purpose. That includes claiming locations you don't have.
Empty pages built to hold schema
Don't create blank or empty pages just to hold structured data. Thin "city pages" stuffed with markup fall into the same trap.
Stale facts
Old hours or an old phone number in the markup are worse than no markup. They send a conflicting signal.
Do you still need FAQ schema?
Probably not for a search feature. A secondary report says Google stopped showing FAQ rich results in Search in May 2026. FAQPage markup is not an AI Overview or AI Mode requirement. Check Google's current documentation yourself before you plan around it.
Clear FAQ answers written on the page still matter, because the page is what people and AI systems read. If you add FAQPage markup, its text must match the visible answers word for word.
What about llms.txt and other "AI files"?
Same story. Google's AI features page, quoted above, says you don't need AI text files to appear. Log data from Ahrefs, relayed on X, found 97% of valid llms.txt files got zero requests in May. One developer reported Claude fetching the file, so the picture is not unanimous. It is cheap to add, but don't expect it to move anything. More in llms.txt for small business.
Where schema fits in a bigger AI visibility plan
Schema is one line on a longer list. Based on the platform docs and the studies above, these usually matter more:
- Pages that answer the buyer's question. A clear service page that says what you do, where, and for whom, in plain text.
- Crawl access. OAI-SearchBot allowed, Bing indexing verified, nothing blocked at the firewall.
- Consistent listings. Google, Bing Places, Apple Maps, Yelp and the directories in your industry, all matching.
- Real reviews on third-party sites. Assistants read review platforms, not just your own site.
- Tracking each engine on its own. One study relayed on X found only 11% source overlap between ChatGPT and Perplexity.
If a competitor keeps getting named and you don't, read why ChatGPT recommends your competitor. To test where you stand today, see how to check if AI recommends your business. For the big picture, start with what AI search visibility is and GEO vs SEO for local businesses.
At Get Found with AI, structured data that matches the page is part of the work, next to listings, reviews and clear service content. You can see how it works and what's included. I can't promise any placement, citation or timeline. I'll tell you what I find and what I would fix first.
How I put this together
On October 22, 2026, I searched for "local business schema for ai search" in the US. The top result was a Shopify app listing, not an article, so I set it aside. These were the top three articles:
| Article | Strength | What's missing |
|---|---|---|
| Search Engine Journal | Broad schema types, clear steps | Old. Pushes review markup with no self-serving warning. |
| Local Falcon | Good list of what to mark up | No primary sources. No limits stated. |
| The Stacc | Exact topic, long and detailed | Unsourced per-platform schema claims. |
All three serve the same intent: a business owner who wants to know which schema to add for AI search. Search Engine Journal says AI tools prioritize structured data , without a source. Local Falcon lists reviews and FAQs as things to mark up, but doesn't separate what schema can do from what it can't. The Stacc's table assigns each AI platform a "schema priority," such as ChatGPT relying on Organization markup, with no documentation behind it. None of the three mention the Ahrefs controlled study, Google's statement that no special schema is needed, OpenAI's crawler rules, or how service-area businesses should handle a hidden address.
This guide adds those pieces. I checked claims against Google's, Bing's and OpenAI's own documentation, labeled vendor studies as vendor studies, flagged where reports disagree, and built everything around one idea: your schema should mirror facts that are already true everywhere else. More guides are on the blog.
Frequently asked questions
Is there a special schema type for AI Overviews, AI Mode or ChatGPT?
No. Google says structured data isn't required for generative AI search and there is no special schema.org markup to add. I found no public document from OpenAI, Anthropic, Perplexity or xAI that names a schema type for their answers. Use normal LocalBusiness markup that matches your visible page.
Should a service-area business put its street address in schema?
Not if your Google Business Profile hides it. Use city, state and country in the address and list the areas you serve in areaServed. Google says markup must be a true representation of the page, so do not publish an address your page and profile do not show.
Will adding LocalBusiness schema get my business into ChatGPT answers?
There is no evidence it will on its own. An Ahrefs vendor study found adding JSON-LD produced no meaningful citation lift in ChatGPT. What OpenAI does document is that sites blocking OAI-SearchBot will not be shown in ChatGPT search answers, so check crawler access first.
Which LocalBusiness properties should I include?
Start with @type (the most specific subtype), @id, name, url, telephone, address, areaServed, openingHoursSpecification and sameAs. Every value should match what your page shows and what your Google Business Profile and Bing Places listing say.
Can I mark up my own reviews with star ratings?
Skip it. Google restricts self-serving review markup for local businesses, and its general guidelines say not to mark up misleading content such as fake reviews. Earn reviews on Google, Yelp and other third-party sites instead.
Do I still need FAQ schema?
Probably not for a search feature. A secondary report says Google stopped showing FAQ rich results in May 2026. Clear FAQ answers written on the page for real people still matter. Markup is optional and must match the visible text.
Can you guarantee AI will recommend my business after I add schema?
No. I can't promise any placement, citation, recommendation or timeline, and neither can anyone else. Google, Bing and OpenAI all say their systems decide. Schema makes your facts clear and consistent. That is all it does.
Sources
- Google: Guide to optimizing for generative AI features on Google Search
- Google: General structured data guidelines
- Google: Introduction to structured data markup
- Google: Local business structured data
- Google: Review snippet structured data
- Google Rich Results Test
- Schema Markup Validator
- Schema.org: LocalBusiness
- Bing Webmaster Guidelines
- OpenAI: Overview of OpenAI crawlers
- GEO: Generative Engine Optimization (arXiv 2311.09735)
- vrid.ai: quoting Google's AI features and your website page (secondary)
- SEO Kreativ: Google's AI features guidance on matching visible text (secondary)
- Klarivo: quoting Bing's structured data line (secondary)
- Etavrian: Bing grounding optimization guidance (secondary)
- Search Engine Journal: Bing adds GEO to official guidelines
- DEV Community: LocalBusiness structured data, quoting Google (secondary)
- blckalpaca: LocalBusiness required properties (secondary)
- Report on the Ahrefs schema study (vendor study, secondary)
- Report on the Ahrefs schema study results (vendor study, secondary)
- Report on the Ahrefs 6 million URL correlation (vendor study, secondary)
- Critique of the Ahrefs schema study methodology
- Report on the searchVIU visible-HTML experiment (secondary)
- LLM Pulse: FAQ rich results change (secondary)
- Ahrefs (Tim Soulo on X): schema and AI citations (vendor study)
- BrightLocal local AI citations study, relayed on X (vendor study)
- BrightLocal repeat-search overlap finding, relayed on X (vendor study)
- Ahrefs llms.txt log data, relayed on X (vendor data)
- Evil Martians on X: Claude fetching llms.txt (anecdote)
- ChatGPT vs Perplexity source overlap, relayed on X
- Search Engine Journal: Local SEO schema guide (competitor)
- Local Falcon: Schema markup for local SEO in the AI era (competitor)
- The Stacc: Local business schema for AI search (competitor)
