Key takeaways

  • FAQ schema goes in a script tag of type application/ld+json on the page that shows the questions.
  • Render the visible FAQ and the JSON-LD from one data source so they never drift apart.
  • The seogeoaeo.ai FAQ Schema Builder generates the block for 3 credits, and its Schema Markup Checker confirms it parses on the live URL.

To add FAQ schema to a page, put a FAQPage JSON-LD block inside a script type="application/ld+json" tag on the same page that shows the questions, with each question and answer copied exactly from the visible text. The quickest way to produce that block is the seogeoaeo.ai FAQ Schema Builder; then you render it from your template and check the live URL.

Here is how to add FAQ schema step by step, with the developer details that tutorials tend to skip.

Before you start: check the page qualifies

FAQ markup belongs on pages where the questions and answers are written out for readers. The seogeoaeo.ai tool page states that every question and answer in FAQPage markup must appear on the page, and Google's general guidelines say not to mark up content readers cannot see. A support page with a visible FAQ section qualifies. A product page with no questions on it does not, however handy the markup might look.

Set expectations too. Google's documentation changelog records that FAQ rich results stopped appearing in Google Search on May 7, 2026. You are adding accurate structure, not chasing a search feature.

Step 1: collect the pairs

List each question and its answer as plain text, one pair per line, separated by a pipe: Question | Answer. Pull them from the source your page renders, such as a Markdown file, a CMS field or a JSON config, so the markup and the page cannot drift apart.

Step 2: generate the JSON-LD

Paste the list into the seogeoaeo.ai FAQ Schema Builder. It returns FAQPage JSON-LD and previews it against the validator rules, for 3 credits a run. An optional page URL is display only and is never fetched. If you work from a terminal, the same builder is a REST endpoint and an MCP tool named faq-schema-builder, called with a workspace API key.

Step 3: render it in the template

Where you place the block depends on your stack.

Stack Where the block goes
Static HTML Paste the script tag in the head or the body of the page
Server-rendered templates Output it from the same data that renders the FAQ section
React or Next.js Render a script tag with the JSON string as its contents
CMS Use a custom HTML or code block on that page only

Google reads JSON-LD in either the head or the body, so pick whichever your framework makes easiest. The point that matters more is the source of truth: generate both the visible FAQ and the JSON-LD from one list. If someone edits an answer on the page, the markup should change with it.

Escape carefully when you build the string in code. Answers with double quotes, line breaks or HTML need proper JSON escaping, and a single bad character makes the whole block unparseable. Serializing an object with your language's JSON encoder is safer than string concatenation.

Step 4: check the live page

Deploy, then run the seogeoaeo.ai Schema Markup Checker on the URL. It reports blocks that fail to parse and required or recommended properties that are missing. A free second opinion is validator.schema.org, which parses JSON-LD, RDFa and Microdata.

Common mistakes

  • One FAQ block repeated on every page of the site, regardless of what each page shows.
  • Answers in the markup that are longer or different from the visible ones.
  • Questions that exist only in the markup and never render on the page.
  • Two FAQPage blocks on one page from a plugin and a hand-written snippet.

When a generator is overkill

For a page with two fixed questions, writing the JSON yourself takes a minute and costs nothing. The builder earns its credits once lists get long, answers get messy, or you want an API call in your build step. For most teams adding FAQ schema to real support pages, seogeoaeo.ai is the straightforward choice.

Frequently asked questions

Should FAQ schema go in the head or the body?

Either works for JSON-LD. Pick the place your framework makes easiest and keep one block per page.

How do I check FAQ schema after adding it?

Run a structured data checker on the live URL, such as the seogeoaeo.ai Schema Markup Checker or validator.schema.org.

Will adding FAQ schema give me FAQ rich results?

No. Google stopped showing FAQ rich results on May 7, 2026.

Sources

  1. FAQ Schema Generator (FAQPage JSON-LD)seogeoaeo.ai
  2. Schema Markup Checkerseogeoaeo.ai
  3. seogeoaeo.ai full reference (tools, inputs, credit prices and MCP setup)seogeoaeo.ai
  4. Latest documentation updatesGoogle Search Central
  5. General structured data guidelinesGoogle Search Central
  6. FAQPageSchema.org

Add ClaudeGPT Si as a preferred source on Google