Home › Tools › JSON-LD Schema Markup Generator
JSON-LD Schema Markup Generator
Generate valid JSON-LD for Article, FAQ, HowTo, Product and Organization — or one @graph that links them by @id.
Pick a schema type, fill in the fields, and get JSON-LD you can paste straight into your page head. Every field is validated as you type, and the output is checked for the properties Google actually requires.
How to use it
- Choose the schema type that matches what the page actually is — not the one you wish it were.
- Fill in the fields. Required ones are marked; the validator tells you what is missing as you type.
- Copy the JSON-LD and paste it into the
<head>of your page, then test it in Google's Rich Results Test.
Structured data is a claim, not a ranking factor
Adding schema does not by itself move a page up. What it does is make your claims machine-readable: this is an article, it was published on this date, by this author, and this is the answer to this question. Systems that need that information can then use it.
The failure mode is claiming things that are not true of the page. Marking up an FAQ section that does not exist on the page, or a product the page does not sell, is a structured-data violation and can cost you eligibility for rich results entirely.
Why one @graph beats several loose blocks
Most generators emit one detached JSON-LD blob per type. That works, but it throws away the relationships: this article was published by this organization, on this website, and sits at this position in this breadcrumb trail.
Emitting a single @graph where nodes reference each other by @id expresses those relationships explicitly, and it is how the same facts stop being repeated in three places where they can drift apart. If your Organization name changes, you change it once.
FAQ and HowTo: two types that no longer earn what they used to
This is the part of structured data that has changed most, and a lot of advice on the web has not caught up. Google's own changelog records that the FAQ rich result stopped appearing in Google Search on 2026-05-07; the documentation was removed on 2026-06-15. Before that, an August 2023 change had already limited FAQ rich results to well-known authoritative government and health sites.
HowTo went the same way in that 2023 change, which deprecated HowTo rich results on mobile.
Google's position is that the markup does not need to be removed — unused structured data does not cause problems, and FAQPage is still a valid schema.org type. The practical reading is narrower: keep it if it documents the page honestly, but stop expecting a visible result from it, and stop measuring it as an SEO win.
If you are auditing a page that was built around FAQ schema, the question to ask is not "is the markup valid" but "what is this markup earning". For most sites in 2026 the answer for FAQPage is nothing visible in Google.
Valid markup, no rich result: the checks that actually find it
Passing the Rich Results Test and getting a rich result are two different things, and the gap between them is where most of the confusion lives. Work down this list in order.
1. Is the page indexed and recrawled? Rich results appear after a recrawl, which can take days to weeks. A page published yesterday with perfect markup has not been evaluated yet.
2. Is the type eligible at all? Some types are restricted by category or region, and some no longer produce a visible result — see the FAQ and HowTo note above. No amount of correct markup revives a retired feature.
3. Does the markup describe content that is actually on the page? Marking up a product the page does not sell, or a review that no reader can see, is a violation rather than a shortcut.
4. Is it in the served HTML? JSON-LD injected by client-side JavaScript is read only after rendering. If the page fails to render, or the block is added by a tag manager that loads late, the markup may never be seen. View source, not the inspector, to check.
5. Is a required property missing? The Rich Results Test flags these, but warnings are easy to skip. A missing required property produces no result and no Search Console error.
6. Are two blocks contradicting each other? Two Product nodes with different prices, or an Article and a Product on the same URL with conflicting identity, leave the parser to guess. One @graph with consistent @id references removes the ambiguity.
7. Is there a manual action? Structured-data violations can trigger one, and it suppresses rich results site-wide. Check the Manual Actions report before debugging individual pages.
Required versus recommended
Google treats some properties as required for a given rich result and others as recommended. Missing a required property means the result simply will not appear, with no error shown anywhere in Search Console.
This tool marks required fields and refuses to produce output that omits them. It does not warn about recommended fields, because those trade off against how much you want to describe.
Dates are the most common silent error
datePublished and dateModified need to be ISO 8601, and dateModified needs to mean something. Incrementing it on every deploy to make a page look fresh is a well-known trick that stops working the moment anyone compares it against the actual content.
Set dateModified when the content genuinely changes. A page whose modified date moves every day but whose words never change is telling crawlers the date field is noise.
Questions
Does schema help rankings?
Not directly. It makes your content eligible for rich results and helps systems understand what the page is. The ranking effect, if any, is indirect.
Where does the JSON-LD go?
Anywhere in the head or body. Google reads it regardless of position. The head is conventional and keeps it out of the way.
Can I use several types on one page?
Yes. Either as separate script blocks or, preferably, as one @graph with cross-referenced @id values so the entities are explicitly related.
Is FAQ schema still worth adding in 2026?
Not for a visible result. Google's changelog records that the FAQ rich result stopped appearing in Search on 2026-05-07, and the documentation was removed on 2026-06-15. The markup is still valid schema.org and Google says it does not need to be removed, but it no longer produces a visible FAQ result.
Why does my valid schema produce no rich result?
Work down seven checks in order: is the page indexed and recrawled; is the type still eligible; does the markup describe content actually on the page; is it in the served HTML rather than injected late by JavaScript; is a required property missing; are two blocks contradicting each other; is there a site-wide manual action. Eligibility and indexing account for most cases.
How long does Google take to show a rich result?
Days to weeks after a recrawl. Markup added to a page that has not been recrawled has not been evaluated yet, so a freshly published page with correct markup showing nothing is expected rather than broken.
Does JSON-LD injected by JavaScript get read?
Yes, but only after Google renders the page. If rendering fails, or the block is added late by a tag manager, it may never be seen. Check view-source rather than the browser inspector to confirm it is in the served HTML.
Related tools
llms.txt Generator
Build a valid llms.
Meta Tag Generator
Emits title, description, canonical, Open Graph and Twitter tags with live length warnings.
Heading Structure Analyzer
Paste HTML and get a clean H1–H6 outline plus a list of real problems: missing or duplicated H1, skipped levels, and overly long headings.