Skip to content
GEO

Organization and Person schema: making AI identify your brand

How to implement Organization and Person with schema.org so Google and language models recognize your company and its experts as entities, not as loose text.

4 min read

There's a difference between a search engine reading your name on a page and understanding that your name is an entity: a specific company, with a specific founder, in a specific city, distinct from the other five with similar names.

That difference is called disambiguation, and it decides whether a language model cites you when someone asks it about providers in your field, or ignores you because it doesn't know who you are.

Organization and Person are the two schema.org pieces that solve this. They're also the ones most people implement halfway, copying an example with three fields.

Why this matters for AI and not just Google

For Google, organization markup feeds what it shows in the knowledge panel. Google documents it in Organization structured data.

For language models the effect is different and less discussed: when a model or an AI-powered search engine assembles an answer, it has to resolve which entity each mention refers to. A site that explicitly declares who it is, what it does, where it operates and who runs it hands over that resolution already done. A site with only prose forces the model to infer it, and inference fails, especially with common names or new brands.

This isn't magic or a ranking trick. It's reducing the identification work for whoever is going to cite you. We frame it inside what GEO is.

Organization: the fields that do the work

The typical mistake is declaring only name, logo and URL. That disambiguates nothing. The fields that actually identify:

  • name and legalName if they differ. The trading name and the legal one.
  • url the canonical one, a single host. And here's a detail that ruins everything else: if your site answers on both www and non-www, you're declaring one entity with two addresses. Pick one and redirect the other.
  • @id a stable identifier, normally your URL with a fragment like #organization. It's what lets you reference the same entity from other pages without repeating it.
  • sameAs the most important field and the most ignored. Profiles that are already recognized entities: the company's LinkedIn, its page in industry directories, its profile on platforms where it's already verified. Each one is external confirmation that you exist.
  • description what you do, in a sentence a human understands.
  • address with a complete PostalAddress, and areaServed if you operate beyond your physical location.
  • founder pointing at the Person entity, not at a text string with a name. This is the link almost nobody makes.
  • foundingDate, contactPoint, knowsAbout with the topics you have genuine competence in.

On knowsAbout: it's tempting to list thirty topics. Don't. Declaring expertise in something the site's content doesn't back up is noise, and markup that doesn't match the page is worse than no markup.

Person: the piece that turns a company into people

Person is used for founders, authors and specialists. The fields that matter:

  • name, a stable @id with its own fragment, jobTitle.
  • worksFor pointing at the organization's @id. This closes the loop: the organization says who founded it and the person says who they work for.
  • sameAs with their real professional profiles.
  • knowsAbout with their actual areas, and alumniOf or certifications if they're verifiable.
  • author on articles, pointing at the same @id. A blog where every post declares its author as an entity, and that entity has demonstrable experience, is exactly the authorship signal that supports the E-E-A-T that AI cites.

The three mistakes we always see

1. Markup that doesn't match the page. Declaring an address, phone or name different from what appears in the visible HTML. Google treats it as a low-quality signal, and rightly so. The same applies to your business profile: the name in the markup, on the site and on the Google listing all have to match.

2. Duplicate entities. Repeating the whole Organization block on every page, with different @id values or none at all. That doesn't declare one company present on many pages, it declares many companies. Define it once, with an @id, and have the other pages reference it.

3. Empty sameAs, or filled with junk. Putting your own homepage in sameAs confirms nothing: confirmation has to come from outside.

How to verify it worked

  • Validate the syntax with Google's rich results test and with the schema.org validator.
  • Check that the organization's @id is unique across the whole site and that pages reference it rather than rewrite it.
  • Look yourself up in an AI assistant and see whether it describes you correctly: the field, the city, who runs it. If it confuses you with another company, the problem is disambiguation, and this markup is the answer.
  • Make sure sameAs points at live profiles. A dead link there subtracts.

Where this fits in GEO work

Entity markup is the foundation, not the building. It gets you identified; getting cited depends on having content worth citing. Both together are the job, and the order matters: first they know who you are, then there's something to say about you.

The full markup picture is in schema.org in 2026, and how to measure whether AI is citing you is in how to measure your AI visibility. If you want us to implement and measure it, that's what our GEO agency service does.