ServicesAI Audit
← Back to Blog

What Is JSON-LD Schema Markup and Why Does AI Search Need It?

JSON-LDschema markupAI searchstructured dataAI visibilityLLM SEOGEOChatGPT SEO

The difference between HTML and structured data

Most websites are built from HTML: headings, paragraphs, images, links. A human reads a page and instantly understands that a block of text is a product description, a price, or a business address. A search engine, on the other hand, has to guess. It reads the same raw HTML and tries to infer meaning from context clues and proximity of elements.

That guesswork has always been imperfect. But it mattered less when all search engines had to do was rank a list of ten blue links. Now, AI search engines like ChatGPT, Perplexity, and Google Gemini do something far more ambitious: they read your page, extract specific facts, and weave those facts into a direct answer they give to a user. There is no list of links. Either the AI understands your page well enough to reference it, or it doesn't mention you at all.

That's exactly where JSON-LD schema markup comes in.

What JSON-LD actually is

JSON-LD stands for JavaScript Object Notation for Linked Data. It is a format for adding structured data to a webpage, written as a small block of code that sits inside a <script> tag in your page's HTML. Unlike other structured data formats (Microdata and RDFa), JSON-LD is completely separate from the visible content of the page. You don't have to wrap individual words in special tags or rewrite your HTML. You write the structured data once, in its own block, and it does its job quietly in the background.

Here is a simple example of what a JSON-LD block looks like for a local business:

{
  "@context": "https://schema.org",
  "@type": "LocalBusiness",
  "name": "Acme Plumbing",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "12 King Street",
    "addressLocality": "Manchester",
    "postalCode": "M1 1AA",
    "addressCountry": "GB"
  },
  "telephone": "+44 161 000 0000",
  "openingHours": "Mo-Fr 08:00-18:00"
}

That block tells any machine reading the page: this is a local business, here is its name, its address, its phone number, its opening hours. No ambiguity. No guesswork.

The vocabulary used inside JSON-LD comes from Schema.org, a shared standard created jointly by Google, Bing, Yahoo, and Yandex back in 2011. Over the years, that vocabulary has grown to cover hundreds of entity types: products, reviews, articles, events, recipes, people, organisations, FAQs, and much more.

Why AI search engines rely on structured data

Traditional Google search crawls billions of pages and builds an index. Even without structured data, it can often figure out roughly what a page is about. AI search engines work differently. They don't just rank pages; they synthesise information and construct answers. To do that reliably, they need facts they can trust, and they need those facts to be unambiguous.

Think about what happens when a user asks Perplexity "What are the best running shoes for flat feet under £100?" Perplexity reads product pages, review articles, and comparison guides, then composes an answer. It might reference three or four products by name, price, and feature. If your product page has clear JSON-LD markup telling the AI: this product costs £89, it has a 4.7 star rating from 312 reviews, it is available in sizes 6 to 12, and it is currently in stock, then Perplexity has exactly what it needs to include you. If your page just has a big image and some marketing copy, the AI has to guess, and it probably won't bother.

This is the core mechanic. Structured data reduces the cognitive load for the AI. It presents facts in a format the machine can parse in milliseconds. Pages that are easy for AI to parse get referenced more often than pages that require heavy interpretation.

There's also a trust dimension. AI models are trained to be accurate. When a page's structured data matches its visible content consistently, it signals reliability. An AI model is more likely to cite a source that presents coherent, consistent information.

The most important schema types for AI visibility

Not all schema types carry equal weight for AI search. Here are the ones that matter most, and why.

Organisation and LocalBusiness

This is the foundation. Every business website should have an Organization or LocalBusiness schema block that declares your business name, URL, logo, contact details, and social profiles. This is what tells AI engines: here is an entity in the real world, here is how to identify it. Without this, the AI may not even be able to confidently attribute information to your business rather than a similarly named competitor.

Product and Offer

For e-commerce brands, Product schema is arguably the single highest-value implementation. It lets you specify name, description, SKU, brand, price, currency, availability, and aggregate rating. When Gemini or ChatGPT is constructing a buying recommendation, this data is exactly what it pulls. Many e-commerce sites lose out on AI-driven recommendations simply because their product data is buried in JavaScript or presented only in visual formats that machines struggle to parse cleanly.

FAQPage

FAQ schema marks up question-and-answer content so AI engines can extract it directly. This is particularly powerful because AI search is fundamentally a question-answering machine. If your page contains well-structured FAQs and you mark them up correctly, there is a much higher chance that an AI will lift that content when answering a relevant user query. It's one of the fastest wins available in AI visibility work.

Article and BlogPosting

