Skip to content

Glossary Schema.org

What Is Schema.org? Vocabulary and JSON-LD Explained

Definition

Schema.org is the standardized vocabulary that Google, Bing, Yahoo and Yandex jointly maintain to describe page content through structured data. It is not a code format; it is a shared dictionary of types and properties that gets embedded into HTML afterward through JSON-LD, Microdata or RDFa.

A standardised metal coupling on the end of a hose — beside the title Schema.org
The coupling is standard; the hose you bring is not
On this page 5
  1. Vocabulary vs. JSON-LD: two things that get confused
  2. The schema types that matter most for a typical business
  3. Is Schema.org a ranking factor?
  4. Best practices
  5. Common mistakes
In brief

Schema.org defines WHAT to describe, a product, a company, a recipe. JSON-LD defines HOW to embed it in the code, and it is the format Google has recommended since 2015. Correct markup does not improve rankings on its own, but it is the technical requirement for Google to be able to show rich results and for generative AI systems to read a page more reliably. The most common mistake is treating the two as synonyms: a syntactically perfect JSON-LD block that uses a Schema.org type that does not exist is still useless.

A standardised metal coupling on the end of a hose — beside the title Schema.org
The coupling is standard; the hose you bring is not

Vocabulary vs. JSON-LD: two things that get confused

Two concepts often get mixed up, even though they solve different problems. Schema.org is the vocabulary: a public collection of types (Product, Article, Organization, Recipe) and properties (name, price, author, datePublished) that Google, Bing, Yahoo and Yandex founded in 2011 and have maintained jointly ever since. The project exists precisely because of a problem that came before it: before 2011 each search engine pushed its own markup system, with scattered microformats and RDFa, and anyone publishing a website had to duplicate the same data in several formats to cover every search engine. That vocabulary defines what can be described on a page and under which labels, but it says nothing about how to write the code. JSON-LD, Microdata and RDFa are the three formats used to translate that vocabulary into HTML. JSON-LD (JavaScript Object Notation for Linked Data) is now the format Google recommends for most cases: it lives in a separate <script type="application/ld+json"> block, without touching the page's visible HTML. Microdata, by contrast, requires attributes (itemscope, itemprop) directly on existing tags, which complicates maintenance whenever the design changes. The practical consequence is this: two pages can use the exact same Schema.org vocabulary, the same Product type and the same properties, and differ only in the format chosen to include it. Google processes all three formats, but its Search Central documentation prioritizes JSON-LD because it is easier to generate dynamically from a CMS and to validate without risking the visible layout. An example makes the difference concrete. The Organization type, with the properties name, url and logo, is the same vocabulary on any page that uses it. Its JSON-LD implementation looks like this:
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "Company name",
  "url": "https://example.com",
  "logo": "https://example.com/logo.png"
}
</script>
The same information in Microdata requires spreading those same attributes across several visible HTML tags, which in dynamic templates produces more syntax errors than a single JSON-LD block kept separate from the rest of the code. See JSON-LD and Structured Data for the technical detail of each format.

The schema types that matter most for a typical business

A typical business, an online store, a consultancy, a law firm, does not need to implement all 800-plus types Schema.org offers. Six of them, applied correctly, cover most cases.

Organization identifies the company as an entity: legal name, logo, social profiles and contact details. It is the base type Google uses to build the Knowledge Panel.

Product describes items for sale: price, availability, reviews. It is what enables star ratings and price to show directly in search results.

FAQPage marks up questions and answers that are visible on the page. Google uses it, when it does, to display the collapsible content under the result, though since 2023 it has limited this mostly to government and health sites in most markets.

Article applies to editorial content: publish date, author, featured image. It matters both for Google Discover and for generative AI systems to attribute the source correctly.

LocalBusiness extends Organization with hours, address and service area. It is the type that connects the website to the Google Business Profile listing.

BreadcrumbList mirrors the navigation path (Home > Category > Product) and is what generates the visible breadcrumb trail in the search result instead of the full URL.

These types are not mutually exclusive. A well-built product page can combine Product, BreadcrumbList and Organization in the same JSON-LD block using the @graph property, so Google gets all the relevant information for that URL in a single call instead of repeating the context for each type separately.

Is Schema.org a ranking factor?

No. Google has confirmed this repeatedly in its documentation: adding structured data does not directly improve a page's ranking position. What it does is enable eligibility for additional visual features, rich results, that can improve click-through rate by taking up more space in the SERP or by showing extra information such as star ratings, price or prep time.

