DomainLens

Learn

Schema Markup: Meaning, Examples, and How to Validate It

Schema markup describes a page in a vocabulary machines already agree on. It does not improve rankings directly — it makes a page eligible for richer presentation.

Check your site before you start fixing

Run a fresh DomainLens audit and use the report as your priority list.

Run a free SEO audit

Schema markup meaning

Schema markup is a block of structured data stating what a page is about, written in a shared vocabulary from schema.org. A human reads a price and a star rating from the layout; a machine reads them from the markup. Without it, a search engine has to infer meaning from raw text, and it frequently declines to.

The vocabulary is shared deliberately. Because Google, Bing, and others agreed on the same type names and property names, one block of markup serves every consumer that understands it, instead of each search engine requiring its own dialect.

FormatWhere it livesRecommendation
JSON-LDA script block, separate from the markupGoogle's preferred format — use this
MicrodataAttributes on existing HTML elementsSupported; harder to maintain
RDFaAttributes on existing HTML elementsSupported; rarely worth choosing now

Schema markup example in JSON-LD

JSON-LD sits in the head or body as its own script block, which is why it survives template changes better than attribute-based formats — nothing about the visual markup can accidentally break it, and nothing about it constrains the visual markup.

TypeUse onRequired essentials
ArticleEditorial and blog pagesheadline, image, datePublished
ProductProduct detail pagesname, image, offers with price and currency
BreadcrumbListAny page with a hierarchyitemListElement with position on each item
OrganizationHome page or a shared blockname, url, logo
LocalBusinessPhysical locationsname, address, openingHours
FAQPageGenuine question and answer pairsmainEntity with Question and acceptedAnswer
Article markup as JSON-LD
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "Schema Markup: Meaning, Examples and Validation",
  "description": "What schema markup means and how to check it.",
  "image": "https://example.com/cover.jpg",
  "datePublished": "2026-08-14",
  "dateModified": "2026-08-20",
  "author": {
    "@type": "Person",
    "name": "Jamie Rivera"
  },
  "publisher": {
    "@type": "Organization",
    "name": "Example",
    "url": "https://example.com"
  }
}
</script>

Schema markup and SEO: what it actually does

What markup buys you is eligibility, not position. Valid Product markup makes a page eligible for a price and availability treatment in results; it does not make the page rank higher, and eligibility never guarantees the treatment appears. Google decides per query whether a rich result is useful.

The indirect benefit is real but narrower than usually claimed: a richer result can lift click-through rate on a position you already hold. That is worth having, and it is not the same thing as ranking improvement.

  • Add one type per page concept rather than stacking every type you can name.
  • Never mark up content the page does not visibly contain — that is a guidelines violation, not an optimisation.
  • Keep markup values synchronised with the rendered page; a price that drifts out of sync is worse than no markup.
  • Correct markup on a noindexed or blocked page is eligible for nothing, so fix indexability first.

Schema markup validator versus tester

Two tools share the job and answer genuinely different questions. Picking the wrong one is the usual reason markup "passes" while the rich result never appears.

The Schema Markup Validator checks your syntax against the schema.org vocabulary — it will happily approve a valid type Google has no rich result for. The Rich Results Test checks eligibility for a specific Google feature, which is the question you actually care about.

QuestionToolWhat it will not tell you
Is my syntax valid schema.org?Schema Markup ValidatorWhether Google supports the type
Am I eligible for a rich result?Rich Results TestWhether the result will actually show
What did Google see on the live page?URL InspectionAnything about a page you do not own
Which pages fail at scale?Search Console enhancement reportsErrors on pages never crawled

Schema markup failures that still pass a checker

Every item above validates cleanly in a syntax checker, which is exactly why a checker alone is not enough. For client-rendered sites, confirm the block survives rendering before debugging the schema itself — the JavaScript rendering guide covers how to check, and structured data errors covers what Search Console reports afterwards.

  • Markup injected by JavaScript that never runs for the crawler — validate the rendered HTML, not the source.
  • Values disagreeing with the visible page, such as a price in markup that differs from the price on screen.
  • A review rating with no visible reviews, or self-serving ratings on the business's own page.
  • FAQ markup applied to content that is not genuinely a question and answer pair.
  • Valid markup on a page that is noindexed, blocked, or canonicalised elsewhere.

Schema markup generators and CMS plugins

A generator is a reasonable way to produce a first block for an unfamiliar type, because it enforces the required properties you would otherwise miss. It is a poor way to maintain markup: the output is a static snapshot, and any page whose price, date, or availability changes will drift out of sync the moment it does.

On a CMS, prefer whatever the platform emits from its own data. Squarespace, Shopify, and WordPress SEO plugins generate markup from the same fields that render the page, which keeps the two aligned automatically. The work then shifts from writing markup to auditing what the platform produced — usually checking that the type is right and that required properties are populated.

How DomainLens contributes

DomainLens parses the structured data on a page, reports the types it finds, and flags malformed or incomplete blocks alongside the rest of the audit — so markup problems appear in the context of the canonical, robots, and rendering state that determine whether they matter at all. The on-page checklist places markup beside titles, headings, and copy.

Does schema markup improve rankings?
Not directly. It makes a page eligible for richer presentation, which can raise click-through rate, but Google has been consistent that markup is not a ranking factor in itself.
Which schema markup format should I use?
JSON-LD. Google recommends it, and because it lives in its own script block it is far less likely to be broken by a template change than Microdata or RDFa.
Can I mark up content that is not visible on the page?
No. Structured data must describe what users can actually see. Marking up hidden or absent content violates Google's guidelines and risks a manual action.
Why is my schema markup valid but no rich result appears?
Validity produces eligibility, not display. Google decides per query and per page whether to show the treatment, and page quality and query intent both affect that decision.

Check this on your own site

Related resources