Article missing section and tag metadata
What Is This Issue
The article:section and article:tag meta tags specify the category and topics of an article or blog post. These help social platforms and users understand the content context and subject matter.
This issue checks whether your page has article:section and article:tag tags implemented (for article-type content). A passing implementation must include:
article:section- The category or section the article belongs toarticle:tag- One or more topic tags relevant to the article content
Example of passing implementation:
<meta property="og:type" content="article" />
<meta property="article:section" content="Technology" />
<meta property="article:tag" content="SEO" />
<meta property="article:tag" content="Social Media" />
<meta property="article:tag" content="Open Graph" />Why Is This Important
The article:section and article:tag tags are valuable for content categorization and discovery:
- Content categorization: Helps platforms understand article topics
- Topic signals: Reinforces the main subjects covered in the content
- Content discovery: Platforms may use tags to recommend related content
- User context: Readers can quickly understand article subject matter
- AI Search / AEO: AI systems use section and tag information for topic modeling
Without these tags:
- Articles lack explicit topic categorization
- Missed opportunity for content recommendations
- Reduced context for social platforms and AI systems
Resolving this issue improves content categorization in social sharing and contributes to a higher overall SEO health score by providing topic metadata.
How XeoPix Detects This
XeoPix checks for article:section and article:tag tags by:
- Fetching the page HTML after following all redirects
- Identifying article pages: Checking if
og:typeis “article” or page appears to be article-like - Parsing the
<head>section to extract meta tags withproperty="article:section"andproperty="article:tag" - Validating presence: Checks that at least
article:sectionexists on article pages - Validating content: Ensures tags have non-empty values
- Flagging the issue if these tags are missing on article pages or are empty
The detection is performed on the raw HTML response without JavaScript execution, matching how social media crawlers see your pages.
How To Fix
-
Add
article:sectionandarticle:tagtags to your HTML<head>section (for articles):article:section: Use one main category (e.g., “Technology”, “Health”, “Business”)article:tag: Add multiple relevant topics (add separate tag for each)
-
Only use for article-type content:
- Set
og:typeto “article” on pages with these tags - Don’t add to homepage, product pages, or non-article content
- Set
-
Choose relevant values:
- Section: Use broad, high-level categories
- Tags: Use specific, relevant topics covered in the article
- Keep values concise and consistent across your site
-
Test your implementation:
- Use Facebook Sharing Debugger to verify section and tags are detected
- Check that topic information displays correctly on social platforms
What We Store
Storage Level
Page Level
Database Table / Prisma Model
SocialOpenGraphData
Stored Fields
| Field | Type | Description |
|---|---|---|
| ogArticleSection | String? | Open Graph article section (og:article:section) |
| ogArticleTags | String[] | Open Graph article tags (og:article:tag) |
Detection Dependencies
- HTML Document
- Meta Tags (og:article:section, og:article:tag)
Examples
Example 1: Missing Article Section and Tags
Problematic state (what fails):
<meta property="og:type" content="article" />
<!-- Missing article:section and article:tag tags -->Corrected state (what passes):
<meta property="og:type" content="article" />
<meta property="article:section" content="Technology" />
<meta property="article:tag" content="SEO" />
<meta property="article:tag" content="Social Media" />Example 2: Only Section, Missing Tags
Problematic state (what fails):
<meta property="og:type" content="article" />
<meta property="article:section" content="Technology" />
<!-- Missing article:tag -->Corrected state (what passes):
<meta property="og:type" content="article" />
<meta property="article:section" content="Technology" />
<meta property="article:tag" content="SEO" />
<meta property="article:tag" content="Social Media" />Example 3: Non-Article Page with Section/Tag
Problematic state (what fails):
<meta property="og:type" content="website" />
<meta property="article:section" content="Technology" />
<!-- Should not be on non-article pages -->Corrected state (what passes):
<meta property="og:type" content="website" />
<!-- Remove article tags from non-article pages -->Unit Test
Test File
xeopix-crawling-v2/__tests__/seo-audit-checks/socialOpenGraph/issue-126-article-section-article.test.js
Purpose
Validates that the crawler detects article pages missing both article:section and article:tag metadata.
Tested Function
runSocialOpenGraph()
Issue Information
- Issue Number: 126
- Issue Code:
article_section_article - Toggle Group:
socialOpenGraph
Test Scenarios
Positive Test Cases
- Page is an article (
og:type="article") andarticle:sectionis present → no issue detected. - Page is an article (
og:type="article") andarticle:tagis present (multiple tags) → no issue detected. - Page is not an article (e.g.,
og:type="website") → no issue detected.
Negative Test Cases
- Page is an article (
og:type="article") and botharticle:sectionandarticle:tagare missing → issue detected with message"Article section and tag metadata is missing".
Boundary Cases
No boundary cases exist in the test.
Edge Cases
- Empty HTML: The function handles an empty string without throwing.
Expected Outcome
Pass
The issue should not be reported when either the page is not an article type, or at least one of article:section or article:tag is present on an article page.
Fail
The issue should be reported when the page is an article type and both article:section and article:tag are missing.
Validation
- Correctly detects missing article section and tag metadata.
- Validates that
article:sectionalone satisfies the requirement. - Validates that
article:tagalone satisfies the requirement. - Does not report a false positive on non-article pages.
- Handles empty HTML gracefully without crashing.
Related Production Files
xeopix-crawling-v2/toggleGroups/socialOpenGraph.jsxeopix-crawling-v2/issueCodes.js
Coverage Summary
- Covers present and missing article section/tag scenarios.
- Validates that either
article:sectionorarticle:tagis sufficient. - Validates non-article pages are ignored.
- Includes resilience test for empty input.
References
- Open Graph Protocol - Article — Open Graph Protocol
- Facebook Article Markup — Facebook Developers
- Schema.org - Article — Schema.org