The key word is eligibility, not guarantee. Following the correct syntax and guidelines for a given type does not force Google to display the corresponding rich result; that decision depends on an additional content-quality process, the page's authority and whether that feature is available in the user's market and device. It is common to implement FAQPage or Product markup correctly and never see the rich result, while a similar page does get it.

Search Console offers a way to check this with real data: the report for each rich result type, for example "Product snippets" or "FAQ", shows how many pages carry valid markup versus how many of those actually get the visual feature in search results. It is common to see one hundred percent valid markup and, even so, only a fraction of those URLs showing the rich result, precisely because eligibility does not mean guaranteed display.

Where Schema.org's role is genuinely growing is in GEO (Generative Engine Optimization). Generative AI systems, ChatGPT, Perplexity, Google's AI Overviews, need to extract concrete facts (price, author, date, location) from web pages to build their answers. Free-flowing text forces the model to infer those facts from context; a JSON-LD block hands them over already labeled and unambiguous. There is no public evidence that these systems prioritize marked-up content over plain text, but it does reduce the margin of error when citing figures or product attributes. See GEO for how to optimize content for these systems, and Rich Results and Featured Snippet for the specific features markup can enable in traditional search engines.

Best practices

  • Use JSON-LD as the default format: it is what Google prioritizes and the easiest to maintain from a CMS.
  • Validate every page with Google's Rich Results Test, not just a generic syntax validator.
  • Only mark up what users can actually see. If the price in the JSON-LD does not match the visible price, Google can ignore or penalize the markup.
  • Update the schema whenever the content changes: a sold-out product still marked "InStock" in the JSON-LD erodes trust and can get the rich result pulled.
  • Choose the most specific type available: Recipe instead of CreativeWork for a recipe, LocalBusiness instead of Organization for a business with a physical location.
  • Combine several types when it makes sense: a product page can carry both Product and BreadcrumbList without conflict between them.
  • Version the markup the same way as the rest of the code: a JSON-LD block forgotten during the next relaunch can show stale prices or authors for months.

Common mistakes

  • Marking up data that is missing from the visible content: reviews, prices or availability that only exist in the JSON-LD. Google classifies this as structured data spam and can apply a manual action.
  • Copying JSON-LD from a template or a competitor without adapting the values: brand names or URLs that do not match the current page.
  • Leaving required fields empty or filled with placeholders ("Lorem ipsum", price 0), which the Rich Results Test does not always flag as a critical error.
  • Stacking the same type twice on the same page with different values, which creates ambiguity about which one is correct.
  • Adding FAQPage or HowTo markup and expecting the corresponding rich result without first checking whether Google still shows that feature in the page's market and category.
Manuel Riveiro Rodriguez CEO & Digital Strategist

A technical audit covers this and everything else in one pass.

Request an audit

Frequently asked

Do I have to use JSON-LD, or can I use Microdata?

Not necessarily. Google processes all three formats, JSON-LD, Microdata and RDFa, as long as the syntax is correct. JSON-LD is recommended because it separates the markup from the visible HTML and reduces errors when the template gets updated, but a site with well-implemented Microdata does not lose rich result eligibility because of it.

Does adding Schema.org guarantee a rich result will appear?

No. Correct markup makes the page eligible, not selected. The final decision depends on additional quality factors and on whether that feature is available in the user's market, something Google neither controls nor guarantees in its official documentation.

What is the difference between Schema.org and structured data?

Structured data is the general term for any information organized in a machine-readable format. Schema.org is the specific vocabulary, the set of types and properties most commonly used to produce that structured data on the web.

How do I check whether my site's markup is correct?

With Google's Rich Results Test (search.google.com/test/rich-results), which validates syntax and shows which features are eligible for that URL. The Structured Data report in Search Console complements that test with real crawl data.

Does Schema.org also help with generative AI, not just Google?

Yes. Being an open vocabulary, any system that crawls the web, including ChatGPT's or Perplexity's crawlers, can read the same JSON-LD block. There is no public confirmation that these systems prioritize marked-up content over plain text, but it makes it easier for them to extract concrete data without ambiguity.

Does Schema.org markup affect Google Discover or AI Overviews?

Indirectly. Article and its properties (author, date, image) help Google identify editorial content more reliably for Discover, and the same well-labeled data makes it easier for AI Overviews to cite the source accurately. Markup alone never guarantees appearing in either feature.

Why is Schema.org described as belonging to Google, Bing, Yahoo and Yandex, not just Google?

Because that is how it was founded: in 2011 the four search engines agreed on a shared vocabulary instead of each maintaining its own. In practice, Google publishes the most documentation and testing tools around it, which is why the project gets associated almost exclusively with Google, even though maintenance of the vocabulary is still shared through the nonprofit organization that governs it.