Structured Data for AI Search: JSON-LD Schema Examples
Copy-paste JSON-LD for Organization, LocalBusiness, Article and Product schema, what Google actually uses it for, and what it can and cannot do for AI search.
By freeseobot Editorial · Published · 6 min read
Structured data is code that labels the facts on your page, such as your business name, address, opening hours, prices or author, so machines do not have to guess. For Google it does two jobs: it makes pages eligible for rich results (stars, prices, business details in search), and it helps Google understand your content. It is not required to appear in Google's AI Overviews or AI Mode, and Google says there is no special AI schema. It is still worth adding the four types below, because they state your key facts unambiguously.
What is JSON-LD and why use it?
Schema.org is a shared vocabulary of types (Organization, Product, Article) and properties (name, price, author) supported by the major search engines. You can add it in three formats: JSON-LD, Microdata and RDFa. Google says all three are fine if valid, and recommends JSON-LD where your setup allows it.
JSON-LD is a block of code in a <script> tag, separate from your visible HTML, so you can add or edit it without touching the page layout:
<script type="application/ld+json">
{ "@context": "https://schema.org", "@type": "Organization", "name": "Example Ltd" }
</script>
Does structured data help with AI search?
Here is what is documented, and what is not:
| Platform | What the provider says about structured data |
|---|---|
| Google AI Overviews and AI Mode | Not required; "no special schema.org structured data" needed. Google still recommends it for rich results eligibility |
| Google Search generally | Used to understand content and power rich results; must match visible content |
| ChatGPT, Claude, Perplexity | Their crawler documentation does not say whether or how schema is used |
So the honest answer: structured data is a solid SEO practice that makes your facts machine-readable, but no provider promises AI citations for it. Our guide to GEO and AI citations covers what does move the needle.
The rules Google applies to all structured data
- Mark up what is visible. Google's structured data policies require the markup to represent the main content of the page and not describe content hidden from users.
- Be accurate and current. Wrong prices or opening hours can make you ineligible for rich results.
- Valid markup is not a guarantee. Google may still choose not to show a rich result.
Organization schema
Put this on your home page or About page. Google has no required properties for Organization, but recommends identity details such as name, url, logo and sameAs (links to your official profiles elsewhere).
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Hartley Heating Ltd",
"alternateName": "Hartley Heating",
"url": "https://www.hartleyheating.example",
"logo": "https://www.hartleyheating.example/images/logo.png",
"description": "Gas Safe registered boiler installation and servicing in Leeds.",
"telephone": "+44 113 496 0000",
"email": "hello@hartleyheating.example",
"sameAs": [
"https://www.facebook.com/hartleyheating.example",
"https://www.linkedin.com/company/hartleyheating-example"
]
}
LocalBusiness schema
For any business with a physical location customers visit, or a defined service area. Google requires name and address, recommends telephone, url, geo, openingHoursSpecification and priceRange, and advises using the most specific subtype, such as Plumber, Dentist or Restaurant, instead of plain LocalBusiness.
{
"@context": "https://schema.org",
"@type": "Plumber",
"name": "Hartley Heating",
"url": "https://www.hartleyheating.example",
"telephone": "+44 113 496 0000",
"priceRange": "££",
"address": {
"@type": "PostalAddress",
"streetAddress": "12 Canal Street",
"addressLocality": "Leeds",
"postalCode": "LS1 4AB",
"addressCountry": "GB"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": 53.79648,
"longitude": -1.54785
},
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
"opens": "08:00",
"closes": "18:00"
},
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": "Saturday",
"opens": "09:00",
"closes": "13:00"
}
]
}
Google asks for latitude and longitude to at least five decimal places. Keep these details identical to your Google Business Profile.
Article schema
For blog posts and news. Google has no required Article properties; it recommends headline, image, datePublished, dateModified and author. Use BlogPosting or NewsArticle where they fit.
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "How Often Should You Service a Combi Boiler?",
"image": [
"https://www.hartleyheating.example/images/combi-16x9.jpg",
"https://www.hartleyheating.example/images/combi-4x3.jpg",
"https://www.hartleyheating.example/images/combi-1x1.jpg"
],
"datePublished": "2026-10-01T09:00:00+01:00",
"dateModified": "2026-10-10T14:30:00+01:00",
"author": {
"@type": "Person",
"name": "Sam Hartley",
"url": "https://www.hartleyheating.example/about/sam-hartley"
},
"publisher": {
"@type": "Organization",
"name": "Hartley Heating",
"url": "https://www.hartleyheating.example"
}
}
Google's author guidance: use Person for people, put only the name in name, give each author a url or sameAs, and list every author shown on the page. Include a timezone in dates.
Product schema
There are two flavours. Merchant listing markup is for pages where people can buy the product from you. Product snippet markup suits review or comparison pages. For product snippets Google requires name plus at least one of offers, review or aggregateRating.
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Smart Thermostat T3",
"image": "https://www.hartleyheating.example/images/t3.jpg",
"description": "Wi-Fi smart thermostat compatible with most combi boilers.",
"sku": "T3-WHITE",
"brand": { "@type": "Brand", "name": "ThermoCo" },
"offers": {
"@type": "Offer",
"url": "https://www.hartleyheating.example/shop/t3",
"price": 149.00,
"priceCurrency": "GBP",
"availability": "https://schema.org/InStock"
}
}
Only add aggregateRating or review if those reviews are genuinely shown on the page. Google added a review snippet guideline about fake and undisclosed incentivised reviews in July 2026.
Which schema types no longer produce rich results?
| Type | Status |
|---|---|
| FAQPage | Restricted to authoritative government and health sites in August 2023; no longer shown in Google Search at all from 7 May 2026 |
| HowTo | Rich results removed from mobile in August 2023 and from desktop in September 2023 |
Google has said unused markup does not cause problems, so you do not need to rip it out. Just do not expect it to produce anything in Google results.
How to test your markup
- Paste the URL or code into Google's Rich Results Test to see which rich results the page is eligible for and any errors.
- Use the Schema Markup Validator (validator.schema.org) to check general schema.org validity, including types Google does not use for rich results.
- After publishing, watch the rich result reports under Enhancements in Search Console.
Our SEO checker also detects the JSON-LD on a page and lists the types it found. If you are wondering whether an llms.txt file does a similar job for AI tools, see llms.txt explained.
FAQ
Do I need structured data to appear in AI Overviews?
No. Google states that there is no special schema.org structured data you need to add for AI Overviews or AI Mode. Pages need to be indexed and eligible to show a snippet.
Can I use more than one schema type on a page?
Yes. A home page might carry both Organization and LocalBusiness, or you can describe a business as an Organization that is also a LocalBusiness subtype. Keep each block accurate to what that page shows.
Should I still add FAQ schema?
Not for Google rich results: Google stopped showing FAQ rich results on 7 May 2026. Writing genuine FAQs on the page is still useful for readers, and existing markup does no harm.
Does a WordPress SEO plugin handle this for me?
Most popular SEO plugins output Organization and Article markup automatically. Check what they generate with the Rich Results Test, and fill in the details they cannot know, such as opening hours, price range and social profiles.
Sources
- Google Search Central, Introduction to structured data: https://developers.google.com/search/docs/appearance/structured-data/intro-structured-data
- Google Search Central, General structured data guidelines: https://developers.google.com/search/docs/appearance/structured-data/sd-policies
- Google Search Central, Organization structured data: https://developers.google.com/search/docs/appearance/structured-data/organization
- Google Search Central, Local business structured data: https://developers.google.com/search/docs/appearance/structured-data/local-business
- Google Search Central, Article structured data: https://developers.google.com/search/docs/appearance/structured-data/article
- Google Search Central, Product snippet structured data: https://developers.google.com/search/docs/appearance/structured-data/product-snippet
- Google Search Central, Merchant listing structured data: https://developers.google.com/search/docs/appearance/structured-data/merchant-listing
- Google Search Central Blog, Changes to HowTo and FAQ rich results: https://developers.google.com/search/blog/2023/08/howto-faq-changes
- Google Search Central, Latest documentation updates: https://developers.google.com/search/updates
- Google Search Central, AI features and your website: https://developers.google.com/search/docs/appearance/ai-features
- Schema.org: https://schema.org/LocalBusiness