2026-08-01 · Jack Stovell

Person and Organization schema that AI actually uses

Schema.org markup has a reputation as an SEO ritual: paste some JSON-LD, hope for rich snippets. For AI systems it's more consequential than that. Identity markup is how a machine decides which entity a page is about — and a subtle mistake teaches every model that reads it something false.

These are the mistakes that matter, including one we shipped ourselves.

The url-versus-sameAs error

When we added business profiles to hilyt, the obvious markup was an Organization whose url pointed at the hilyt profile page. Obvious, and wrong.

In schema terms, url is the entity's own home on the web. If a profile page about ReviewNudge says url: the-profile-page, it is asserting that this page is ReviewNudge's website. A model reading it may then cite the profile as the company's site — displacing the real one.

The correct shape for a page describing an entity that lives elsewhere:

We had to change four places that asserted identity to fix this. Every page that describes you — press pages, directories, your own about page — should get this distinction right.

Person markup: disambiguation beats decoration

For a Person, the property that does the most work is sameAs. Models confuse same-named people far more often than they fail to find anyone. A cross-linked identity graph — your site, GitHub, LinkedIn, X, all pointing at each other — is the strongest signal that this John Smith is you.

After that, in rough order of value:

Founder edges resolve real questions

"Who is behind X?" is one of the questions people actually ask AI about businesses. A founder property on the Organization, pointing at a Person with its own URL, answers it in one hop. We added this to every business profile on hilyt for exactly that query shape.

Two mechanical failures that void everything

First: markup that only exists after JavaScript runs doesn't exist for most crawlers. JSON-LD must be in the served HTML.

Second: two components each writing their own version of the same tags. We've had a page where two head-writers fought over og:type — last one to run won, and the winner varied. Audit what the final HTML actually contains, not what your components intend.

Every hilyt profile emits this markup correctly by construction — Person or Organization, the url/sameAs split done right, founder edges included — in the server-rendered HTML crawlers read.

Get identity markup done for you