Back to glossary
Technical

JSON-LD (Linked Data)

JSON-LD (JavaScript Object Notation for Linked Data) is the preferred format for embedding structured data on web pages — a script block in the page head or body that describes entities, attributes, and relationships in a machine-readable way, enabling AI engines and search systems to parse content with precision rather than inference.

What is JSON-LD (Linked Data)?

JSON-LD is the implementation format that makes Schema.org markup work. While Schema.org defines the vocabulary — the types, properties, and relationships available for annotation — JSON-LD is the syntax that delivers that vocabulary to machines. It sits in a <script type="application/ld+json"> block, separate from the visible HTML, which means it can be added, modified, or templated independently of page layout and design. This separation is what makes JSON-LD the format Google officially recommends and the format AI retrieval systems are built to parse most reliably.

The reason JSON-LD matters specifically for AI visibility — beyond its general SEO value — is that AI engines retrieving pages through RAG (Retrieval-Augmented Generation) need to build entity understanding quickly and accurately from each retrieved page. When a page includes a JSON-LD block declaring that this is an Organization named X, founded in 2019, headquartered in Paris, operating in the AI visibility consulting category, with sameAs links to its LinkedIn, Crunchbase, and Wikipedia profiles, the AI engine can construct a confident entity representation in milliseconds. Without that structured declaration, the engine must infer all of these attributes from unstructured text — a process that is slower, less reliable, and more prone to entity confusion, especially for brands with common names or brands operating in crowded categories.

The most impactful JSON-LD implementations for AI visibility follow a layered approach. The foundation layer is Organization or LocalBusiness schema on the homepage and key landing pages — establishing the brand entity with name, description, founding date, founders, address, logo, social profiles (sameAs), and area served. The content layer adds Article schema to blog posts (with author, publisher, datePublished, and dateModified), FAQPage schema to FAQ sections (making Q&A pairs explicitly machine-readable), and Product or Service schema to commercial pages (with pricing, features, reviews, and availability). The authority layer connects the brand entity to external knowledge bases through sameAs links and to internal content through hasPart and isPartOf relationships. Each layer compounds: a page with clean JSON-LD across all three layers gives AI engines a richer, more trustworthy entity signal than a page with only one.

The practical implementation discipline matters as much as the schema itself. JSON-LD must be accurate — properties should reflect reality, not aspiration. A founding date that is wrong, a pricing tier that is outdated, or a sameAs link that points to a dead profile actively damages trust signals. JSON-LD should be validated through Google's Rich Results Test and Schema.org's validator, but validation only checks syntax, not semantic accuracy. The highest-value implementation practice is to treat JSON-LD as a living data layer maintained alongside the content it describes — updated when prices change, when team members join or leave, when new products launch, and when new authoritative profiles are created. Brands that implement JSON-LD once and forget it gradually accumulate inaccuracies that undermine the very entity confidence the markup was designed to build.

Why it matters

Key points about JSON-LD (Linked Data)

1

JSON-LD is the syntax that delivers Schema.org vocabulary to machines — a standalone script block parsed independently of HTML structure, which is why Google officially recommends it over Microdata and RDFa

2

AI engines retrieving pages through RAG use JSON-LD to build entity understanding in milliseconds — without it, they must infer attributes from unstructured text, which is slower, less reliable, and more prone to entity confusion

3

The highest-impact implementation follows three layers: Organization schema for brand entity, Article and FAQPage schema for content, and sameAs links for authority — each layer compounds the AI visibility signal

4

JSON-LD must be accurate and maintained as a living data layer — outdated prices, wrong founding dates, or dead sameAs links actively damage the entity confidence the markup is designed to build

5

Validation tools check syntax, not semantic accuracy — the real quality bar is whether every property reflects current reality, which requires treating JSON-LD maintenance as an ongoing operational discipline

Frequently asked questions about JSON-LD (Linked Data)

