@id and entity graphs
In JSON-LD, @id gives a node a stable identifier (a URI) so that other nodes, on the same page or across your site, can refer to it instead of redefining it. Using one consistent @id for your organization, each person and your website lets you build a connected entity graph: articles point to their author, the author works for the organization, and the organization publishes the site.
What is @id?
The JSON-LD 1.1 specification uses @id to identify a node with an IRI; other objects can then reference that node by the same IRI.[1] Officially documented The IRI does not have to resolve to a separate page, but a URL on your own domain, such as your homepage plus a fragment, is the usual pattern.
What is a good @id pattern?
| Entity | Example @id |
|---|---|
| Organization | https://www.example.com/#organization |
| WebSite | https://www.example.com/#website |
| Person | https://www.example.com/about/jane-doe#person |
| WebPage | https://www.example.com/guide/#webpage |
The fragment names are a convention, not a standard. Practitioner practice What matters is that each entity keeps the same @id everywhere.
How do nodes connect?
{
"@context": "https://schema.org",
"@graph": [
{"@type": "Organization", "@id": "https://www.example.com/#organization",
"name": "Example Co", "url": "https://www.example.com/"},
{"@type": "Person", "@id": "https://www.example.com/about/jane-doe#person",
"name": "Jane Doe", "worksFor": {"@id": "https://www.example.com/#organization"}},
{"@type": "Article", "headline": "Guide title",
"author": {"@id": "https://www.example.com/about/jane-doe#person"},
"publisher": {"@id": "https://www.example.com/#organization"}}
]
}
Can @id work across sites?
Yes. This wiki and AEO.wiki both use the same Person and Organization @id values for Simon White and Local Blitz (IRIs on the SimonWhite.wiki and LocalBlitz.wiki domains), so every article on both wikis points to one author entity and one publisher entity. Practitioner practice View the page source of any article here to see the pattern.
What mistakes break the graph?
- Different @id values for the same entity on different pages.
- Reusing one @id for two different things.
- Conflicting facts (two founding dates) attached to one @id.
- Changing @id values when a site is redesigned.
Frequently asked questions
Does Google require @id?
No. Google's docs do not require it, but it is valid JSON-LD and is widely used to connect entities without repeating them.
Does the @id URL need to load?
Not necessarily. It is an identifier. Using a URL on your own domain keeps it unique and under your control.
See also
References
Pages accessed September 29, 2026 unless a date is given. See all sources and our editorial policy.
- ^ "JSON-LD 1.1: A JSON-based Serialization for Linked Data". W3C Recommendation. Published July 16, 2020.