Pairs in, FAQPage out
This faq schema generator takes a list of question and answer pairs and writes the FAQPage JSON-LD
block for them, cleaning each answer down to a short list of safe HTML and reporting what it had to
remove. Nothing you type leaves the browser, and the block is ready to paste straight into the page.
Read the next section before you do: Google no longer shows FAQ rich results, and this markup will
not change how your page looks in its results.
Google no longer shows FAQ rich results
For several years, FAQ markup was one of the highest-leverage things a site could add: the questions appeared under the listing as expandable rows, taking up vertical space that competitors could not. In August 2023 Google narrowed the feature to well-known government and health websites, and the rows disappeared from ordinary results overnight. On 7 May 2026 it stopped showing them for anyone, and on 15 June 2026 the FAQ page left the structured data documentation in Search Central.
Plenty of advice written before those dates is still circulating, which is why so many people add this markup expecting a change in the results page that will not arrive. Be clear about what you are buying now: a machine-readable description of the questions on the page, and nothing in Google's results.
Why it is still worth marking up
Google's rich result was one consumer of this data, and it was never the only one. FAQPage states, in a
form no parser has to guess at, that this page contains a specific question and this specific answer
to it. Other search engines, assistants and the systems that summarise and cite pages rather than
list them can read that statement without guessing, and none of them depended on Google's decision.
There is also a cheaper argument. Writing the markup forces you to state the questions the page answers, in the words a visitor would use. Pages that survive that exercise tend to be better pages. If you cannot fill in three genuine pairs, the FAQ section probably should not exist.
The visibility rule is not negotiable
Every question and every answer in the block has to be present on the page, visible to a person who loads it, in the same wording. Content hidden behind an accordion counts as visible; content that exists only inside the JSON-LD does not.
This matters more than it sounds, and it did not go away with the rich result. Hidden structured data breaks Google's general structured data guidelines whatever the type, it is one of the few markup problems that attracts a manual action rather than being quietly ignored, and a manual action on one template tends to cost the whole site its eligibility for the rich results that still exist.
What the cleaner takes out, and why
Google's documentation, while it existed, permitted a small set of tags inside an answer: paragraphs, unordered lists and list items, links, bold and italic in both their spellings, and line breaks. That is deliberately close to the minimum needed to write a readable answer, and it remains the safest common denominator for anything else that reads the block.
Everything else is removed here before it reaches the output. Headings, tables, div and span
wrappers, and images are stripped of their tags while their text survives; script and style
blocks are removed with their contents, because nothing in them belongs in an answer. Attributes go
too, except an href on a link — and an href using a javascript: scheme is dropped while the
link text stays. The tool lists what it removed, so a paste from a word processor that arrives
wrapped in twelve span elements is visible rather than silent.
Checking the block
The block this tool produces is valid JSON-LD and conformant with schema.org. Since the feature was
withdrawn, Google's Rich Results Test has nothing to say about FAQPage, so an empty report there is
the expected outcome rather than a fault in the markup. Check the syntax, the type and the required
fields with the structured data validator instead, or with the Schema
Markup Validator that schema.org runs.
For the other blocks that belong on a content page, the article schema generator covers authorship and dates, and the breadcrumb schema generator covers the navigation path above the page. If the page is really a procedure rather than a set of questions, the HowTo schema generator is the closer fit — with the same caveat about Google.