Person
The Person schema type represents an individual person. It enables search engines to display rich information about team members, authors, founders, and other individuals in knowledge panels and search results.
About Person
Person schema is critical for establishing author authority and E-E-A-T (Experience, Expertise, Authoritativeness, Trustworthiness) signals. Google uses Person markup to connect authors to their content, display knowledge panels, and verify expertise. The sameAs property links a person's identity across platforms, helping search engines build a comprehensive entity profile. This is especially valuable for content creators, thought leaders, and professionals.
Fields
| Field | Type | Required | Description |
|---|---|---|---|
name | string | ✓ | The full name of the person. |
jobTitle | string | — | The person's job title or role (e.g. Software Engineer, CEO). |
url | string | — | The person's personal website or profile URL. |
imageUrl | string | — | URL of the person's profile photo or headshot. Maps to the image property in JSON-LD output. |
sameAs | string | — | URLs of social media profiles and other authoritative pages about this person. |
worksFor.name | string | — | The name of the organization the person works for. |
email | string | — | Email address of the person. |
faxNumber | string | — | Fax number of the person. |
telephone | string | — | Phone number of the person. |
description | string | — | A short bio or description of the person. |
gender | string | — | Gender of the person. |
birthDate | date | — | Date of birth of the person. |
address.streetAddress | string | — | Street address of the person. |
address.addressLocality | string | — | City of the person's address. |
address.addressCountry | string | — | Country code of the person's address, e.g. "US". |
Plugin Registration
import { defineConfig } from 'sanity'
import { schemaOrgPersonPlugin } from 'sanity-plugin-seofields/schema'
export default defineConfig({
// ... your sanity config
plugins: [
schemaOrgPersonPlugin(),
],
})Schema Usage
Add the schemaOrgPerson field to any document schema:
import { defineField, defineType } from 'sanity'
export default defineType({
name: 'page',
title: 'Page',
type: 'document',
fields: [
// ... your other fields
defineField({
name: 'schemaOrgPerson',
title: 'Person Schema',
type: 'schemaOrgPerson',
}),
],
})GROQ Query
*[_type == "yourDocument"][0]{
schemaOrgPerson {
name,
jobTitle,
url,
imageUrl,
sameAs,
worksFor {
name
},
email,
faxNumber,
telephone,
description,
gender,
birthDate,
address {
streetAddress,
addressLocality,
addressCountry
}
}
}Next.js Component
import { PersonSchema } from 'sanity-plugin-seofields/schema/next'
export default function Layout({ data }) {
return <PersonSchema data={data.schemaOrgPerson} />
}JSON-LD Output
{
"@context": "https://schema.org",
"@type": "Person",
"name": "Jane Doe",
"jobTitle": "Senior Software Engineer",
"url": "https://janedoe.dev",
"image": "https://example.com/jane-photo.jpg",
"sameAs": "https://linkedin.com/in/janedoe",
"worksFor": {
"@type": "Organization",
"name": "Acme Corp"
},
"email": "jane@janedoe.dev",
"faxNumber": "+1-555-123-4567",
"telephone": "+1-555-987-6543",
"description": "Full-stack developer specializing in React and Node.js with 10 years of experience.",
"gender": "Female",
"birthDate": "1990-06-15",
"address": {
"@type": "PostalAddress",
"streetAddress": "123 Main St",
"addressLocality": "San Francisco",
"addressCountry": "US"
}
}Last updated: May 27, 2026. Tested with: Sanity Studio v3, v4, and v5.
Was this page helpful?