Meet Cortex AI Powered, Expertise Refined Decision EngineYour AI Optimization Engine
Schema

How to Create QAPage Schema for Community Q&A in 2026

Seven chapters covering QAPage vs FAQPage, Question + Answer modeling, acceptedAnswer / suggestedAnswer, upvote counts, when QAPage qualifies for the rich result, and the breakages we see most often.

Jacque Bichara
Jacque Bichara
Founder & Lead Strategist, Capconvert
May 20, 2026Updated May 20, 202610 min read Reviewed by {{REVIEWER_NAME}}, {{REVIEWER_CREDENTIAL}} on May 20, 2026
Who this is for Community sites, support forums, and Q&A platforms (StackExchange-style) where one URL = one user question with one or more user answers.
TL;DR
  • QAPage is for pages where one user asks one question and other users answer. Forums, support communities, ProductHunt-style Q&A. NOT for brand FAQs (use FAQPage).
  • Required: mainEntity as Question with name, text, answerCount, and at least one acceptedAnswer or suggestedAnswer.
  • One Question per page, period. If the page has multiple questions, it's not a QAPage - either split or use a different schema.
  • Answers have an author. Anonymous user-generated answers don't qualify - the rich result requires attribution.
  • Track upvotes with upvoteCount. Google ranks the answer voting for the SERP excerpt.

Chapter 1. Before you start

QAPage is the schema for community-driven Q&A - one user posts a question, other users answer, the community votes on the best answer. Stack Overflow, Quora, Reddit-style threads, and product support communities are the canonical use cases. It's distinct from FAQPage, which is for editorial Q&A authored by the site owner (and which Google restricted to government / healthcare in 2023).

  • Confirm the page is a single user question with user answers. Multi-question support pages aren't QAPage.
  • Confirm both Question and Answer have real authors. Anonymous Q&A isn't eligible.
  • Decide on acceptedAnswer vs suggestedAnswer. The community-voted best answer is acceptedAnswer (one max). Others go in suggestedAnswer (array).
  • Pull upvote counts from your platform. Both Question and Answer can carry upvoteCount.

Chapter 2. QAPage vs FAQPage: the distinction that matters

QAPageFAQPage
Who asks?A real userThe site owner (rhetorical)
Who answers?Other users (community)The site owner
How many questions per page?OneMany
Author required on Q and A?YesNo
Rich result restricted?No site-type restrictionYes - government / healthcare only since 2023
AI engine ingestionYesYes

The single biggest QAPage breakage we see in audits is sites putting QAPage schema on their editorial FAQ pages because they heard FAQPage was restricted. That's not a valid workaround - QAPage explicitly requires user-asked / user-answered content. Shipping QAPage on a brand FAQ is a policy violation that can trigger a manual action.

Chapter 3. Required and recommended properties

{
  "@context": "https://schema.org",
  "@type": "QAPage",
  "@id": "https://forum.example.com/question/how-do-i-validate-jobposting-schema#qapage",
  "mainEntity": {
    "@type": "Question",
    "name": "How do I validate JobPosting schema in 2026?",
    "text": "I'm trying to validate JobPosting schema for our careers page. Schema.org validator passes but Google rich-result test fails. What am I missing?",
    "answerCount": 4,
    "upvoteCount": 12,
    "datePublished": "2026-05-15T10:30:00-05:00",
    "author": {
      "@type": "Person",
      "name": "Jane Smith"
    },
    "acceptedAnswer": {
      "@type": "Answer",
      "text": "The Schema.org validator only checks Schema.org spec compliance. Google's rich-result test additionally checks Google's policy requirements (validThrough, employmentType enum, baseSalary structure). Run both.",
      "upvoteCount": 18,
      "datePublished": "2026-05-15T14:22:00-05:00",
      "author": {
        "@type": "Person",
        "name": "John Doe"
      },
      "url": "https://forum.example.com/question/how-do-i-validate-jobposting-schema#answer-3421"
    },
    "suggestedAnswer": [
      {
        "@type": "Answer",
        "text": "Also check that the JobPosting page itself isn't blocked by robots.txt or noindex meta...",
        "upvoteCount": 7,
        "datePublished": "2026-05-15T15:10:00-05:00",
        "author": { "@type": "Person", "name": "Alex Park" },
        "url": "https://forum.example.com/question/how-do-i-validate-jobposting-schema#answer-3422"
      }
    ]
  }
}

