PeakKR
🧬

Schema Markup Checker & Explainer

Paste your JSON-LD and get it back in plain English β€” what each block is, the facts it carries, what's missing for its type, and the syntax errors Google would silently ignore without telling you.

βœ“ 100% free, no signup βœ“ Plain-English explanations βœ“ Flags missing fields per type βœ“ Runs in your browser β€” nothing uploaded
How to use it

From page source to plain English

  1. Grab the markup. View the page source, find <script type="application/ld+json">, and copy everything between the tags. (Multiple blocks? Paste them one at a time, or as a JSON array.)
  2. Hit "Explain". Each typed object comes back as a card: what the type does, the facts Google can read from it, and a βœ“ or a list of missing fields.
  3. Fill the gaps. A card with missing fields is markup doing half its job β€” a LocalBusiness without a phone number validates fine and earns nothing.
Why it matters

Validators check syntax. This checks usefulness.

The official validators answer one question: does the JSON parse into recognized types? They don't tell you the markup is doing anything. A LocalBusiness block with a name and nothing else is valid β€” and it's also pointless. This tool reads your markup the way an SEO reviewing a client site should: type β†’ facts β†’ gaps β†’ verdict.

  • Invalid JSON-LD fails silently. One stray comma and Google skips the block β€” no error in Search Console, no warning anywhere. Rich results just never appear, forever, quietly.
  • Complete beats present. The difference between "has Product schema" and "has Product schema with offers, price and aggregateRating" is the difference between nothing and stars-with-price in results.
  • Markup must match the page. Schema describing content that isn't visible on the page violates Google's guidelines and can cost you all rich results sitewide.
Reference

The schema types that actually earn rich results

TypeRich result it powersMust-have fields
LocalBusiness (+ subtypes)Map pack & knowledge panel dataname, address, telephone β€” add hours, priceRange, geo
FAQPageExpandable Q&As on the results pagemainEntity with Question/Answer pairs matching visible content
Article / BlogPostingHeadline, byline & date treatmentheadline, author, datePublished, image
ProductStars, price & stock in the listingname, offers (price + currency), aggregateRating if real
BreadcrumbListReadable path instead of raw URLitemListElement with positioned items
Organization / WebSiteBrand identity, logo, sitelinks searchname, url, logo
Agency tip: schema is a template job, not a page job. Fix the LocalBusiness/Organization block once in the layout, the Article block once in the post template β€” and every page inherits it. Auditing page-by-page is how this work balloons to 10Γ— its real size.
FAQ

Schema questions, answered

What is schema markup?

Structured data β€” usually JSON-LD in a script tag β€” that describes your page to search engines in their vocabulary: "this is a local business, here's the phone number; this is an article, here's the author and date." It's how pages qualify for rich results: stars, FAQs, breadcrumbs, prices.

Does schema markup improve rankings?

Not as a direct ranking factor β€” but rich results earn a larger, more clickable listing, and clearer entity understanding helps Google match your pages to the right queries. The traffic gain is real even though the mechanism isn't "ranking boost."

Why doesn't my rich result show up even though my markup validates?

Validation is necessary, not sufficient. Google also requires the content to be visible on the page, the markup to be complete for its type (a Product without offers gets no price snippet), and the site to be generally trusted. And some rich results are simply rationed β€” eligibility is not a guarantee.

What happens if my JSON-LD has a syntax error?

Google silently ignores the entire block. No warning, no partial credit β€” the rich results just never appear. One trailing comma is enough, which is why the first thing this tool does is a strict JSON parse.

Which schema types matter most for a local or service business?

LocalBusiness (or its specific subtype like Dentist or Plumber) for the map pack and knowledge panel; FAQPage for expandable Q&A results; Service for what you actually sell; BreadcrumbList for readable result paths; and Review/AggregateRating where you legitimately have ratings.

Should I use JSON-LD or microdata?

JSON-LD. It's Google's recommended format, lives in one script tag instead of being woven through your HTML, and is far easier to template and maintain. Every example this checker explains is JSON-LD.

Do this on every page, without the copy-paste. The PeakKR SEO Assistant for Chrome runs these checks on whatever page you're viewing β€” plus broken links, Core Web Vitals, live tag inspection, and one-click tasks into your agency workspace.

Get the Chrome extension Try PeakKR free

More free tools