Person Schema Generator
Create Person and ProfilePage JSON-LD for author, About, and team pages, with photo checks, clean sameAs links, and credentials. Auto-fill it from your page.
- Free
- No sign-up
- Runs in your browser
- Updated
Works with author pages, About pages, and team member pages. The tool reads existing Person or ProfilePage JSON-LD, Open Graph profile tags, the author photo, and social profile links in the page content. Nothing is uploaded.
Your JSON-LD
How to use the Person Schema Generator
-
Choose what to create
Pick ProfilePage + Person for an author, About, or team member page, or Person only to use the person elsewhere, such as your homepage.
-
Auto-fill from the page
Click Auto-fill from page HTML and paste the profile page's source (Ctrl + U). The form fills itself from existing schema, meta tags, the author photo, and profile links. Or type the details in.
-
Add the photo and bio
Enter a real photo URL; the tool loads it and checks the size. Add a one- or two-sentence bio that matches the page.
-
List the person's profiles
Add their LinkedIn, X, GitHub, ORCID, or Wikipedia profiles, one per line. Share links, tracking parameters, and duplicates are flagged or removed.
-
Copy and test the code
Copy the script tag into the profile page, then click Check in the JSON-LD Validator to test it.
Example: ProfilePage schema for an author page
An author page for a data scientist, with her photo, bio, employer linked to the site's Organization, three areas of expertise, a school, a certification, and two profiles. This is the JSON-LD the person schema generator creates.
What to create: ProfilePage + Person
Name: Maya Chen
Profile URL: https://www.example.com/authors/maya-chen/
Bio: Data scientist who writes about demand forecasting
and retail analytics.
Photo: https://www.example.com/images/maya-chen.jpg
Job title: Head of Data Science
Works for: Example Analytics (runs this website)
Knows about: Demand forecasting, Time series analysis,
Retail analytics
Education: Example University
Credential: Professional Forecasting Certificate,
issued by Example Institute
Profiles: LinkedIn, GitHub
Profile created: 6 February 2023
Last edited: 28 September 2026
{
"@context": "https://schema.org",
"@type": "ProfilePage",
"@id": "https://www.example.com/authors/maya-chen/",
"url": "https://www.example.com/authors/maya-chen/",
"dateCreated": "2023-02-06",
"dateModified": "2026-09-28",
"mainEntity": {
"@type": "Person",
"@id": "https://www.example.com/authors/maya-chen/#person",
"name": "Maya Chen",
"url": "https://www.example.com/authors/maya-chen/",
"image": "https://www.example.com/images/maya-chen.jpg",
"description": "Data scientist who writes about demand forecasting and retail analytics.",
"jobTitle": "Head of Data Science",
"worksFor": {
"@type": "Organization",
"@id": "https://www.example.com/#organization",
"name": "Example Analytics",
"url": "https://www.example.com/"
},
"knowsAbout": [
"Demand forecasting",
"Time series analysis",
"Retail analytics"
],
"alumniOf": {
"@type": "EducationalOrganization",
"name": "Example University",
"url": "https://www.example.org/"
},
"hasCredential": {
"@type": "EducationalOccupationalCredential",
"name": "Professional Forecasting Certificate",
"credentialCategory": "certification",
"recognizedBy": {
"@type": "Organization",
"name": "Example Institute",
"url": "https://www.example.net/"
}
},
"sameAs": [
"https://www.linkedin.com/in/example",
"https://github.com/example"
]
}
}
The Person gets its own @id (#person), so articles can point to it as their author. worksFor refers to the site's Organization by #organization. The dates describe the profile itself, not the latest article.
This person schema generator creates Person and ProfilePage JSON-LD for author pages, About pages, and team member pages. It follows Google’s profile page documentation and its author markup best practices. Paste the page’s HTML to fill in the name, photo, bio, and social profiles automatically, and the tool checks the photo size, cleans up profile links, and flags names Google would misread.
What is person schema?
Person schema is structured data that describes a real person: their name, photo, job, employer, expertise, and profiles on other sites. ProfilePage is the page-level wrapper that tells Google a whole page is about that person, with the Person as its mainEntity.
Google uses ProfilePage markup to understand creators who share first-hand perspectives, such as authors, forum members, and experts, and it mentions the Discussions and forums feature as one place this information is used. Person schema on its own is also how your Article schema identifies who wrote each article. Neither creates a visual rich result by itself, and neither is a ranking boost; they help Google connect content to the right person.

ProfilePage schema or Person only?
Google lists author pages on news sites, About Me pages on blogs, employee pages on company websites, and user profiles on forums or social sites as valid profile pages. A store homepage or a page reviewing other organizations is not one. Use this table to choose:
| Page | What to use | Why |
|---|---|---|
| Author page or author archive | ProfilePage + Person | The page is mainly about one writer, so ProfilePage fits exactly. |
| About page of a personal blog or portfolio | ProfilePage + Person | Google names “About Me” pages on blogs as a valid use. |
| Team member or employee page | ProfilePage + Person | One person, affiliated with the site, is the focus of the page. |
| Homepage of a personal website | Person only, in your homepage graph | The homepage is about the whole site; point the WebSite to the Person instead. |
| Inside an article | Person as the article’s author | Use a short author object, or a reference to the Person by @id. |
The person schema generator’s What to create menu switches between the two. In ProfilePage mode it also adds the profile’s created and last edited dates, a site user ID, and profile statistics.
What Google requires for ProfilePage schema
ProfilePage schema has one required property: mainEntity, a Person or Organization with a name. If a handle is the only name the page shows, alternateName can stand in. Everything else is recommended:
- dateCreated and dateModified on the ProfilePage. The modified date should reflect a person editing the profile, not new articles appearing on it.
- alternateName for a handle, such as @mayachen, when the real name is also used.
- description for the person’s byline or credential.
- identifier for a stable ID on your site that survives name or handle changes.
- image for a real photo of at least 50,000 pixels. If there is no photo, leave it out: Google asks you not to use a default icon or placeholder.
- sameAs for the person’s profiles on other sites.
- interactionStatistic and agentInteractionStatistic for counts shown on the page, such as followers, posts written, or likes.
The person schema generator scores your markup against these recommendations and shows exactly which ones are missing. Each check is a link that takes you to the field to fix.
Connecting author schema to your articles
The strongest setup gives the person one @id, defined on their profile page, and points to it from every article. That way the details live in one place, and Google sees one consistent person across your site. The generator creates the @id automatically as the profile URL plus #person:
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "How to forecast seasonal demand",
"author": {
"@type": "Person",
"@id": "https://www.example.com/authors/maya-chen/#person",
"name": "Maya Chen",
"url": "https://www.example.com/authors/maya-chen/"
}
}
Keep the name and URL in the article too: Google’s author markup best practices ask for author.name and author.url on the article itself. The Schema Graph Combiner can merge your Person, Article, and Organization into one linked graph.
sameAs: the profiles that matter
The sameAs links tell Google that this person is the same one found on LinkedIn, GitHub, X, or Wikipedia. Good author schema lists only the person’s own profiles. The person schema generator labels each link by platform and flags common mistakes:
- Post and share links, such as a single post on X or a Facebook share URL, instead of the profile itself.
- Links to your own website, which belong in
url, notsameAs. - Tracking parameters like utm_source or igshid, which are removed from the code automatically.
- Duplicates that differ only by www or a trailing slash.
For academics and researchers, ORCID and Google Scholar profiles are especially useful. A Wikipedia or Wikidata entry, if the person has one, is the strongest link of all.
Credentials, education, and expertise
Strong author schema describes the experience behind someone’s work. The generator supports jobTitle and worksFor, knowsAbout for areas of expertise, alumniOf for schools, hasCredential for degrees, certifications, and licenses, award, and memberOf for professional bodies.
Only mark up what the page shows and what is true. Structured data must match the visible content, and claims that can’t be verified don’t build trust with readers or with Google. If your employer runs the website, tick This organization runs this website to link worksFor to your Organization schema by @id.
About page schema for a personal site
For a personal brand, freelancer, or consultant, the About page is usually the best profile page, and about page schema works the same way as an author page. Add ProfilePage + Person there, and on the homepage refer to the same Person by @id. Some SEO plugins already add Person or ProfilePage markup to author archives and About pages, so view the page source first or use Auto-fill from page HTML: the tool reads any existing Person or ProfilePage JSON-LD, so you can improve it instead of adding a second, conflicting version.
What to leave out
Person schema is public, and anyone can read it in your page source. Google doesn’t use birth dates, gender, nationality, or home addresses for profile pages, so the generator doesn’t ask for them. Add an email or phone number only if it is already public on the page, and use work contact details. Don’t inflate follower counts, and don’t mark up statistics the page doesn’t display.
Adding and testing the markup
Paste the script tag into the profile page’s HTML, usually through your theme or SEO plugin. Then click Check in the JSON-LD Validator to test it in the JSON-LD Validator, and confirm the live page with Google’s Rich Results Test, which supports profile pages. After publishing, use the URL Inspection tool in Search Console to see how Google reads the page.
Person Schema Generator FAQ
What is the difference between Person and ProfilePage schema?
Person describes the individual: name, photo, job, and profiles. ProfilePage describes a page that is mainly about one person, with the Person as its mainEntity. Use ProfilePage + Person on author and About pages, and Person alone inside articles or your homepage graph.
Which properties are required for ProfilePage schema?
Only mainEntity with a name. If a handle is the only name shown, alternateName can be used instead. Google recommends dateCreated, dateModified, description, image, sameAs, identifier, and interaction statistics where they apply.
Does person schema improve rankings?
Not directly. It helps Google understand who a person is and connect their articles, profiles, and expertise. It supports trust signals but doesn't replace real experience or a strong author page.
Should I add a photo if the person doesn't have one?
No. Google asks you to leave the image out rather than use a default avatar, icon, or placeholder. When you do add one, use at least 50,000 pixels, for example 400 × 400.
Can I use person schema on my About page?
Yes. Google lists About Me pages on blogs as a valid use of ProfilePage. It's a good fit for personal brands, freelancers, and consultants.
How do I link author schema in articles to the profile?
Use the same @id in both places. The generator creates one from the profile URL plus #person; reference it in each article's author along with the author's name and URL.
Related tools
Article Schema Generator
Create Article, BlogPosting, and NewsArticle JSON-LD with image checks, author best practices, and correct dates. Auto-fill it from your page.
Organization Schema Generator
Create Organization and WebSite JSON-LD for your homepage, with logo checks, profile links, contact points, and validated business identifiers.
JSON-LD Validator
Validate JSON-LD against schema.org and Google's rich result rules, find exact syntax errors, and auto-fix common mistakes.
Schema @graph Combiner
Merge separate JSON-LD blocks into one connected @graph: duplicates removed, stable @id values added, and conflicts flagged for review.
Breadcrumb Schema Generator
Build BreadcrumbList JSON-LD from a URL or your page's HTML, with multiple trails, Google checks, and matching breadcrumb HTML.
Local Business Schema Generator
Build valid LocalBusiness JSON-LD for any of 131 business types, with opening hours, geo coordinates, and instant checks against Google's rules.