Each Answer has a separate URL (fragment) for deep-linking. Google can choose one Answer to show in the rich result; with multiple suggestedAnswers and varying upvotes, the highest-voted answer typically wins.

Chapter 4. Modeling multiple answers and upvotes

acceptedAnswer = the question asker's chosen / community-marked best answer. Stack Overflow's green-check pattern. Maximum one per Question.

suggestedAnswer = every other answer. Array; can include zero or many. Order doesn't matter; Google ranks by upvoteCount.

If no answer has been accepted yet (open question, no green check), omit acceptedAnswer and put all answers in suggestedAnswer. Don't fake an acceptedAnswer to satisfy the rich-result eligibility; Google detects this and drops the page from the rich result.

Chapter 5. When QAPage qualifies for the rich result

Google's rich-result eligibility for QAPage requires all of:

  • The page hosts user-generated Q&A (forum, community, support board).
  • The question and answers have real human authors with attribution visible on the page.
  • At least one answer exists.
  • The Question and Answer schema matches the visible content character-for-character.
  • The page is not paywalled (no auth wall hiding the Q&A).
  • The Q&A isn't editorial / brand-curated.

The rich result shows the question, the highest-voted answer (or acceptedAnswer), and the answer count. Users click into your community thread to read more.

Chapter 6. Where do you place QAPage schema on the site?

One QAPage per question URL. Convention for forum URLs: /forum/question/{slug} or /q/{id}/{slug}. The QAPage schema lives in the <head> of the question detail page.

Don't ship QAPage on the forum index page (the list of recent questions). That's a list page; use ItemList referencing each QAPage by @id.

Chapter 7. The breakages we see most often

Ranked by frequency across 12 community Q&A audits:

  • QAPage on editorial brand FAQ pages (workaround attempt for the FAQPage restriction). Policy violation. 8 of 12.
  • Question with no author. Anonymous Q&A doesn't qualify. 6 of 12.
  • Multiple questions on one QAPage, violating the one-question rule. 5 of 12.
  • No acceptedAnswer and no suggestedAnswer - the Question has no answers attached. Rich result loses the answer excerpt. 4 of 12.
  • Faking acceptedAnswer by picking one answer arbitrarily even when the community hasn't marked one. 3 of 12.
  • No upvoteCount, removing Google's signal to pick the best answer to surface. 2 of 12.

We track these on running sites through our Sentry structured-data rule set.

FAQ

Can I use QAPage on my brand's editorial FAQ page now that FAQPage is restricted?

No. QAPage explicitly requires user-asked / user-answered content. Using QAPage on editorial Q&A is a policy violation. If your FAQ doesn't qualify for FAQPage (not government / healthcare), accept that you won't get the rich result and use clean H2 / H3 structure instead - AI engines and SGE still parse the content.

What if my question has no answer yet?

Ship Question alone (no acceptedAnswer, no suggestedAnswer). The page is still indexable and may rank organically, but won't qualify for the rich result until at least one answer exists.

Can the author of the Question also answer it?

Yes. The same Person can appear as Question author and Answer author. Self-Q&A is allowed in Stack Overflow tradition; the rich-result eligibility doesn't care who answers.

How do I model the question being edited?

Use dateModified on the Question. The original datePublished stays as the asked date; dateModified reflects the latest edit. Major edits sometimes warrant a new Question record entirely.

Should I include answers from deleted users?

The Answer still exists; mark the author as "anonymous" or "[deleted user]" in the body but include some Person reference. Don't drop the Answer entirely - that breaks the conversation thread and removes upvote signal.

Does QAPage work for product support pages where the company answers?

Borderline. If the support page is truly user-asked + brand-answered (one-off ticket converted to public page), QAPage works. If it's editorial FAQ rebranded as "questions our customers asked", that's FAQPage territory.

References

  1. Schema.org. "QAPage." schema.org/QAPage
  2. Schema.org. "Question." schema.org/Question
  3. Schema.org. "Answer." schema.org/Answer
  4. Google Search Central. "Q&A (QAPage) structured data." developers.google.com/search/docs/appearance/structured-data/qapage
  5. Google Search Central. "Changes to structured data for FAQ and How-To" (September 2023). developers.google.com/search/blog/2023/09/structured-data-changes
  6. Schema.org. "Schema Markup Validator." validator.schema.org