What Is Schema Markup? Types, Testing, and Rich Results
Google's parsers are good, but they're still guessing. On a page that mentions "4.7," a date, two prices, and a person's name, nothing in the HTML says which number is a rating, which price is current versus crossed-out, or whether the name is the author or the subject. Schema markup ends the guessing: it's a structured, machine-readable statement of what the page is about, sitting in the source for any crawler to read.
If you're asking what is schema markup in concrete terms: it's annotation using the schema.org vocabulary — a shared dictionary of types (Product, Article, Event, LocalBusiness, some 800 in total) and their properties — embedded in your pages, most commonly as a JSON-LD script block. Schema.org was founded jointly by Google, Microsoft, Yahoo, and Yandex in 2011 precisely so the whole industry would label things the same way.
The Three Formats, and Why JSON-LD Won
The vocabulary can be expressed three ways. Microdata and RDFa weave attributes into your existing HTML tags — workable, but brittle, because redesigning your markup means re-weaving the annotations. JSON-LD puts the whole description in one self-contained script block, decoupled from presentation:
<script type="application/ld+json">{"@context": "https://schema.org", "@type": "Article", "headline": "What Is Schema Markup?", "author": {"@type": "Person", "name": "Dana Reyes"}, "datePublished": "2026-03-02"}</script>
Google explicitly recommends JSON-LD, and in practice nearly all new implementations use it. One block, one place to debug, template redesigns can't silently break it. The only real argument for microdata today is a legacy codebase that already has it.
What Google Does With It
Two distinct things, and separating them clears up most confusion.
Rich result eligibility. For a specific list of types — Product, Recipe, Event, JobPosting, Video, Review, Breadcrumb, Organization, and a couple dozen more — valid markup makes your page eligible for enhanced listings: stars, prices, images, event dates in the SERP. Eligible, not entitled; Google decides per query. The full mechanics live in our rich snippet guide, including the types Google has retired (FAQ dropdowns for most sites in 2023, HowTo entirely).
Entity understanding. Markup beyond the rich-result list isn't wasted. Organization markup with your logo, sameAs social profiles, and contact data feeds the Knowledge Graph. Article markup clarifies authorship and dates. Product identifiers (GTIN, brand) connect your listings to Google's product graph and the Shopping tab. None of it produces a visible badge, but it reduces ambiguity about who you are and what you sell — increasingly relevant as AI-generated answers assemble information from structured sources.
What it does not do: raise your rankings by itself. Google has been consistent on this for a decade — structured data is an understanding aid and an eligibility key, not a ranking signal.
What Is Schema Markup Worth Implementing First?
Match types to your site rather than marking up everything movable:
- Every site:
Organization(orLocalBusinesswith address and hours if you serve an area) on the homepage;BreadcrumbListsite-wide. - E-commerce:
ProductwithOffer— price, currency, availability — plusAggregateRatingwhere you genuinely display reviews. Highest-ROI markup on the web. - Content sites:
Articlewith author and publication dates;VideoObjectwherever you embed video you host or own. - Niche goldmines:
JobPosting,Event, andRecipefeed dedicated Google surfaces with real traffic behind them.
Two rules keep you out of trouble. The markup must describe this page's visible content — mirroring data users can't see on the page violates Google's guidelines and risks a structured-data manual action. And required properties are required: a Product without an Offer or rating simply earns nothing.
Validating, and Keeping It Valid
Two testing tools split the job: the Schema Markup Validator (validator.schema.org) checks vocabulary correctness, while Google's Rich Results Test checks the part Google cares about — whether the page qualifies for rich results and which required properties are missing. Test the rendered page, not just your template source, especially if the JSON is injected client-side.
Read the results with the right severity model: errors mean a required property is missing or malformed and the rich result won't show — fix these. Warnings flag missing recommended properties; the enhancement can still appear, but you're leaving richness on the table. And connect related entities properly rather than duplicating them: give your Organization an @id once and reference it from Article publisher fields, so Google sees one consistent entity instead of five slightly different copies of your company scattered across templates.
After deployment, Search Console tracks each detected type under Enhancements, with counts of valid items, warnings, and errors. Watch it after every template change — structured data breaks silently, and the classic pattern is a theme update in March that nobody connects to the traffic dip in May. Schema deserves a line in your recurring site audit for exactly that reason: it's invisible on the rendered page, so nothing looks wrong while it's broken. Marked-up pages whose prices drifted out of sync with the visible price, or whose review widget was removed while the rating markup stayed, are the kind of quiet rot a scheduled crawl catches and humans don't.
Frequently Asked Questions
Does schema markup improve Google rankings?
Not directly — Google has repeatedly confirmed structured data isn't a ranking signal. Its value is eligibility for rich results, which lift click-through rate at a given position, and clearer entity understanding, which helps Google match your pages to relevant queries and surfaces like Shopping.
Which schema format should I use — JSON-LD or microdata?
JSON-LD. It's Google's recommended format, lives in one self-contained script block instead of being woven through your HTML, and survives template redesigns. Microdata still parses fine, so there's no urgency to rip out a working legacy implementation — just write anything new in JSON-LD.
Can I add schema markup with a plugin, or does it need to be hand-coded?
Plugins handle the common cases well — most WordPress SEO plugins output solid Article, Organization, and Breadcrumb markup automatically, and e-commerce platforms generate Product markup from your catalog data. Hand-coding matters mainly for custom page types or when a plugin's defaults mislabel your content. Either way, verify with the Rich Results Test.
How much schema markup is too much?
Mark up what the page visibly is, and stop. Stacking a dozen types onto one URL, or marking up content that isn't displayed to users, ranges from useless to guideline-violating. One primary type per page plus site-wide Organization and Breadcrumb covers the vast majority of real needs.
Try WebsiteChecker.Tech Free
Run a free technical SEO audit on any website. Get a client-ready report in minutes.
Start Free Scan