For content marketing and editorial pages, Article or BlogPosting schema tells the AI who wrote the piece, when it was published, when it was last updated, and what the headline is. Freshness signals matter. An AI constructing an answer on a fast-moving topic will generally prefer a source it can verify as recently updated over one with no date signals at all.

Review and AggregateRating

Social proof matters to AI engines just as it matters to humans. AggregateRating schema lets you surface your star rating and review count directly in structured data. When an AI is comparing options and trying to recommend the best one, a clearly marked 4.8 out of 5 from 500 reviews is a meaningful signal.

Common mistakes that break schema markup

Getting JSON-LD wrong is remarkably easy, and broken schema can actually harm your credibility with both Google and AI engines. Here are the most common errors we see.

Mismatched data

Your structured data says your product costs £49, but the visible price on the page says £59. Google will flag this as a violation. More importantly, AI engines that cross-reference your structured data against your visible content will treat the discrepancy as a reliability issue. Always keep structured data in sync with what users actually see.

Using deprecated or wrong schema types

Schema.org evolves. Properties get deprecated, new types are added. Using outdated schema types means you're feeding the AI stale signals. This is more common than people realise, particularly on sites that implemented schema three or four years ago and haven't revisited it since.

Leaving required properties empty

Many schema types have recommended or required properties. A Product schema without a name or offers block is essentially useless. Incomplete schema is often worse than no schema, because it signals to machine readers that your data is unreliable.

Only marking up the homepage

This is extremely common. A business adds an Organization schema block to the homepage and considers the job done. But your product pages, category pages, blog posts, and service pages all need their own contextually relevant schema. An AI crawling your site needs structured signals throughout, not just at the front door.

How JSON-LD fits into a broader AI visibility strategy

Schema markup is a powerful foundation, but it's one layer of a larger picture. AI engines also look at your robots.txt file to understand what they're permitted to crawl, your site's overall content quality, your authority signals from external references, and increasingly, whether you've implemented newer files like llms.txt that are specifically designed to guide large language models.

At FlinnSchema, we treat JSON-LD implementation as step one of a structured process. It's the part that most businesses have either missed entirely or done badly, and fixing it tends to produce measurable improvements in AI citation rates within weeks rather than months. If you're not sure where your site currently stands, our free AI visibility audit is a practical starting point.

It's also worth understanding that schema markup doesn't just benefit AI search. Google's traditional search results still use structured data for rich results: star ratings, price information, FAQ dropdowns, and product panels in the Shopping tab. So the work compounds. Better structured data improves your visibility in classic Google, in AI Overviews, and in third-party AI engines simultaneously.

For a broader look at how this all connects, our post on what types of schema your business needs walks through the decision-making process in more detail, including how to prioritise schema implementation when you're working with limited development time.

If you want to understand how AI search differs from the traditional organic traffic you're used to, this post on the differences between AI search traffic and Google organic traffic is worth reading alongside this one.

And if you're already convinced but want to know what a realistic implementation timeline looks like, here's an honest breakdown of how long it takes to become visible in AI search.

Frequently Asked Questions

Do I need a developer to add JSON-LD schema markup to my site?

Not necessarily. If you're on Shopify or WordPress, there are plugins and apps that handle basic schema generation automatically. However, automated tools often produce generic or incomplete markup. For anything beyond the basics, particularly Product, FAQPage, or custom entity types, a developer or a specialist is usually needed to get it right. Badly implemented schema can do more harm than good, so it's worth getting it checked properly rather than assuming the plugin has handled everything correctly.

Will adding schema markup immediately improve my rankings?

Schema doesn't directly improve your position in traditional Google rankings in the way that backlinks or content quality do. What it does is make you eligible for rich results (star ratings, FAQ dropdowns, product panels) in Google, and increases the likelihood that AI engines cite your content in their answers. The effect on AI citation rates can be faster than people expect, often visible within a few weeks of implementation, but it depends heavily on how competitive your niche is and how much content authority your site already has.

Is JSON-LD better than Microdata or RDFa for structured data?

Yes, in almost every practical situation. Google explicitly recommends JSON-LD as the preferred format. It's easier to implement, easier to maintain, and doesn't require any changes to your visible HTML. Microdata and RDFa are woven into the markup of the page itself, which makes them harder to update and more prone to errors. If you're implementing structured data from scratch, use JSON-LD.

How do I check if my schema markup is working correctly?

Google's Rich Results Test (search for it in Google) lets you paste a URL or code snippet and see what structured data Google can detect, along with any errors or warnings. The Schema Markup Validator at validator.schema.org does a similar job but without the Google-specific rich result eligibility check. Both tools are free and take about thirty seconds to run. We recommend checking all key page types after any implementation, not just the homepage.

Want to check your AI visibility?

Run a free audit on your website and see how visible you are to ChatGPT, Perplexity, and other AI search engines.

Run Free Audit