No author meta tag
What Is This Issue
This issue checks whether article, blog, and editorial pages have a properly configured <meta name="author"> tag that declares the human author of the page’s content.
A passing implementation includes:
- A
<meta name="author">tag in the<head>section of article/blog pages - A meaningful author name (not a placeholder like “admin” or “webmaster”)
- Consistency between the meta tag value and visible byline on the page
Example of correct implementation:
<meta name="author" content="Jane Smith" />This tag supports Google’s E-E-A-T (Experience, Expertise, Authoritativeness, Trustworthiness) signals, particularly for YMYL (Your Money or Your Life) pages like health, finance, or legal content.
Why Is This Important
The author meta tag contributes to content quality signals and SEO:
- Rankings: Google’s E-E-A-T guidelines emphasize credible authorship, especially for YMYL content. Clear authorship signals can positively influence rankings.
- User experience: Users trust content more when they know who authored it, especially for expert advice or opinion pieces.
- AI Search / AEO: AI-powered search systems may use authorship signals to assess content credibility and attribute information correctly.
- Content credibility: Consistent authorship across meta tags, visible bylines, and schema markup demonstrates professionalism and attention to detail.
Resolving this issue improves your SEO health score by strengthening E-E-A-T signals, which is particularly important for content that could impact a user’s health, finances, or safety.
How XeoPix Detects This
XeoPix performs the following checks to detect this issue:
-
Page type detection: The crawler identifies article/blog pages using:
- URL patterns (e.g.,
/blog/,/article/,/post/) - HTML elements (e.g.,
<article>,<time>) - Schema.org markup (e.g.,
Article,BlogPostingtypes)
- URL patterns (e.g.,
-
Meta tag search: For identified article pages, XeoPix looks for a
<meta>tag with the attributename="author". -
Value validation: If the tag is found, XeoPix:
- Checks if the value is empty
- Compares the value against a list of common placeholder strings
- Extracts the visible byline from the page body for comparison
-
Consistency checks: The crawler may also:
- Extract author information from JSON-LD structured data
- Check for
<a rel="author">links on the page - Flag mismatches between meta tag, visible byline, and schema markup
-
Pass/Fail determination:
- Passes: If a meaningful author name is present in the meta tag on article pages, and it’s consistent with other author signals
- Fails: If the meta author tag is missing on article pages, contains a placeholder value, or conflicts with other author information
The detection focuses on whether article pages have credible authorship signals, with extra scrutiny for YMYL content.
How To Fix
Follow these steps to implement the author meta tag correctly:
-
Add the meta author tag to article pages: Place the following line inside the
<head>section of your HTML document on all article, blog, and editorial pages:<meta name="author" content="Author Name" /> -
Use a real author name: Avoid placeholder values like:
adminwebmasterauthortestuserwordpress
-
Ensure consistency: Make sure the author name in the meta tag matches:
- The visible byline on the page
- The author name in schema.org structured data (JSON-LD)
- The author name in any author profile links
-
Mark up with schema.org: For even stronger E-E-A-T signals, also include author information in JSON-LD structured data:
<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Article", "author": { "@type": "Person", "name": "Jane Smith" } } </script> -
Verify implementation:
- Use View Page Source to confirm the tag appears correctly
- Check that the author name is consistent across all page elements
- For YMYL pages, ensure the author is a qualified expert
Note: This tag is most important on article, blog, and editorial pages. It’s not necessary on product pages, contact pages, or other non-editorial content.
What We Store
Storage Level
Page Level — This issue is evaluated for each individual URL.
Database Table / Prisma Model
PageHtmlHeadAudit
Stored Fields
| Field | Type | Description |
|---|---|---|
| authorMetaValue | String? | The content attribute of the author meta tag |
Detection Dependencies
- The following data sources are required to evaluate this issue:
- HTML Document — The crawler parses the HTML head section to find the author meta tag
- Meta Tag Extraction — The
<meta name="author">tag is extracted
Examples
Example 1: Correct Implementation
Scenario: A properly configured article page with author meta tag.
Correct State (Passes):
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="author" content="Jane Smith" />
<title>Article Title</title>
</head>
<body>
<article>
<h1>Article Title</h1>
<p class="byline">By Jane Smith</p>
<p>Article content...</p>
</article>
</body>Example 2: Missing Author Meta Tag on Article Page
Scenario: Article page has no author meta tag.
Problematic State (Fails):
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Article Title</title>
</head>
<body>
<article>
<h1>Article Title</h1>
<p class="byline">By John Doe</p>
<p>Article content...</p>
</article>
</body>Why it fails: Article pages should have an author meta tag to support E-E-A-T signals.
Corrected State (Passes):
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="author" content="John Doe" />
<title>Article Title</title>
</head>
<body>
<article>
<h1>Article Title</h1>
<p class="byline">By John Doe</p>
<p>Article content...</p>
</article>
</body>Example 3: Placeholder Author Name
Scenario: Author meta tag uses a placeholder value.
Problematic State (Fails):
<head>
<meta name="author" content="admin" />
<title>Article Title</title>
</head>
<body>
<article>
<h1>Article Title</h1>
<p class="byline">By Sarah Johnson</p>
<p>Article content...</p>
</article>
</body>Why it fails: “admin” is a placeholder value, not a real author name. This undermines E-E-A-T signals.
Corrected State (Passes):
<head>
<meta name="author" content="Sarah Johnson" />
<title>Article Title</title>
</head>
<body>
<article>
<h1>Article Title</h1>
<p class="byline">By Sarah Johnson</p>
<p>Article content...</p>
</article>
</body>Example 4: Inconsistent Author Information
Scenario: Author meta tag doesn’t match visible byline or schema markup.
Problematic State (Fails):
<head>
<meta name="author" content="J. Smith" />
<script type="application/ld+json">
{
"@type": "Article",
"author": { "@type": "Person", "name": "Jane Smith" }
}
</script>
<title>Article Title</title>
</head>
<body>
<article>
<h1>Article Title</h1>
<p class="byline">By Jane Smith</p>
<p>Article content...</p>
</article>
</body>Why it fails: Inconsistent author names across meta tag (“J. Smith”), schema (“Jane Smith”), and byline (“Jane Smith”) create conflicting signals.
Corrected State (Passes):
<head>
<meta name="author" content="Jane Smith" />
<script type="application/ld+json">
{
"@type": "Article",
"author": { "@type": "Person", "name": "Jane Smith" }
}
</script>
<title>Article Title</title>
</head>
<body>
<article>
<h1>Article Title</h1>
<p class="byline">By Jane Smith</p>
<p>Article content...</p>
</article>
</body>Unit Test
Test File
__tests__/seo-audit-checks/htmlHeadTags/issue-107-meta-name-author.test.js
Purpose
Validates the detection of a missing <meta name="author"> declaration in the HTML <head>. Ensures pages are flagged when the author meta tag is absent, and not flagged when it is present regardless of content value.
Tested Function
runHtmlHeadTags() from toggleGroups/htmlHeadTags.js
Issue Information
- Issue Number: 107
- Issue Code:
META_NAME_AUTHOR - Toggle Group:
htmlHeadTags
Test Scenarios
Positive Test Cases
- Page has
<meta name="author" content="John Doe">— no issue reported - Page has
<meta name="author" content="">(empty content but tag present) — no issue reported - Author meta tag with special characters (
John & Jane Doe) — no issue reported - Author meta tag with unicode characters (
José García) — no issue reported - Malformed HTML with author tag present — no issue reported, no crash
Negative Test Cases
- Page has no author meta tag — issue reported with message
"Meta author tag is missing"
Boundary Cases
None present.
Edge Cases
- Empty HTML (
<html></html>): issue reported (author meta tag is missing) - Malformed HTML: function handles without crashing; correctly detects author tag when present
- Empty content:
content=""is considered present, so no issue reported - Special characters: HTML entities and unicode characters in author content are handled correctly
Expected Outcome
Pass
The issue should be reported when:
- The author meta tag is completely absent from the
<head> - The HTML is empty or has no
<head>section
Fail
The issue should not be reported when:
<meta name="author">is present with any content value (including empty)- The author content contains special characters or unicode
Validation
- Correct detection of missing author meta tag
- Correct handling of present author meta tag with any content value
- Graceful handling of malformed HTML
- Special character and unicode support in author content
- Cache mechanism prevents duplicate issue entries on repeated calls
Related Production Files
toggleGroups/htmlHeadTags.jsissueCodes.js
Coverage Summary
- Positive cases: 4 (standard author, empty content, special chars, unicode)
- Negative cases: 1 (missing author tag)
- Edge cases: 3 (empty HTML, malformed HTML, empty content)
- Cache validation: 1
References
- E-E-A-T and Quality Rater Guidelines — Google Search Central
- Article Schema — Schema.org
- Meta element — MDN