Bhavik SarkhediPersonal branding, built and shipped
Resource 09of 12
The markup

Person schema: the exact markup for a personal brand

The block of code that tells search engines your eight scattered profiles are one human being. What every field does, which ones carry weight, the mistakes that quietly break it, and a template you can fill in.

7 min read1,652 words 7 sectionsUpdated 1 Sept 2026

The short version

  • Person schema is how you state, in machine-readable form, that your scattered profiles are one entity.
  • sameAs is the field that does the most work and the one most often filled in badly.
  • The schema must state the same facts as the visible page. A mismatch is worse than no schema.
  • It must be in the page source, not injected by script after load.
  • It does not produce a rich result on its own. It feeds entity understanding, which is a different and slower payoff.

Everything else in personal branding is about producing signals. This is the one piece that tells the machines reading those signals that they all belong to the same person. It takes twenty minutes and most personal sites either skip it or fill it in wrong.

WatchVisual Part 2 of 5: How to Get a Google Knowledge Panel for Your Personal Brand: Build a Website1:31
Bhavik Sarkhedi on YouTube · 1:31

01What it is and what it is not

Person schema is a block of JSON-LD in your page's HTML that states structured facts about a human: name, role, employer, location, links to their profiles. Search engines and AI systems read it to build an entity, meaning an internal record of a thing that exists, distinct from other things with similar names.

What it does not do

  • It does not produce a rich snippet by itself
  • It does not create a knowledge panel
  • It does not make you rank
  • It does not override what your page actually says
  • It does not work if the facts in it are wrong

What it does do

  • States your canonical name in machine-readable form
  • Links your scattered profiles into one entity
  • Removes ambiguity between you and a namesake
  • Gives AI systems clean facts to quote
  • Is a prerequisite for entity strength, which panels are built on

Set expectations correctlyAdding this on Monday changes nothing you can see on Friday. It is infrastructure. Its effect shows up over months as the systems reading your site stop having to guess.

02The template

Put this in the head or body of your homepage and your about page. Fill in every field you can answer truthfully and delete the ones you cannot.

The fields, and what each is for

  • @type: Person — states this describes a human, not an organisation
  • name — your canonical name form, character for character identical everywhere else
  • url — your own homepage, the entity home. Not a profile
  • image — a real, absolute URL to your photograph
  • jobTitle — your role in plain language, not an internal title nobody uses
  • worksFor — an Organization object with the company name and its url
  • description — your one-line description, matching your site and profiles
  • knowsAbout — an array of your actual topics, in plain language
  • address — a PostalAddress with at least locality and country, if location matters
  • alumniOf — where you studied, if it is verifiable and relevant
  • sameAs — an array of every profile that is genuinely yours and live

03sameAs, which is the field that matters most

This is the array that does the actual entity work. Each URL in it is a statement: this profile is the same person as the one described here. Get it right and eight weak scattered signals become one strong one.

  1. Include only profiles that are genuinely yours. Not your company's. Not a fan page. Not a profile you think might be you.
  2. Include only live profiles. A dead account from 2016 dilutes the set rather than adding to it.
  3. Use the canonical URL form for each platform. The profile URL as the platform itself displays it, without tracking parameters, without a mobile subdomain.
  4. Include the substantial ones first. Order is not formally weighted but it costs nothing to be tidy.
  5. Include your author pages. If a publication gives you an author archive URL, that is one of the strongest entries available to you.
  6. Do not pad it. Twenty directory listings do not beat six real profiles, and padding with low-quality entries is visible.
What belongs in sameAs
Good sameAs entriesWeak or harmful entries
Your LinkedIn profileA LinkedIn company page
Your YouTube channelA YouTube video
An author archive on a publicationA single article you wrote
Your Wikidata item, if one existsA Wikipedia article about someone else
A Google Books author pageA bookseller product listing
An active X or Instagram accountAn account you abandoned years ago
A conference speaker profileA generic business directory listing

