Schema Generator (JSON-LD)

Valid JSON-LD for Article, Product, LocalBusiness, Breadcrumb and Person — filled in and ready to paste.

Nothing you type here is uploaded, stored or sent anywhere. It all runs in your browser.

Getting structured data right

  • Only describe what is on the page. Marking up a price or a rating a visitor cannot see is a violation, and manual actions for it are real.
  • JSON-LD in the head is Google's stated preference over microdata in the body.
  • Validate before you ship. Google's Rich Results Test and the Schema.org validator catch different things — run both.
  • Structured data does not rank a page. It changes how a result can be displayed. That is worth having, but it is not a ranking factor.

Questions people ask

My markup validates but I still get no rich result. Why?

Valid markup makes a page eligible, and eligibility is where Google decides, not where you do. Two other things are worth checking before you assume a bug: most types have no rich result at all — Person and LocalBusiness mostly feed the knowledge graph rather than the SERP — and a site with little trust is shown fewer enhancements regardless of its markup.

Which type do I use when more than one fits?

The most specific one that is honestly true. A blog post about a product is an Article, not a Product — the Product type belongs on the page where the thing can be bought. Stacking both on one page to be eligible for both is the kind of thing that gets a site a manual action.

Can I add star ratings for my own business?

Not ones you collected and display yourself. Google stopped showing self-serving review markup for Organization and Product entities in 2019 — reviews about the entity that controls the page are ineligible. Third-party review platforms are the route, and they show their own stars.

Is it safe to inject schema through Google Tag Manager?

It works, because Google renders the page and reads what JavaScript wrote. It is still fragile: the markup now depends on the container firing, on the render queue reaching your page, and on nobody changing a tag without telling you. Put it in the source if you can reach the source.

Does every page need structured data?

No. A page with nothing structured to describe gains nothing from being told it is a WebPage. Mark up the things that have real properties — articles, products, events, breadcrumbs, the business itself — and leave the rest alone.

Markup is the easy half

Being eligible for a rich result matters little if page two is where you sit.

See link building packages Talk to Hayk