Skip to content
schemamarkup.info — structured data, better SEOschemamarkup.info — structured data, better SEORules current · 29 Aug

Person schema markup generator

Person markup identifies a human being, usually an author or the subject of a profile page. It produces no rich result on its own, and it is still one of the more useful types to get right.

Reference copy unfinished. The generator below works and produces valid markup. The explanatory sections are still being written, so this page is not listed for search engines yet.

Google Search features this type can produce

From the registry

No Google Search feature maps to this type. The markup is valid schema.org and describes the page correctly, but it does not produce a rich result of its own. Add it for the description, not for a visible change in the results — and treat any guide promising one with suspicion.

Meeting a feature’s documented requirements does not guarantee that the feature appears. No tool can promise that, and any that does is describing something it cannot know.

Generate the markup

Runs in your browser
Person

A bio page on your own site.

One per line. Only profiles they control.

Affiliation
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Person",
  "name": "Jane Okonkwo",
  "url": "https://example.com/authors/jane-okonkwo",
  "jobTitle": "Senior Editor",
  "worksFor": {
    "@type": "Organization",
    "name": "Example Publishing"
  }
}
</script>

Paste this into the <head> of the page it describes. Markup that describes a page must live on that page.

Person is a supporting type, and that is the point

There is no Person rich result. Adding Person markup to a bio page will not change how that page looks in search results, and any guide implying otherwise is describing something that does not exist.

What Person does is make an identity referenceable. An Article whose author is a nested Person node with a name and a url says something a bare string cannot: that this is a specific individual, distinguishable from anyone with a similar name, with somewhere to go to find out who they are. That is the whole job, and it matters most on sites where authorship carries weight.

Give the person an @id and reuse it

A site with twenty articles by one author should define that Person once and reference it by @id from each article, rather than repeating the name, URL and image twenty times. One definition means one place to edit, and it states explicitly that these twenty bylines are the same human rather than twenty coincidences.

sameAs is where corroboration goes: profiles the person genuinely controls, and reference entries about them. A short accurate list is worth more than a long speculative one, and listing profiles they do not control weakens the signal rather than strengthening it.

Mistakes worth avoiding

Person for an organisation

A company is an Organization. Marking a brand as a Person describes something untrue, and the two types carry different properties for good reason.

A bare string where a node belongs

An author given as "Jane Doe" parses fine and identifies nobody. A nested Person node with a url is the version that does work.

jobTitle used as a keyword field

jobTitle is the role the person holds, not a place to list services.

Check what you already have

If the page you are marking up already carries structured data, audit it before adding more. Duplicate entities from a theme and a plugin are the most common finding on established sites, and adding a third block makes it worse rather than better.

Check a page