// Free Tool · Structured Data

FAQ Schema Generator (JSON-LD)

Turn questions and answers into valid FAQPage JSON-LD — copy-paste ready, built in your browser.

FAQPage JSON-LD

FAQ Schema Generator

Turn questions and answers into valid FAQPage JSON-LD structured data — copy-paste ready

Question & answer pairs
Waiting for input

What is a FAQ schema generator?

A FAQ schema generator — or FAQ page schema generator, after the FAQPage type it writes — turns a list of questions and answers into a valid FAQPage JSON-LD block, the structured data type for a frequently-asked-questions section. You type each question and its answer, the generator builds the <script type="application/ld+json"> block, you copy the code and paste it into the page. The generator tool has no server side; nothing you type leaves your browser. The honest part first: since 7 May 2026 Google no longer shows FAQ rich results for anyone, so the markup will not buy you an expandable Q&A under your snippet. It remains a valid Schema.org type that does no harm and keeps your question-and-answer content machine-readable — this page explains where that still earns its keep.

What changed on 7 May 2026, and why the markup still matters

On 8 May 2026 Google added a deprecation notice to its FAQ structured data documentation. The changelog entry is one line: the FAQ rich result feature “will no longer appear in Google Search starting May 7, 2026”. The notice set out three dates — rich results stopped on 7 May; the FAQ search appearance filter, the FAQ report and Rich Results Test support were dropped in June 2026; Search Console API support for the type goes in August 2026. By mid-June the notice was no longer readable at source: the documentation page had gone, and its URL now redirects to the Search Central changelog, which keeps only the one-line entry. The wording with all three dates survives in the trade record — Search Engine Journal quoted it in full on 10 May, while the page was still up.

This closes a slow retreat. In August 2023 Google had limited FAQ rich results to well-known government and health sites; for everyone else they had been gone for almost three years, and May 2026 ended the exception. Google gave no reason beyond the notice and asked nobody to remove markup — FAQ structured data can stay in place, and unused structured data, Google has long said, does not cause problems in Search.

So why generate FAQ schema at all? Three reasons, none of them the snippet:

Tip: FAQ rich results are gone, FAQ schema is not. What you are generating now is machine-readable Q&A, not search-result decoration.

What the generated FAQ schema code contains

Every FAQPage JSON-LD block has the same skeleton; this FAQ structured data generator fills it in the same order every time. Five parts, for the day you debug one by hand:

Anatomy of a FAQPage JSON-LD blockA FAQPage JSON-LD script with callouts: script tag wrapper, FAQPage container, mainEntity array, Question name, acceptedAnswer Answer text.<script type="application/ld+json">{"@context": "https://schema.org","@type": "FAQPage","mainEntity": [{"@type": "Question","name": "How long does shipping take?","acceptedAnswer": {"@type": "Answer","text": "3 to 5 business days."}},{ "@type": "Question", … next pair … }]}</script>Script tag wrappertype="application/ld+json" stops the browser running it.Goes in <head> or <body> — one block per page.FAQPage — the containerThe schema type of the whole block. Schema.org keeps itvalid; Google no longer draws a rich result from it.mainEntity — the arrayOne Question object for every Q&A pair that isvisible on the page. Nothing hidden, nothing extra.name — the questionVerbatim, as shown to the visitor. The generatorescapes quotes and special characters for you.acceptedAnswer → Answer → textThe full answer. Plain text, or limited HTML such aslinks and lists. Must match the visible text.
Anatomy of a FAQPage JSON-LD block as this generator outputs it: one script tag, one FAQPage container, a mainEntity array, and one Question with an acceptedAnswer per visible pair.

@context names Schema.org; the @type of the block is FAQPage; mainEntity is an array in which each element is a Question whose name is the question and whose acceptedAnswer is an Answer holding the answer in text. That is the entire vocabulary. The script tag’s type="application/ld+json" tells the browser this is data, not JavaScript to run.

How to Generate FAQ Schema

FAQ schema markup tells search engines and AI systems that a section of your page is a set of questions and answers. The FAQ schema markup generator above gets you from pairs to live code in four moves.

1

Add the question-and-answer pairs

Enter each question with its answer. Click "Add question" for as many pairs as you need — you need at least one. Use the questions and answers exactly as they appear on the page, because the markup must match the visible content.

Tip: “Try example” fills two sample pairs so you can see the output shape first. Basic HTML such as links and lists is allowed inside an answer; the tool escapes it correctly when building the JSON.
2

Copy the JSON-LD code

As you type, the tool builds a valid FAQPage JSON-LD block in real time and wraps it in a script type="application/ld+json" tag. When it is ready, click "Copy JSON-LD" to put it on your clipboard.

3

Add the script to your page

Paste the script block into the HTML of the page — in the head or anywhere in the body, through a tag manager, or in WordPress via a custom HTML block or your SEO plugin's schema field. Make sure the same questions and answers are visible on the page.

Then check how the page reads in results with the SERP snippet preview tool — with the FAQ rich result gone, title and description are the whole snippet again.