What is the difference between JSON-LD and Schema.org?
Schema.org is the vocabulary — it defines the types (Organization, Product, Article, FAQPage) and properties (name, foundingDate, price, author) available for structured data annotation. JSON-LD is the syntax — the format used to write that vocabulary into a machine-readable script block on a web page. You need both: Schema.org tells you what to say, JSON-LD tells you how to say it. Other syntaxes exist (Microdata, RDFa), but JSON-LD is the format Google recommends and AI retrieval systems parse most reliably.
Does JSON-LD directly affect what AI engines say about my brand?
For retrieval-augmented AI engines like Perplexity, Google AI Overviews, and ChatGPT with browsing — yes, directly. These systems fetch and parse live pages, and JSON-LD provides structured entity data they can consume immediately. For parametric responses (when ChatGPT or Claude answer from training data without browsing), the effect is indirect but real: JSON-LD on your pages during the training data crawl helped the model learn accurate entity associations. In both cases, accurate JSON-LD increases the probability that AI engines describe your brand correctly.
Which JSON-LD types have the most impact on AI visibility?
Organization is the foundation — it establishes your brand entity with sameAs links that connect to LinkedIn, Wikipedia, Crunchbase, and other authoritative profiles, strengthening entity disambiguation across AI systems. FAQPage is the highest-leverage content type because AI engines operate in a question-answer paradigm and FAQPage makes your Q&A pairs explicitly machine-readable. Article with author and publisher markup supports E-E-A-T signals. Product with reviews and pricing feeds commercial query responses. The combination of all four, accurately maintained, produces the strongest AI visibility signal.
How do I validate my JSON-LD implementation?
Use Google's Rich Results Test for search-specific validation and Schema.org's validator for structural correctness. But validation only checks syntax — a JSON-LD block can pass both validators while containing a wrong founding date, an outdated pricing tier, or a dead sameAs link. The real validation is semantic: does every property accurately reflect current reality? Schedule quarterly reviews of your JSON-LD alongside your content audits. Check that sameAs URLs resolve, that prices match current tiers, and that team member references are current. Automated syntax validation plus manual semantic review is the complete quality assurance approach.
Should I add JSON-LD to every page or only key pages?
Focus on pages that represent key entities and content assets: your homepage (Organization), service or product pages (Product/Service), blog articles (Article with author), FAQ pages (FAQPage), and team or about pages (Person). Adding minimal or boilerplate JSON-LD to every page dilutes the signal and increases maintenance burden without proportional benefit. Twenty pages with rich, accurate, maintained JSON-LD produce more AI visibility impact than two hundred pages with generic markup that gradually becomes inaccurate through neglect.
How long does it typically take Google to recognize and display rich results after I add JSON-LD?
Google can crawl and parse JSON-LD within hours of deployment, but rich results often appear in Search Console within 1–3 days if markup is valid and relevant to your content type. Full indexing and rich snippet display may take 1–2 weeks depending on your site's crawl budget and how frequently Google revisits your pages. Use Google Search Console's Rich Results test to verify parsing immediately, then monitor the Rich Results status report to track when impressions begin. Note: validation is necessary but not sufficient; Google also evaluates content quality and page authority before deciding to show rich results publicly.
What should I do if Google Search Console reports missing recommended fields in my JSON-LD?
Missing recommended fields mean your markup is valid but incomplete — Google can parse it, but you're leaving SEO value on the table. Review the Schema.org type definition for your content (Product, Article, LocalBusiness, etc.) and identify which recommended properties align with your actual page content. Add fields like image, datePublished, author, or aggregateRating if they apply truthfully to your entity. Do not fabricate data; Google penalizes false markup. Prioritize high-impact fields (image, price for products; author, datePublished for articles) before minor ones. Revalidate and resubmit to Search Console; rich results eligibility typically improves within days.
Why might my JSON-LD be valid but Google still isn't showing rich results for my pages?
Valid markup is a prerequisite, not a guarantee. Google evaluates markup quality, content relevance, and site authority before rendering rich results. Common causes include: markup doesn't match actual page content (e.g., price in JSON-LD differs from displayed price), insufficient page authority or E-E-A-T signals, content quality below Google's threshold for that type, or rich results not supported for your schema type on that SERP. Check Search Console's Rich Results report for specific rejection reasons. Ensure your JSON-LD reflects real page data, strengthen on-page content and backlinks, and verify your schema type is eligible for rich results in your market. Some types (FAQPage, HowTo) have stricter content requirements than others.
How is JSON-LD different from regular JSON, and why does that matter for SEO?
Regular JSON is a data format used to transmit or store information; it's inert unless an application is programmed to parse it. JSON-LD (JSON for Linking Data) adds semantic meaning — it uses the @context property to tell search engines and AI systems that the data follows a specific vocabulary (Schema.org) and describes real-world entities with explicit relationships. An AI engine or search bot can instantly recognize a person, product, or event without heuristic guessing. For SEO, this explicitness translates to more reliable rich snippets, knowledge graph eligibility, and AI visibility. Regular JSON on a page is ignored by crawlers; JSON-LD in a <script type="application/ld+json"> tag is indexed and used to enrich SERP displays and AI model training data.
When should I prioritize adding JSON-LD over other technical SEO improvements?
Prioritize JSON-LD after core Web Vitals, crawlability, and indexability are stable, but before link-building or content expansion. If your site has broken Core Web Vitals, XML sitemap issues, or robots.txt blocking, fix those first — markup won't help if pages aren't crawled or fast enough. Once technical foundations are solid, add JSON-LD to pages that drive revenue or traffic and are eligible for rich results: product pages, articles with byline/date, local business info, FAQs, and events. E-commerce sites should prioritize Product and AggregateRating schema; publishers should focus on Article and NewsArticle. A/B test rich result impact in Search Console (impression increase, CTR lift) to validate ROI before rolling out to lower-priority content. Quality markup beats comprehensive but superficial markup.
What are the key JSON-LD schema types I should implement for an e-commerce site?
E-commerce sites should prioritize Product, AggregateRating, and Offer schemas as baseline. Product markup (with name, image, description, SKU) enables product rich snippets and feeds AI training data for shopping queries. AggregateRating (ratingValue, ratingCount, reviewCount) drives star display in SERPs and builds trust. Offer defines price, availability, and currency, critical for price comparison and AI shopping agents. Add Organization schema to your homepage or footer for brand recognition. Use BreadcrumbList on category and product pages to improve navigation clarity in SERPs. If you have reviews, implement Review schema tied to Product. For inventory-driven commerce, include Offer with priceCurrency and availability properties. Validate each type in Search Console and monitor Rich Results reports to confirm eligible types are rendering.
What is a realistic benchmark for rich result impressions after implementing JSON-LD?
Benchmarks vary widely by industry, search volume, and site authority, but expect 5–15% CTR lift from rich results within the first month for eligible pages, and 15–40% within three months if markup is comprehensive and content quality is strong. Impression counts (raw SERP appearances with rich formatting) typically increase 10–30% because rich snippets occupy more vertical space and attract clicks. E-commerce sites with Product + AggregateRating often see faster gains (2–3 weeks); news and blog content may take longer (4–6 weeks) due to stricter eligibility filters. Monitor Google Search Console's Rich Results report weekly; baseline impression and CTR data before adding JSON-LD, then compare month-over-month. Low gains may signal incomplete markup, content misalignment, or low domain authority. Success also depends on competitive landscape; highly competitive queries may show fewer rich results.
How do I implement JSON-LD schema markup for a local business page?
Use LocalBusiness schema (or more specific subtypes: Restaurant, MedicalBusiness, RealEstateAgent, etc.) with required fields: name, address (PostalAddress with streetAddress, addressLocality, addressRegion, postalCode, addressCountry), telephone, and url. Add image (logo or storefront photo) and geo (GeoCoordinates with latitude and longitude) for map relevance. Include openingHoursSpecification (days and hours) if applicable; this feeds Google Business Profile and local pack visibility. Add aggregateRating if you have customer reviews. Place the JSON-LD in your <head> or before </body>. Ensure data matches your Google Business Profile exactly — mismatches can trigger manual actions or reduce local ranking. Use the Structured Data Testing Tool to validate. For multi-location businesses, use separate LocalBusiness JSON-LD per location, or use Organization with multiple location references. Mobile users benefit most from schema-powered local packs, so prioritize accuracy over completeness.

Want to measure your AI visibility?

Our AI Visibility Intelligence Platform analyzes your brand across ChatGPT, Perplexity, Gemini, Claude and Grok — and turns these concepts into actionable scores.