What Is QAPage Schema?
The QAPage type describes the page document. Its mainEntity is one Question containing the full question text, author, date and answer relationships. One answer may be accepted when the platform genuinely supports that state, while other responses remain suggestedAnswer values.
QAPage is not a generic label for any page that answers a question. It does not fit publisher-authored FAQs, how-to guides, essays or blog posts where users cannot add alternative answers. Markup does not prove an answer is correct or guarantee a special search appearance.
- Identify the exact page, asset, entity or relationship described in this section.
- Inspect the live implementation and retain the observed evidence.
- Compare the observation with the intended meaning and its primary specification.
- Correct any mismatch, then retest the live result.
- Record the accountable owner and review date.
| Node or property | Represents | Evidence source |
|---|---|---|
| QAPage | Question page document | Canonical Q&A URL |
| mainEntity | Single primary Question | Visible page focus |
| Question.name | Complete question title | Rendered question |
| Question.text | Question body | Visible user content |
| acceptedAnswer | Platform-selected accepted response | Acceptance event |
| suggestedAnswer | Other submitted responses | Public answer records |
| answerCount | Total relevant answers | Moderated answer ledger |
| upvoteCount | Platform vote total | Voting system |
| author | Question or answer creator | Public account record |
- Use one primary user question.
- Require a real answer-submission mechanism.
- Preserve visible authorship and answer states.
Primary specification: Schema.org definition for QAPage.
QAPage schema represents one community-answerable question, not any informational page written in question form.
How Does QAPage Schema Work?
A parser reads the question and follows acceptedAnswer and suggestedAnswer relationships. Answer URLs or fragments can resolve to the exact contribution. Creator nodes may connect to public profiles, while voting and answer counts should derive from the hosting platform’s authoritative event records.
The graph must follow the public interface and moderation state. If an accepted answer changes, the relationships need to update. Syntax validation cannot confirm that users can actually submit answers, that a vote count is real or that the accepted response remains visible.
- The exact page, asset, entity or relationship covered by this section
- The live implementation rather than an editor-only preview
- The primary specification or first-party record defining the expected behavior
- The validation result, accountable owner and review date
| Stage | Graph action | Failure example |
|---|---|---|
| Scope | Select one primary Question | Several unrelated questions merged |
| Attribute | Connect question author | Publisher substituted for user |
| Answer | Nest submitted responses | Publisher copy presented as UGC |
| Accept | Identify genuine selected answer | Highest vote assumed accepted |
| Count | Use moderated answer ledger | Deleted spam included |
| Link | Set stable contribution URLs | Fragments do not resolve |
| Maintain | Sync votes and status | Old accepted answer remains marked |
- Confirm users can submit answers.
- Map the single question and author.
- Connect visible responses.
- Apply real accepted or suggested states.
- Validate counts, URLs and moderation.
The graph works when one visible question connects to the same public answers, creators, votes and acceptance state users encounter.
QAPage vs FAQPage vs DiscussionForumPosting
A technical support community thread asking one specific question fits QAPage when members can contribute answers. A company billing FAQ fits FAQPage when current eligibility and purpose justify markup. An open discussion about preferred SEO workflows fits DiscussionForumPosting because participants exchange perspectives rather than answer one defined question.
Classify the interaction, not the wording. A heading ending in a question mark does not make a QAPage. Pages can contain comments without becoming community Q&A, and product pages with several questions are not one QAPage.
- Identify the exact page, asset, entity or relationship described in this section.
- Inspect the live implementation and retain the observed evidence.
- Compare the observation with the intended meaning and its primary specification.
- Correct any mismatch, then retest the live result.
- Record the accountable owner and review date.
| Page pattern | Correct model | Key test |
|---|---|---|
| One question accepting user answers | QAPage | Can users submit alternatives? |
| Multiple publisher FAQs | FAQPage when justified | Publisher controls answers |
| General community conversation | DiscussionForumPosting | Not one answerable question |
| Publisher blog answering a query | Article | No user answer model |
| How-to tutorial | HowTo or Article context | Ordered instruction |
| Product page with FAQ section | Product plus FAQPage when appropriate | Several controlled FAQs |
| Single product review | Review context | Evaluation, not answer |
| Search results page | Neither | Generated navigation |
- Count the primary questions.
- Identify who can create answers.
- Separate Q&A from discussion and editorial content.
Choose the type from who controls the answers and whether the page centers on one question, many FAQs or open discussion.
Which QAPage Properties Matter Most?
The Question should include the full wording visible on the page. Each Answer needs the complete answer text or represented media, its creator and publication date where supported. Use acceptedAnswer only when a real platform action establishes that status; otherwise keep responses as suggestedAnswer.
Counts and votes are optional only when they can be reproduced. Stable URLs help users and parsers reach individual answers. Creator identities can reference the author profiles described in ProfilePage schema.
- The exact page, asset, entity or relationship covered by this section
- The live implementation rather than an editor-only preview
- The primary specification or first-party record defining the expected behavior
- The validation result, accountable owner and review date
| Property | Priority | Audit question |
|---|---|---|
| mainEntity | Required page relationship | Is one Question the primary focus? |
| Question.name | High | Is the complete question title present? |
| Question.text | Useful | Does it match the visible body? |
| answerCount | High when used | Does it match moderated public answers? |
| acceptedAnswer | Conditional | Was this response genuinely selected? |
| suggestedAnswer | High for alternatives | Are all relevant public answers included? |
| Answer.text | High | Is the complete response represented? |
| author | High | Does it identify the real contributor? |
| upvoteCount | Optional | Can the platform reproduce the total? |
- Set the page and Question relationship.
- Include complete visible question content.
- Map every relevant public answer.
- Preserve accepted and suggested status.
- Add only authoritative counts.
Prioritize complete question and answer content, truthful response status and stable identity before adding popularity metrics.
How Should Accepted and Suggested Answers Be Modeled?
Acceptance and voting are different signals. A question author or moderator may accept an answer, while the community may vote another response higher. Do not infer acceptance from rank, display position or editorial preference unless that is the documented product behavior.
When acceptance changes, the previous response should return to suggested status if it remains visible. Deleted, hidden or quarantined answers should not remain in the public graph. A page with no accepted answer can still represent suggested answers truthfully.
- Identify the exact page, asset, entity or relationship described in this section.
- Inspect the live implementation and retain the observed evidence.
- Compare the observation with the intended meaning and its primary specification.
- Correct any mismatch, then retest the live result.
- Record the accountable owner and review date.
| Answer state | Schema relationship | Quality rule |
|---|---|---|
| Formally accepted response | acceptedAnswer | One genuine active selection |
| Other public response | suggestedAnswer | Visible and relevant |
| Highest-voted but not accepted | suggestedAnswer | Votes do not create acceptance |
| Acceptance revoked | Return to suggested or remove by state | Update graph promptly |
| Deleted answer | Omit public content | No text leak |
| Pending moderation | Do not expose publicly | Respect workflow |
| Spam answer | Exclude after moderation | Do not inflate answerCount |
| No accepted answer | Suggested answers only | Do not manufacture selection |
- Keep acceptance separate from popularity.
- Update state changes promptly.
- Exclude nonpublic and removed responses.
Answer relationships should mirror the platform’s explicit acceptance state rather than guessing from votes or order.
How Should Votes, Counts and Authors Be Marked Up?
answerCount should follow a documented definition: public answers that remain relevant to the question. Comments on answers, deleted posts and spam should not silently inflate it. upvoteCount should represent the supported positive vote behavior rather than net score unless the platform’s displayed and structured definitions match.
Author URLs can point to canonical public profiles, and stable identifiers can survive handle changes. Anonymous accounts should remain anonymous. Do not expose email addresses, private IDs or moderation details in structured data.
- The exact page, asset, entity or relationship covered by this section
- The live implementation rather than an editor-only preview
- The primary specification or first-party record defining the expected behavior
- The validation result, accountable owner and review date
| Field | Authoritative source | Avoid |
|---|---|---|
| answerCount | Moderated public answer records | Counting comments as answers |
| upvoteCount | Positive vote event ledger | Estimated popularity |
| datePublished | Contribution creation record | Latest edit time |
| dateModified | Meaningful public edit record | Every database save |
| author.name | Public display name | Private legal name |
| author.url | Canonical public profile | Session or admin URL |
| identifier | Stable public-safe account ID | Email or secret database key |
| anonymous state | Platform public representation | Deanonymization |
- Define answers and votes operationally.
- Compute metrics from authoritative events.
- Resolve stable public creator identities.
- Protect private and anonymous data.
- Test changes after moderation and edits.
Platform metrics are credible only when their definitions, sources and public display remain synchronized and privacy-safe.
How Do Canonicals and Pagination Affect Q&A Pages?
A long question may span multiple pages of answers. Each paginated state needs navigable URLs when its content is intended for discovery. The Question remains one entity, and answer permalinks should resolve reliably even if sorting or pagination changes.
Do not canonicalize away unique later answers without understanding the indexing effect. Infinite scroll needs a crawlable fallback. Sort modes such as newest, votes or activity should not create new Question IDs. Duplicate questions may require moderation, redirects or canonical decisions grounded in which thread remains active.
- Identify the exact page, asset, entity or relationship described in this section.
- Inspect the live implementation and retain the observed evidence.
- Compare the observation with the intended meaning and its primary specification.
- Correct any mismatch, then retest the live result.
- Record the accountable owner and review date.
| URL case | SEO handling | Schema handling |
|---|---|---|
| Single-page question | Self-canonical | One stable Question node |
| Paginated answers | Crawlable page sequence | Preserve Question identity |
| Vote sort parameter | Canonical preferred view | No new Question @id |
| Tracking parameter | Canonical clean URL | Ignore campaign value |
| Answer permalink | Resolve to visible answer | Stable Answer URL |
| Infinite scroll | Provide crawlable fallback | Answers discoverable without interaction |
| Duplicate question | Merge, redirect or canonical by policy | Consolidate surviving identity |
| Deleted question | Truthful status and user path | Remove active QAPage claims |
- Preserve one canonical question identity.
- Keep important answers crawlable.
- Consolidate sort and tracking variants.
Keep one Question identity across URL variants while preserving crawlable access to valuable public answers.
What QAPage Schema Mistakes Are Common?
Templates can also emit both QAPage and DiscussionForumPosting for the same primary entity without a clear relationship. Cached markup may lag behind moderation, leaving wrong counts or removed answers. Mobile and desktop renderers can expose different answer sets.
Quality and safety rules apply beyond syntax. User-generated answers can be false, dangerous, abusive or promotional. Markup must not bypass moderation or present every contribution as endorsed by the site.
- The exact page, asset, entity or relationship covered by this section
- The live implementation rather than an editor-only preview
- The primary specification or first-party record defining the expected behavior
- The validation result, accountable owner and review date
| Mistake | Risk | Correction |
|---|---|---|
| Publisher FAQ marked QAPage | No user answer model | Use FAQPage when appropriate |
| Blog post marked QAPage | Wrong content origin | Use Article |
| Several questions in one mainEntity | Ambiguous page focus | One Question per QAPage |
| Top vote inferred as accepted | False platform state | Use explicit acceptance event |
| Spam included in answerCount | Inflated participation | Use moderated ledger |
| Deleted answer text retained | Privacy or safety leak | Sync public graph |
| Two competing primary types | Conflicting model | Choose truthful interaction |
| Sort URL creates new ID | Fragmented question entity | Canonicalize variants |
- Confirm one user-answerable question.
- Compare answer and acceptance states.
- Reconcile counts with moderation.
- Test privacy and deletion behavior.
- Consolidate canonical identities.
QAPage quality depends on truthful interaction modeling, moderation integrity and stable question identity - not property volume.