04The mistakes that quietly break it

All of these validate cleanly and still fail, which is what makes them expensive. The validator checks syntax, not truth.

  • The schema disagrees with the page. Your visible bio says one title, the schema says another. Conflicting statements make everything about you less reliable to assert
  • Injected by script. If the JSON-LD is added after page load, some crawlers never see it. Check the page source, not the browser inspector
  • A different name form. The schema says B. Sarkhedi and the page says Bhavik Sarkhedi. That is two entities
  • Relative URLs. image and url must be absolute, starting with https
  • Person and Organization confused. Marking a person as an Organization, or putting the company's details in a Person block
  • Copied from a template and not updated. Someone else's fields left in place, which happens more than you would think
  • Multiple conflicting Person blocks on the same page, usually because a plugin adds one and you added another
Also watchPart 1 of 5: Why You Need a Personal Website for a Google Knowledge Panel0:40
Why the site carrying this markup is the anchor for everything else.

05Validating it properly

  1. Run the page through Google's Rich Results Test and Schema.org's validator. Both, because they check different things.
  2. View the page source, not the inspector, and confirm the JSON-LD is physically in the HTML that arrives.
  3. Search the source for the string Person and count the blocks. There should be exactly one.
  4. Read every value out loud against your name standard. This catches the mismatches a validator never will.
  5. Click every sameAs URL. Dead links in that array are a correctness problem.
  6. Re-check quarterly, because plugins update and rewrite things without telling you.

06Where to put it

Homepage and about page at minimum. On article pages, use Article schema with the Person as author rather than repeating a full Person block, and point the author back to your homepage with a url field so the two connect.

Do not put a full Person block on every page. Repeating it thirty times does not strengthen anything and it increases the chance of one copy drifting out of date and contradicting the others.

07What to do after it is live

Nothing dramatic, and that is the point. Request indexing on the two pages carrying it, then leave it alone. The payoff is that over the following months the systems reading your site stop guessing which Bhavik, which title, which company, and start asserting.

The measurable version of that payoff shows up in your quarterly audit: AI assistants describing you accurately and consistently, namesake collisions dropping out of your paired queries, and your profiles clustering in search results rather than scattering.

What to remember

  1. Person schema states that your scattered profiles are one human. That is its whole job.
  2. sameAs does most of the work. Real, live, canonical profile URLs only, and no padding.
  3. The schema must agree with the visible page. A mismatch is worse than having no schema.
  4. It must be in the page source, and there must be exactly one Person block per page.
  5. Check for a plugin already emitting one before you add yours.

Questions people actually ask

What is Person schema and do I need it?

It is a block of JSON-LD in your page's HTML stating structured facts about you: name, role, employer, links to your profiles. You need it if you want search engines and AI systems to understand that your scattered profiles belong to one person rather than treating them as unrelated pages.

What should go in the sameAs array?

Every profile that is genuinely yours and currently live, in its canonical URL form: your LinkedIn, YouTube channel, active social accounts, author archive pages on publications, speaker profiles and a Wikidata item if you have one. Leave out dead accounts, company pages and generic directory listings.

Does Person schema help me get a knowledge panel?

Indirectly. It does not create a panel and nothing does on demand. It strengthens the entity by removing ambiguity about who you are and what belongs to you, and entity strength is what panels are built on. Treat it as a prerequisite rather than a cause.

Where should Person schema go on my website?

On your homepage and your about page. On article pages use Article schema with yourself as the author and a url pointing back to your homepage. Do not repeat a full Person block on every page, because copies drift out of date and start contradicting each other.

Why is my Person schema not working?

The most common causes are a mismatch between the schema and the visible page text, JSON-LD injected by script so crawlers never see it, a different name form than you use elsewhere, relative rather than absolute URLs, or an SEO plugin already emitting a conflicting block on the same page.

Keep reading