Schema Markup

Schema markup is code using the schema.org vocabulary that labels what your content means so search engines can understand it and show rich results.

First published: Jun 26, 2026 · Last updated: Jul 18, 2026 · Advanced
demand #1 in Structured Data#2 in On-Page#17 in Technical SEO#25 on the site

Schema markup is code that uses the schema.org vocabulary to label what your content means, so search engines can understand it and make your pages eligible for rich results (review stars, product prices, breadcrumbs). It's not a direct ranking factor — Google has said this repeatedly — and 'schema markup' (the vocabulary) shouldn't be conflated with 'JSON-LD' (the format you write it in). All three formats work; JSON-LD is the recommended choice. The big trap is wasting dev time on deprecated types: HowTo rich results went away in 2023, seven feature types were retired in June 2025, and FAQ rich results were deprecated in 2026. My rule, borrowed from years of doing this at scale: implement schema when it gets you a search feature, or when it genuinely helps an engine identify your entity (Organization/Person with sameAs) — not because more markup is automatically better.

TL;DR — Schema markupSchema markup is code that uses the schema.org vocabulary to label what your content means so search engines can understand it and show rich results. It's most often written in JSON-LD, and it's not a direct ranking factor. applies the schema.org vocabulary (a Google / Microsoft / Yahoo / Yandex collaboration) to label a page’s meaning. It does two distinct jobs: rich-result eligibility (visible SERP enhancements, requires specific types + all required properties) and entity understanding (helps engines and the Knowledge GraphThe Knowledge Graph is Google's database of entities — people, places, organizations, and things — and the factual relationships between them. It's separate from any single website's structured data: your schema markup is one of many possible inputs to the graph, not the graph itself. identify who/what you are — Organization / Person + sameAs — with no visible signal). It’s not a direct ranking factor. Don’t conflate the vocabulary (schema markup) with the format (JSON-LDJSON-LD (JavaScript Object Notation for Linked Data) is a script-based structured data format, typically paired with the schema.org vocabulary to describe page content for search engines and AI systems. Google recommends it over Microdata and RDFa because it's the easiest format to implement and maintain at scale — but all three work, and structured data isn't a ranking signal. — recommended, but Microdata and RDFa also work). And watch the deprecation cycle: HowTo rich resultsRich results (formerly 'rich snippets') are enhanced search listings — stars, images, prices, breadcrumbs, video thumbnails, and more — that Google and Bing build from structured data. They're a display feature, not a ranking factor, and eligibility never guarantees they'll show. went in 2023, seven feature types were retired June 2025, and FAQ rich resultsRich results (formerly 'rich snippets') are enhanced search listings — stars, images, prices, breadcrumbs, video thumbnails, and more — that Google and Bing build from structured data. They're a display feature, not a ranking factor, and eligibility never guarantees they'll show. were deprecated in 2026. My rule: implement schema when it earns a search feature or genuinely helps entity understanding — not because more markup is automatically better.

Schema markup vs. structured data vs. JSON-LD

Three terms get muddled constantly, so let me separate them cleanly:

  • Structured dataStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding. is the general concept: any standardized way of annotating content so machines understand it.
  • Schema markup is structured data that uses the schema.org vocabulary specifically. In practice these two are used interchangeably.
  • JSON-LDJSON-LD (JavaScript Object Notation for Linked Data) is a script-based structured data format, typically paired with the schema.org vocabulary to describe page content for search engines and AI systems. Google recommends it over Microdata and RDFa because it's the easiest format to implement and maintain at scale — but all three work, and structured data isn't a ranking signal. is a format — one of three ways to write the markup. It is not a synonym for schema markup. You can express the same schema.org types in JSON-LD, Microdata, or RDFa.

Keeping the vocabulary (schema.org) separate from the format (JSON-LD) is the first thing that trips people up. The vocabulary is what you say; the format is how you write it.

What schema.org actually is

schema.org is a shared vocabulary launched in 2011 and maintained collaboratively by Google, Microsoft (Bing), Yahoo, and Yandex. It defines a hierarchy of types (e.g., ThingCreativeWorkArticleNewsArticle) and the properties each type can carry. The search engines agree on the vocabulary, then each decides independently which types it consumes and which it turns into rich results. That last point matters: schema.org lists far more types than any single engine surfaces. Evidence for this claim A property can be valid in Schema.org without being required, recommended, or consumed for a specific Google rich result. Scope: Schema.org vocabulary compared with Google Search feature requirements. Confidence: high · Verified: Google: Structured data feature guide

The two jobs schema does (and why people only think about one)

Most guides treat schema as a rich-results lever and stop there. It actually does two separate things:

  1. Rich-result eligibility. Mark up content with a supported type and all its required properties, and your listing becomes eligible for a visible SERP enhancement (stars, price, breadcrumbsBreadcrumbs are a secondary navigation trail (Home > Category > Page) that shows where a page sits in a site's hierarchy. They create internal links that pass PageRank, and when marked up with BreadcrumbList structured data they can drive the path Google shows in desktop search results., recipe card). This is the part everyone chases.

  2. Content and entity understanding. Google states it uses structured data “to understand the content of the page, as well as to gather information about the web and the world in general.” Organization, Person, and similar types — especially with sameAs pointing at authoritative profiles — help engines confidently identify which entity a page is about and feed the Knowledge Graph. There’s no visible badge for this; the benefit is comprehension.

The practical consequence: a type that produces no rich result can still be worth marking up if it sharpens entity understanding. Organization is the classic example.

The formats: JSON-LD, Microdata, RDFa

All three are supported by Google. JSON-LD is the recommended choice, and the reasons are concrete:

  • It lives in a <script type="application/ld+json"> block, not interleaved with your HTML, which makes nested data far easier to express and to maintain as templates change.
  • Google can read JSON-LD even when it’s dynamically injected by JavaScript or a CMSA content management system (CMS) is software that lets users create, manage, and publish digital content — like blog posts and pages — without writing raw code. WordPress, Drupal, and Joomla are the most common open-source CMS platforms. widget — that’s Google’s own documented behavior, not a universal renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM. guarantee. Other search engines and AI crawlersAI crawlers are bots from AI companies that fetch web pages to train language models, build AI-search indexes, or answer live user questions. They come in three categories, each with its own user-agent tokens and its own robots.txt controls. may render (or fail to render) injected JSON-LD differently, so test each consumer you actually care about instead of assuming parity.

Microdata and RDFa are inline attributes woven into your HTML markup. They are not penalized or parsed worse — that’s a myth. They’re just harder to maintain. Use them only when a legacy CMS or a specific platform forces inline markup.

Schema is not a ranking factor

This is the single most important correction in the topic. Google reps have been unambiguous and consistent for years — see the Quotes lens for the exact statements. Danny Sullivan has called structured data “optional” with “no impact on ranking in web search.” The benefit is indirect: rich results can lift click-through rate, and better entity understanding can make relevance matching easier. Neither is a ranking boost from the markup itself.

This is exactly why my own framing has always been pragmatic. In my Ahrefs enterprise SEO guide I put it this way: “I’m a fan of schema markup as long as it gets you a search feature.” Translation: prioritize types with confirmed rich-result eligibility (or clear entity value), and don’t spray markup across every page hoping it does something.

The most useful schema types in 2026

Google’s search gallery is the source of truth for what currently produces rich results. The types worth your time, roughly in order of how commonly they pay off:

  • Product — price, availability, and review ratings; the highest-value type for ecommerce.
  • Review snippetReview schema (schema.org/Review) is structured data for a single critic's or user's evaluation of one specific thing — one author, one itemReviewed, one reviewRating — distinct from AggregateRating, which summarizes many reviews into an average. / AggregateRating — star ratings on the eligible content.
  • BreadcrumbList — the breadcrumb trail in place of a raw URL.
  • Article (news/blog/sports) — eligible for article-enhanced display. Top Stories is a separate, more restrictive surface with its own publisher and content-policy requirements; Article markupArticle schema (Article, NewsArticle, or BlogPosting) is structured data marking up a written piece's headline, author, and dates — Google labels it the \"Article rich result,\" but it's a better-displayed existing result, not a distinct new card, and it isn't required for Top Stories or Discover eligibility. is necessary but doesn’t by itself put a page there.
  • Organization — entity establishment. It can feed the logo/details Google shows in panels, but valid markup doesn’t guarantee a Knowledge PanelThe Knowledge Graph is Google's database of entities — people, places, organizations, and things — and the factual relationships between them. It's separate from any single website's structured data: your schema markup is one of many possible inputs to the graph, not the graph itself. appears — entity understanding is the reliable part, even where no panel or rich result shows.
  • LocalBusiness — local panel details, hours, and contact info.
  • Event, Recipe, Job posting, Video (VideoObject), Q&A, Software app, Dataset, Discussion forum, Course list — each maps to a specific gallery feature.

If you implement nothing else, Organization, BreadcrumbList, and (for the relevant business) Product or LocalBusiness cover the highest-leverage cases.

The deprecation wave — stop implementing dead types

The supported set genuinely changes, and chasing retired features is the most common way to waste dev time. The recent history:

  • 2023 — HowTo rich results removed from desktop and mobile. Still recommended in countless outdated guides; it earns nothing now.
  • June 2025 — seven feature types retired: Book Actions, Course Info (old format, replaced by Course list), Claim Review, Estimated Salary, Learning Video, Special Announcement, and Vehicle Listing.
  • 2026 — FAQ rich results deprecated. The expandable Q&A under listings stopped appearing for most sites. FAQPage schema is still valid and Google still parses it for understanding — but the visual enhancement that made everyone implement it is gone.

John Mueller’s framing on the 2026 round is the right one: “Google is not killing schema… markup types come and go, but a precious few you should hold on to.” The takeaway isn’t “schema is dying” — it’s “implement against the current gallery, not a 2021 tutorial.”

TIP Check feature support before you build

Before investing in markup for a search enhancement, check whether Google still supports the feature with my free Rich-Result Eligibility Checker Free

  1. Paste the page, HTML, or JSON-LD you intend to ship.
  2. Separate valid schema vocabulary from eligibility for a current Google search feature.
  3. Confirm time-sensitive support decisions against the dated documentation linked in the result.
A valid schema type can outlive its search feature. This result flags HowTo as deprecated rather than calling the markup invalid.

The completed result is labeled HowTo and Deprecated. It states that HowTo rich results were removed from Google Search and that the markup no longer produces a rich result on any site.

Entity markup and the Knowledge Graph

Beyond rich results, schema is how you help an engine disambiguate your entity — to be sure your “Apple” is the company, not the fruit, and that your author is a specific real person. The mechanism is the sameAs property: you point your Organization or Person markup at authoritative identifiers — Wikipedia, Wikidata, LinkedIn, Crunchbase, official social profiles.

Done right, this feeds the Knowledge Graph and strengthens how confidently search engines (and, downstream, AI systems) recognize you. Done carelessly, it backfires: a sameAs pointing at the wrong Wikipedia page or a different company’s profile can cause an engine to conflate unrelated entities. Test your sameAs values as carefully as you’d test a canonical.

Schema and AI search — the right expectation

Schema is often sold as an AI-citation lever. It isn’t, directly. LLMs don’t reliably parse your JSON-LD and reward you with citations — a large study found no significant lift in AI citationsAn AI citation is the visible source link an AI answer engine shows next to its generated text — the clickable reference that credits the web page it used. A citation's presence is a separate thing from whether the cited page actually supports the statement, and from being retrieved (read behind the scenes) or merely mentioned (named without a link); citation is driven more by brand mentions and being retrievable than by traditional ranking. from schema coverage. What schema does is the same entity-understanding job described above, and even that comes with a caveat: Google documents that Organization/Person + sameAs feed its own Knowledge Graph and search understanding. Whether — and how much — other AI providers lean on that same entity signal is a provider-specific question, not something any vendor has documented as guaranteed; treat a cross-provider AI-citation benefit as an unverified hypothesis, not an implementation benefit schema delivers on its own. Think of it as entity infrastructure for Google’s own systems, not a universal citation switch. I cover that angle in depth in Schema Markup for AISchema markup (structured data) is machine-readable code — usually JSON-LD — that labels what your content means using the schema.org vocabulary. For AI search it's infrastructure for entity disambiguation, not a direct citation lever: controlled studies found no meaningful uplift in AI citations from adding it. — it’s a different question (citation lift) from this article (the vocabulary, the types, and implementation).

Implementation priorities

If you’re starting from scratch, do it in this order:

  1. Organization (sitewide) with accurate name, logo, url, and verified sameAs — the entity foundation.
  2. BreadcrumbList on templated pages — cheap, broadly eligible, improves the listing.
  3. Product (ecommerce) or LocalBusiness (local) — the highest-value business-specific type.
  4. Article on editorial content.
  5. Only then, niche types that map to a confirmed current gallery feature.

Two non-negotiables from Google’s guidelines: only mark up content that’s visible on the page, and favor “fewer but complete and accurate” required properties over every possible property filled in badly.

Validate before you ship

  • Rich Results Test — for types that produce rich results; tells you eligibility and required-property errors.
  • Schema Markup Validator — for any schema.org type, including ones that don’t produce rich results. Evidence for this claim Google recommends validating feature eligibility with the Rich Results Test and broader schema syntax with Schema.org tooling. Scope: Google Search deployment workflow; passing a validator does not guarantee display. Confidence: high · Verified: Google: Structured data introduction
  • Google Search ConsoleA free Google service that reports how a site performs in Google Search and surfaces problems with how Google crawls, indexes, and serves it. It's first-party data straight from Google — but you don't need it to appear in results. rich-result reports — monitor eligibility and errors at scale post-deploy.
  • Ahrefs Site Audit — flags structured-data issues across a whole site.

A required-property error makes that page ineligible for the corresponding rich result; recommended-property gaps are usually tolerated. Validate, then deploy — not the reverse.

Keep the layers straight, because passing one doesn’t imply passing the next: valid markup (a validator parses it without errors) → supported vocabulary (schema.org recognizes the type) → feature support (Google’s gallery documents a matching rich result right now) → eligibility (every required property present, policy followed) → indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. (the page is indexed at all) → display (Google chooses to show the enhancement) → ranking (unaffected by any of the above). A green validator only proves the first step.

For where this sits in the bigger picture, see the broader structured data hub this article lives under.

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.