AI Search · · 6 min read · By Mobilize Cloud
Schema markup is a small block of code that states facts about a page in a format machines can read without guessing: this is a business, here is its address, this is a product and it costs $24. For most small business and WordPress sites, five types cover nearly everything: Organization, LocalBusiness, Product, FAQPage and Article.
Before we go further, the honest part about schema markup and AI search. Google says plainly that there is "no special schema.org structured data that you need to add" to appear in its AI features, such as AI Overviews and AI Mode (see AI features and your website). Other AI companies haven't published how they use it. So schema isn't a secret AI ranking switch. What it does is make your key facts clear and consistent for any system that reads your pages, and it still powers rich results in regular Google Search. That's worth an afternoon.
How schema markup works, in one minute
Schema markup uses a shared vocabulary from schema.org. The most common way to add it is JSON-LD: a block of text inside a <script type="application/ld+json"> tag in your page's HTML. Visitors never see it. Search engines and other tools read it alongside your visible content.
One rule matters more than any other: the markup must match what's on the page. If your schema says you open at 8am and your contact page says 9am, you've created exactly the kind of conflicting information that leads to wrong answers. Our post on how AI assistants decide what to say about your business explains why consistency matters so much.
1. Organization: who you are
Organization markup describes your business as an entity: name, logo, website, contact details and your official profiles elsewhere. Google recommends putting it on your home page or your about page, and says there are no required properties: add the ones that apply (see Google's Organization guide).
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Harbor Dental",
"url": "https://harbordental.example",
"logo": "https://harbordental.example/images/logo.png",
"description": "Family dental practice in Dublin, Ohio.",
"telephone": "+1-614-555-0100",
"email": "[email protected]",
"sameAs": [
"https://www.facebook.com/harbordental",
"https://www.linkedin.com/company/harbordental"
]
}
The sameAs list is underrated. It ties your website to your other official profiles, which helps any system confirm that they're all the same business.
2. LocalBusiness: where and when
If customers visit you, or you visit them, LocalBusiness is the type that matters most. It's a more specific kind of Organization that adds an address, opening hours, a phone number and a price range. Google requires name and address, and recommends using the most specific subtype available (see Google's local business guide). Schema.org has subtypes such as Bakery, Dentist, Plumber and Restaurant, so use one if it fits.
{
"@context": "https://schema.org",
"@type": "Bakery",
"name": "Rosie's Bakery",
"url": "https://rosiesbakery.example",
"telephone": "+1-614-555-0123",
"priceRange": "$$",
"address": {
"@type": "PostalAddress",
"streetAddress": "12 Main Street",
"addressLocality": "Dublin",
"addressRegion": "OH",
"postalCode": "43017",
"addressCountry": "US"
},
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Tuesday", "Wednesday", "Thursday", "Friday"],
"opens": "07:00",
"closes": "17:00"
},
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Saturday", "Sunday"],
"opens": "08:00",
"closes": "14:00"
}
]
}
Keep this in step with your Google Business Profile. Name, address and phone number should be written the same way everywhere.
3. Product: what you sell
Product markup describes an item for sale: its name, image, description, price, currency and whether it's in stock. For Google's product snippets, you need the product name plus at least one of a review, an aggregate rating or an offer (price). Google also recommends pairing on-page markup with a Merchant Center feed if you sell online (see Google's Product guide).
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Sourdough Starter Kit",
"image": "https://rosiesbakery.example/images/starter-kit.jpg",
"description": "Live sourdough starter, flour and a printed guide.",
"sku": "RB-START-01",
"brand": { "@type": "Brand", "name": "Rosie's Bakery" },
"offers": {
"@type": "Offer",
"price": "24.00",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"url": "https://rosiesbakery.example/shop/starter-kit"
}
}
If you run WooCommerce or Shopify, your platform or SEO plugin probably adds Product markup already. Check it before adding your own, so you don't end up with two conflicting versions.
4. FAQPage: questions and answers
FAQPage markup labels a page of questions and answers. It needs a careful note. As of October 2026, Google no longer shows FAQ rich results in Search: it ended them in May 2026, and FAQ no longer appears in Google's list of supported structured data features. So don't add it expecting the expandable question boxes you may remember.
Why is it still on this list? Because the content underneath it is useful. Clear questions with short, direct answers are easy for anyone to quote accurately, and the markup labels which text is the question and which is the answer. No AI company has said it relies on FAQPage markup, so treat it as a low-cost extra, not a priority. If your plugin already outputs it, there's no reason to remove it.
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "Do you make gluten-free cakes?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Yes. We make gluten-free cakes to order with 7 days' notice. They are baked in a kitchen that also handles wheat."
}
}
]
}
Only mark up questions that are visible on the page, word for word.
5. Article: your posts and guides
Article markup (or its more specific forms BlogPosting and NewsArticle) describes a piece of writing: headline, author, image, and when it was published and last updated. Google lists no required properties but recommends author, dates, headline and image (see Google's Article guide).
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "How to keep sourdough starter alive on vacation",
"image": "https://rosiesbakery.example/images/starter-jar.jpg",
"datePublished": "2026-10-01T08:00:00-04:00",
"dateModified": "2026-10-20T09:30:00-04:00",
"author": {
"@type": "Person",
"name": "Rosie Alvarez",
"url": "https://rosiesbakery.example/about"
},
"publisher": { "@type": "Organization", "name": "Rosie's Bakery" }
}
The author and date fields are the useful part. They tell a reader, or a tool, who wrote the advice and how current it is.
Adding schema on WordPress
You rarely need to write JSON-LD by hand on WordPress. Yoast SEO, Rank Math and All in One SEO can all output Organization (or Person) markup from your site settings, plus basic markup for posts and pages, and each has options for local business and product data, though some of those sit in paid versions. We'll compare them in a later post. The steps are the same with any of them:
- Fill in your business name, logo and contact details in the plugin's site or knowledge graph settings.
- If you have a physical location or service area, set up the local business details.
- Check what your theme, page builder and other plugins already output, so you don't end up with duplicates.
- Test a few pages with Google's Rich Results Test or the Schema Markup Validator.
Our free AI readiness check also looks for Organization or LocalBusiness markup on your home page, along with crawler access, readable content and your sitemap. If you'd like a hand cleaning up schema across a WordPress site, our team at Mobilize Cloud does WordPress AI optimization.
Where llms.txt fits
Schema and llms.txt do different jobs. Schema labels facts on individual pages. llms.txt is a single file that summarizes your site and points to its most important pages. Neither replaces the other, and both are cheap to get right. If you don't have an llms.txt yet, the generator can write one in a couple of minutes.
Bottom line: start with Organization or LocalBusiness on your home page, add Product and Article where they apply, and treat FAQPage as optional. Keep every fact matching your visible content. It won't guarantee AI visibility, but it removes guesswork for every system that reads your site.
Is your llms.txt working?
Check any site for free and get plain-English fixes in seconds.