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.
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:
nameandlegalNameif they differ. The trading name and the legal one.urlthe canonical one, a single host. And here's a detail that ruins everything else: if your site answers on bothwwwand non-www, you're declaring one entity with two addresses. Pick one and redirect the other.@ida 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.sameAsthe 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.descriptionwhat you do, in a sentence a human understands.addresswith a completePostalAddress, andareaServedif you operate beyond your physical location.founderpointing at thePersonentity, not at a text string with a name. This is the link almost nobody makes.foundingDate,contactPoint,knowsAboutwith 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@idwith its own fragment,jobTitle.worksForpointing at the organization's@id. This closes the loop: the organization says who founded it and the person says who they work for.sameAswith their real professional profiles.knowsAboutwith their actual areas, andalumniOfor certifications if they're verifiable.authoron 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
@idis 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
sameAspoints 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.