Issue #148 · important
Issue 148
What is this issue?
Author profile or team member pages are missing Person schema, weakening E-E-A-T signals and preventing attribution of content to a verified, machine-readable author entity.
Without Person schema:
- Search engines can't verify the author's identity and credentials
- E-E-A-T (Experience, Expertise, Authoritativeness, Trustworthiness) signals are weakened
- Content can't be properly attributed to a specific person
- Author information won't appear in rich results
- AI search engines can't understand author expertise and authority
A proper Person schema should include: @type (Person), name, and optionally jobTitle, worksFor, sameAs (social profiles), knowsAbout, image, @id (for entity linking).
Why does it matter?
Person schema is critical for E-E-A-T and content attribution:
- E-E-A-T signals: Creates a machine-readable chain: article → written by → person → works for → organization
- Author attribution: Enables proper attribution of content to specific authors
- Rich results: Author information can appear in article rich results
- AI search readiness: AI engines use Person schema to understand author expertise and authority
- Entity linking: Using
@idenables cross-page entity linking between articles and author profiles - Social proof: Links to LinkedIn and other professional profiles via
sameAsbuild credibility
Resolving this issue improves your SEO health score by strengthening E-E-A-T signals and ensuring proper content attribution.
How to fix it
-
Create author profile pages: Create dedicated pages for each author at URLs like
/author/nameor/team/member-name -
Add Person JSON-LD structured data to author profile pages:
{ "@context": "https://schema.org", "@type": "Person", "@id": "https://www.example.com/author/jane-smith", "name": "Jane Smith", "jobTitle": "Senior SEO Analyst", "worksFor": { "@type": "Organization", "name": "Example Corp" }, "knowsAbout": ["SEO", "Structured Data", "Technical SEO"], "sameAs": [ "https://linkedin.com/in/janesmith", "https://twitter.com/janesmith" ] } -
Include recommended properties:
name: Author's full namejobTitle: Professional titleworksFor: Organization the author works for (link to Organization schema)sameAs: Array of URLs to social profiles (LinkedIn, Twitter, etc.)knowsAbout: Array of topics/expertise areas@id: Unique identifier for entity linking (use author profile URL)
-
Link from Article schema: In your Article schema, reference the Person entity:
"author": { "@type": "Person", "@id": "https://www.example.com/author/jane-smith" } -
Validate with Google's Rich Results Test
Examples
Example 1: Missing Person Schema on Author Page
Problematic state:
<!-- Author page without Person schema -->
<html>
<head>
<title>Jane Smith - Author</title>
</head>
<body>
<h1>Jane Smith</h1>
<p>Senior SEO Analyst at Example Corp</p>
<p>Expertise: SEO, Structured Data, Technical SEO</p>
<a href="https://linkedin.com/in/janesmith">LinkedIn</a>
</body>
</html>
Corrected state:
<!-- Author page with Person schema -->
<html>
<head>
<title>Jane Smith - Author</title>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Person",
"@id": "https://www.example.com/author/jane-smith",
"name": "Jane Smith",
"jobTitle": "Senior SEO Analyst",
"worksFor": {
"@type": "Organization",
"name": "Example Corp"
},
"knowsAbout": ["SEO", "Structured Data", "Technical SEO"],
"sameAs": [
"https://linkedin.com/in/janesmith",
"https://twitter.com/janesmith"
]
}
</script>
</head>
<body>
<h1>Jane Smith</h1>
<p>Senior SEO Analyst at Example Corp</p>
<p>Expertise: SEO, Structured Data, Technical SEO</p>
<a href="https://linkedin.com/in/janesmith">LinkedIn</a>
</body>
</html>
Example 2: Person Schema Without Entity Linking
Problematic state:
{
"@context": "https://schema.org",
"@type": "Person",
"name": "John Doe",
"jobTitle": "Content Writer"
}
Missing @id for entity linking and worksFor for organization connection
Corrected state:
{
"@context": "https://schema.org",
"@type": "Person",
"@id": "https://www.example.com/author/john-doe",
"name": "John Doe",
"jobTitle": "Content Writer",
"worksFor": {
"@type": "Organization",
"@id": "https://www.example.com",
"name": "Example Corp"
},
"sameAs": ["https://linkedin.com/in/johndoe"]
}
Example 3: Linking Article to Person Schema
Corrected state - Article with author reference:
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "SEO Best Practices for 2024",
"author": {
"@type": "Person",
"@id": "https://www.example.com/author/jane-smith"
},
"publisher": {
"@type": "Organization",
"@id": "https://www.example.com",
"name": "Example Corp"
}
}
The @id in author references the Person schema on the author's profile page
How PixyScan detects this
PixyScan follows these logical steps to detect missing Person schema:
-
Detect author/team pages: The crawler identifies pages with:
- URL patterns (
/author/,/team/,/bio/,/about/) - Visible author information (byline, author bio section)
- Team member profiles
- URL patterns (
-
Extract structured data: The crawler looks for JSON-LD, Microdata, or RDFa blocks on the page
-
Check for Person schema: The crawler verifies if any schema block has:
@typeset toPerson- Required property:
name
-
Validate schema completeness: If Person schema is found, the crawler checks for:
jobTitlepropertyworksForlinking to Organization entitysameAslinking to social profilesknowsAboutexpertise topics@idfor entity linking
-
Trigger conditions: The issue is flagged when:
- Author/team page doesn't have Person schema
- Person schema exists but is missing
nameproperty