4

Validate the markup

Run the page through the Schema Markup Validator at validator.schema.org. It confirms the JSON-LD parses and that every property name exists in the vocabulary. It will not flag a Question missing its acceptedAnswer, because Schema.org marks nothing as required, so count the pairs yourself. Google's Rich Results Test dropped FAQ support in June 2026.

Where to paste the FAQ schema code

FAQ JSON-LD is position-independent — a block in the footer parses the same as one in the head. Pick what you can maintain:

PlacementHowWatch out for
<head>Page template or a per-page head field.Templates are shared — a block in the global head lands on every page, including ones without that FAQ.
<body>Next to the visible FAQ section itself.Nothing. Code beside the content it describes is the easiest to keep in sync.
Tag managerCustom HTML tag with the script block, fired on the page URL.Injected by JavaScript after load; it only counts if the crawler renders the page. View-source will not show it.
WordPressA Custom HTML block in the post, or the custom-schema field of your SEO plugin.A FAQ block plugin may already emit its own FAQPage — two blocks for the same pairs is the most common duplicate.

One FAQPage per page: all of a page’s pairs in a single mainEntity array, and no single block pasted across twenty URLs — the questions describe this page. Bulk work across many pages means one block per page from its own FAQs.

How to validate FAQ schema now that the Rich Results Test ignores it

The Rich Results Test only checks types Google shows as rich results; with FAQ off that list since June 2026, it no longer reports on FAQPage. Use the Schema Markup Validator instead — the Schema.org tool parses any type in the vocabulary and reports two kinds of breakage: JSON that does not parse (a stray quote, a missing comma), and names that are not in the vocabulary at all, such as acceptedAnswers with a stray s or a type nobody has defined. Paste the URL or the code snippet; both work.

What it will not tell you is that something is missing. Schema.org marks no property as required, so a Question that carries a name and no acceptedAnswer at all comes back clean — zero errors and zero warnings when we ran exactly that block through the validator on 19 August 2026. Confirming that every question in the markup has an answer is on you: read the JSON, or parse it and compare the length of mainEntity against the number of pairs on the page.

Two more checks are on you as well. View the page source and search for FAQPage — a block missing from the raw HTML is being injected by a script, a weaker signal than markup in the initial response. Then read the answers in the markup against the FAQ page, word for word; drift passes every validator and still fails the one guideline Google still publishes for structured data.

Do not look for a FAQ line in Search Console either; that filter and report went in June 2026. The nearest thing is the generative AI reports Search Console added in June, and they carry a single number: impressions for the page inside AI features, split by country, device and date. No clicks, no queries, and nothing that says which pair a model quoted. Since 13 August even that number is undercounted by a logging error Google has confirmed and not yet closed.

Common FAQ schema mistakes

Frequently Asked Questions

What is FAQ schema?
FAQ schema is structured data using the FAQPage type from Schema.org, written in JSON-LD. It marks up a list of questions and their answers so that search engines and AI systems can identify the question-and-answer content on your page in a machine-readable way. The markup describes content that should already be visible to users on the page.
Do FAQ rich results still show in Google?
No. Google deprecated the FAQ rich result on 7 May 2026, ending an exception that had been narrowed to government and health sites back in August 2023. The search appearance filter, the FAQ report and Rich Results Test support followed in June 2026. Valid FAQPage markup can stay on the page; it simply will not produce a visible result.
Should I remove my existing FAQ schema?
You do not have to. Google said FAQ structured data can remain in place and that unused structured data does not cause problems in Search, and FAQPage is still a valid Schema.org type. Keep it if it matches the visible content; remove it if it is unmaintained, duplicated or drifting from the page text.
Does FAQ schema help with AI Overviews or AI assistants?
Google says no special Schema.org markup is needed to appear in AI Overviews or AI Mode, only that structured data should match the visible text. Clear question-and-answer blocks are the format AI answers quote from, and FAQPage keeps them machine-readable for anything that parses Schema.org. Treat the markup as a by-product of good FAQ content, not a lever.
How do I validate FAQ schema now?
Use the Schema Markup Validator at validator.schema.org; Google’s Rich Results Test dropped FAQ support in June 2026 and no longer reports on FAQPage. The validator catches JSON that does not parse and names outside the vocabulary, but not a missing acceptedAnswer — Schema.org marks no property as required — so check every question has its answer yourself.
Where do I put the FAQ schema code?
Paste the script type="application/ld+json" block anywhere in the page HTML — head or body; next to the visible FAQ section is easiest to maintain. Through a tag manager it is injected by JavaScript and only counts after rendering. In WordPress, use a Custom HTML block or your SEO plugin’s schema field.
Can one page have more than one FAQPage block?
Put all of a page’s question-and-answer pairs in a single FAQPage block with one mainEntity array. Several blocks on one URL are usually a plugin and a hand-pasted block describing the same pairs. Each page should carry markup for its own visible questions, not a site-wide block repeated on every URL.

More free tools: browse the full catalog →