Seenos.ai

Schema Person Markup: Structured Data for Author Authority

Schema.org Person markup structure showing required and recommended properties

Schema Person markup is structured data that validates Expertise in EEAT by telling AI systems who wrote your content. By implementing JSON-LD Person schema, you make author information machine-readable—enabling AI to verify credentials, connect author entities across the web, and build trust in your content's expertise signals.

Key Takeaways

  • JSON-LD format is preferred—easier to implement and recommended by Google
  • Required properties: name, @type; Recommended: image, jobTitle, url, sameAs
  • sameAs links connect author identity across platforms (LinkedIn, Twitter, etc.)
  • Nest Person schema within Article schema for content attribution
  • Validate with Google's Rich Results Test before deployment

What is Person Schema? #

Person schema is a Schema.org vocabulary type that describes a human being. When applied to author profiles, it provides search engines with structured information about who created the content.

While humans read your visible byline and bio, machines parse your Schema markup. Both are essential—the visible elements for user trust, the Schema for algorithmic understanding.

Why JSON-LD?

Google recommends JSON-LD (JavaScript Object Notation for Linked Data) over Microdata or RDFa. JSON-LD sits in a script tag in your page head or body—it's cleaner, easier to maintain, and doesn't require modifying your HTML structure.

Basic Person Schema Implementation #

Here's the minimum viable Person schema for an author:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Person",
  "name": "Jane Smith",
  "url": "https://example.com/authors/jane-smith"
}
</script>

This is technically valid but doesn't maximize the expertise signals. Here's a complete implementation:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Person",
  "name": "Jane Smith",
  "url": "https://example.com/authors/jane-smith",
  "image": "https://example.com/images/jane-smith.jpg",
  "jobTitle": "Senior SEO Consultant",
  "description": "Jane Smith is a Senior SEO Consultant with 12 years of experience in technical SEO and content strategy.",
  "worksFor": {
    "@type": "Organization",
    "name": "Example Company",
    "url": "https://example.com"
  },
  "alumniOf": {
    "@type": "CollegeOrUniversity",
    "name": "Stanford University"
  },
  "sameAs": [
    "https://linkedin.com/in/janesmith",
    "https://twitter.com/janesmith",
    "https://janesmith.com"
  ],
  "knowsAbout": ["SEO", "Content Strategy", "Technical SEO", "Digital Marketing"]
}
</script>

Person Schema Property Reference #

PropertyTypePurpose
nameRequiredFull name of the person
urlRecommendedLink to author page on your site
imageRecommendedURL to author photo
jobTitleRecommendedCurrent professional title
descriptionRecommendedBrief professional bio
worksForRecommendedOrganization affiliation
alumniOfOptionalEducational institution
sameAsRecommendedLinks to other profiles (array)
knowsAboutOptionalTopics of expertise (array)
awardOptionalAwards or honors received

Integrating with Article Schema #

For blog posts and articles, nest Person schema within Article schema using the author property:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "How to Optimize for AI Search",
  "datePublished": "2026-01-21",
  "dateModified": "2026-01-21",
  "author": {
    "@type": "Person",
    "name": "Jane Smith",
    "url": "https://example.com/authors/jane-smith",
    "jobTitle": "Senior SEO Consultant",
    "image": "https://example.com/images/jane-smith.jpg",
    "sameAs": [
      "https://linkedin.com/in/janesmith",
      "https://twitter.com/janesmith"
    ]
  },
  "publisher": {
    "@type": "Organization",
    "name": "Example Company",
    "logo": {
      "@type": "ImageObject",
      "url": "https://example.com/logo.png"
    }
  }
}
</script>
Multiple Authors: For content with multiple authors, use an array for the author property: "author": [{Person 1}, {Person 2}]

The Importance of sameAs Links #

The sameAs property is crucial for entity recognition. It tells search engines: “This person on my site is the same person as these profiles elsewhere.”

Best platforms to include:

  • LinkedIn: Primary professional identity
  • Twitter/X: Thought leadership presence
  • Personal website: Author's own domain
  • Wikidata: If the person has an entry
  • Industry profiles: Moz, GitHub, professional associations

When Google sees consistent identity signals across these platforms, it strengthens the author entity in its knowledge graph.

Validating Your Schema #

Run validation after every change. Common errors include missing commas, incorrect property names, and URL formatting issues.

Common Schema Mistakes #

Using Text Instead of URLs #

// Wrong
"image": "jane-smith.jpg"

// Correct
"image": "https://example.com/images/jane-smith.jpg"

Missing @type in Nested Objects #

// Wrong
"worksFor": {
  "name": "Example Company"
}

// Correct
"worksFor": {
  "@type": "Organization",
  "name": "Example Company"
}

sameAs as String Instead of Array #

// Wrong (single link)
"sameAs": "https://linkedin.com/in/janesmith"

// Correct (always use array)
"sameAs": ["https://linkedin.com/in/janesmith"]

Implementation Summary #

  • Use JSON-LD format in a script tag
  • Include name, url, image, jobTitle, description at minimum
  • Add sameAs links to external profiles
  • Nest Person schema within Article schema for content
  • Validate before deploying

Related guides: Building Author Profiles for AI Search and Byline Best Practices.

Validate Your Author Schema

Check if your Person schema is correctly implemented and recognized by AI systems.

Analyze Your Schema