How do AI engines use FAQPage schema?
When generating an answer, generative models look for the cleanest, most self-contained extractable passages. Because FAQPage schema explicitly marks each question-answer pair, the model gets "this paragraph is the answer to this question" without guessing. That makes your content an ideal source for GPTBot, PerplexityBot, and Google's AI Overview fetchers.
How do you add FAQPage JSON-LD? (Step by step)
- Identify the real question-answer pairs on your page (at least 4 is ideal).
- Place each pair into the mainEntity array of a FAQPage as a Question with an acceptedAnswer.
- Add the JSON-LD block to the page's <head> or <body> as <script type="application/ld+json">.
- Ensure the answers match the visible text on the page word for word (a mismatch is a policy violation).
- Validate with Google's Rich Results Test or a schema validator.
Example structure
The core of FAQPage schema is a mainEntity array; each element is a Question containing an Answer as its acceptedAnswer. The answer text must be identical to the answer shown on the page — putting content in schema that isn't on the page is prohibited.
What are the most common mistakes?
- The schema answer differing from the on-page text (mismatch).
- Adding schema without a visible FAQ on the page.
- Dressing up marketing slogans as "questions" — they aren't real questions.
- Multiple conflicting FAQPage blocks on the same page.
How does Seomatiq automate schema?
When you publish a draft to WordPress in Seomatiq, FAQ and HowTo JSON-LD schema is injected into the content automatically — no hand-written code required. Because the content engine already adds FAQ headings to every article, the schema and the visible text naturally match. For the broader schema strategy, see our GEO platform page.