Page & Bell

FAQ Schema Generator

This generator builds a valid FAQPage JSON-LD block from your questions and answers. Every value is serialized with JSON.stringify, so quotes, line breaks, and special characters in your answers are always escaped correctly — the single most common reason hand-written FAQ schema fails validation. Add rows, drag them into order, and copy the markup with or without the script wrapper.

⠿ Q&A #1
⠿ Q&A #2

Fill in at least one question and answer to generate the JSON-LD markup.

How to use the faq schema generator

  1. Type each question and its answer into a row. Use “+ Add question” for more pairs and drag (or use the arrows) to reorder.
  2. Watch the inline validation: empty fields are flagged per row, duplicate questions are warned, and Google’s two-question minimum is checked.
  3. Copy the output with the <script type="application/ld+json"> wrapper to paste straight into your page’s <head> or <body>, or copy the raw JSON / download a .json file.
  4. Paste the final page URL into Google’s Rich Results Test to confirm the FAQPage items are detected.

What valid FAQPage markup looks like

The structure is fixed: a FAQPage root, and one Question object per pair inside mainEntity, each carrying its answer in acceptedAnswer.text:

{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "How long does delivery take?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Orders ship within 24 hours and arrive in 2–4 business days."
      }
    }
  ]
}

The two failure modes we see most in audits are both escaping bugs: an unescaped double quote inside an answer (breaks the whole JSON block silently), and a literal newline inside a string (invalid JSON — newlines must be \n). Because this tool serializes with JSON.stringify rather than string templates, neither can happen here.

Is FAQ schema still worth it after the 2023 change?

Honest answer: yes, but for different reasons than in 2022. The click-through-rate boost from expandable FAQ snippets is gone for almost everyone — Google now reserves that treatment for authoritative government and health sites. What remains valuable is comprehension. Structured Q&A is one of the cleanest signals you can hand to search engines and to AI answer engines (Google’s AI Overviews, ChatGPT-style assistants browsing your site) about exactly which question each block of text answers. FAQ markup also pairs naturally with strong on-page FAQ content, which continues to win long-tail and voice queries. Treat the schema as free metadata on content you should be writing anyway — not as a rich-result hack.

Frequently asked questions

Does FAQ schema still show rich results in Google?

Rarely. In August 2023 Google restricted FAQ rich results to “well-known, authoritative” government and health websites, so most sites no longer get the expandable dropdowns in search. The markup is still worth adding: it gives search engines and AI assistants an unambiguous, machine-readable version of your Q&A content, and it costs nothing to maintain. Just do not promise clients a visual SERP feature from it.

Can I use HTML inside the answer text?

Yes, a limited set. Google’s documentation explicitly allows these tags inside the Answer text property: <h1> through <h6>, <br>, <ol>, <ul>, <li>, <a>, <p>, <div>, <b>, <strong>, <i>, and <em>. Anything else may be ignored or stripped. The question name property, by contrast, should be plain text only. This tool passes your answer text through JSON.stringify, so HTML survives intact and quotes inside attributes are escaped properly.

Where do I place the script tag on my page?

Anywhere in the HTML — Google reads JSON-LD from both <head> and <body>. The conventional spot is just before the closing </head> tag. In WordPress, paste it via a header-scripts plugin or your theme’s hook; in Next.js or other React frameworks, render it with a script element of type application/ld+json. One FAQPage block per page is the rule: if you have multiple FAQ sections, merge all pairs into a single mainEntity array.

Do the questions and answers have to be visible on the page?

Yes. Google’s FAQ guidelines require that all marked-up content is visible to the user on the source page. Marking up Q&A text that exists only in the schema is a structured-data guideline violation and can earn a manual action. Accordion or collapsed sections are fine — the content just has to be reachable on that page.

How many questions should a FAQPage contain?

At least two — a single question technically belongs in QAPage or just plain content, and this tool warns you below two pairs. There is no hard upper limit; pages with 20 or more pairs validate fine. Practically, 4 to 10 focused questions per page works best: enough to cover real queries, not so many that the page becomes a thin keyword dump.

How do I verify the markup after publishing?

Use two checks. The Rich Results Test (search.google.com/test/rich-results) confirms Google can parse the page and detects FAQ items — even though most sites will not get the visual treatment anymore. The Schema Markup Validator (validator.schema.org) does a stricter pure-schema.org syntax check. Then watch Search Console’s “Enhancements” section for any FAQ errors crawls discover over time.

Related tools

Learn more