Toolsy

Schema markup generator

Build valid JSON-LD for the six types that actually earn rich results — and see what Google still needs.

Runs entirely in your browser. Nothing you paste is uploaded or stored.

For blog posts, news and guides. Google uses it for the article rich result and for author attribution.

Google truncates the rich result headline around 110 characters.

Use the largest version you have. Under 1200px wide and the article result loses the big image.

A real author page does more for credibility signals than the name alone.

JSON-LD missing: Headline, Page URL, Author name, Published
{ "@context": "https://schema.org", "@type": "Article" }
Open Rich Results Test

Paste it anywhere in the page — head or body, both are valid. What matters is that every value here also appears on the page itself: markup that describes things a visitor cannot see is the definition of structured data spam.

What this tool does

It builds JSON-LD for the six types that carry most of the value in search, fills in the boilerplate correctly, and tells you which properties Google treats as required for each one. Empty fields are dropped instead of being written as empty strings, so the output stays clean.

The types cover the common cases: Article for anything editorial, Product for anything with a price, FAQ for question blocks, How-to for step-by-step instructions, Organization for the home page, and Local business for anything with an address.

The three mistakes worth avoiding

Marking up what is not on the page. This is the only structured data mistake that gets sites penalised rather than just ignored. A rating in the markup must be a rating a visitor can see. A price in the markup must match the price on the page. If the FAQ exists only in JSON-LD, remove it.

Skipping the properties that make the rich result possible. A product without price, currency and availability is a valid Product — and it will never produce a product result. Required does not mean “the markup breaks”, it means “this is what the feature needs”.

Letting dates drift. dateModified in the past while the page says “updated yesterday” is a contradiction machines notice. If you cannot keep it accurate automatically, leave it out.

After you paste it

Run the page through Google’s Rich Results Test once. The generator can guarantee the JSON is valid and complete; only the test can tell you whether the page qualifies, because eligibility depends on the whole page, not the markup alone.

Questions

Where do I put the JSON-LD on the page?

Anywhere — head or body, both are valid, and Google reads it either way. JSON-LD is the format Google recommends precisely because it does not have to be woven into the visible HTML the way microdata does.

Do FAQ rich results still exist?

Google narrowed FAQ rich results in 2023 to well-known government and health sites, so most pages no longer get the expanded questions in search. The markup is still worth adding: it is a clean, machine-readable statement of what the page answers, and that matters more now that AI answers are picking sources.

Will structured data improve my rankings?

Not directly. It changes how your result looks and how confidently a machine can classify your page, and both affect clicks. Treat it as presentation and comprehension, not as a ranking lever.

What is the fastest way to get penalised with structured data?

Marking up things a visitor cannot see. Ratings that appear nowhere on the page, a price that differs from the one shown, an FAQ block that exists only in the markup — all of it is a manual action waiting to happen. Every value here should also be visible on the page.

Do I need to validate the result?

Yes, once. The generator guarantees valid JSON and the required properties, but only Google's Rich Results Test tells you whether the page qualifies for a particular rich result — that depends on the page as a whole, not just the markup.

Last updated 19 Aug 2026