Mental Models for the AI EconomyWeb & AI Search
How to Build a Site-Wide Entity Graph
Stable @ids, hub pages, about and mentions, sameAs, and one registry that keeps markup, links and llms.txt from drifting — a seven-step build guide.
Most structured data on the web is decoration: an Article block here, an Organization block there, none of them aware of each other. A site-wide entity graph is different. Every block points at the same nodes, so a machine reading any page can reconstruct the whole map of who you are and what you know.
What is a site-wide entity graph?
A site-wide entity graph is a set of JSON-LD nodes, spread across many pages, that share identifiers so they describe one connected knowledge graph. The author on an article, the Person on the About page and the subject of the résumé are the same node because they carry the same @id — not because a parser guessed from matching names.
That is this site's own graph: every node is a page at /entities, every edge is both a visible link and a JSON-LD relationship. Hover a node to see its neighbourhood.
Step 1 — Decide which entities you own
You do not need an entity for every noun. You need one for every thing a buyer or an assistant might ask about that you have a right to answer: the founder, the organization, each service, each location, each proprietary method, and the core concepts of your field. For a law firm that might be twenty. For this site it is twenty-eight.
Step 2 — Mint stable identifiers
Use the hub URL plus a fragment: https://example.com/entities/geo#term. Identifiers must never change once published. A useful convention: #person, #organization, #website on the home page; #term on concept hubs.
Step 3 — Write the hub before the markup
An entity hub page needs, in order: a one-sentence definition that answers “what is X?” on its own, the entity's relationships as links, the articles that discuss it, and its external identifiers. The definition is the passage you want retrieval systems to lift; write it like a dictionary entry, not a sales line.
Step 4 — Connect pages to entities
{
"@type": "Article",
"headline": "AI pages vs. AI architecture",
"author": { "@id": "https://georgemoreas.com/#person" },
"about": [{ "@id": "https://georgemoreas.com/entities/internal-linking#term" }],
"mentions": [{ "@id": "https://georgemoreas.com/entities/rag#term" }]
}about is what the page is primarily about; mentions is what it references. Every article on this site emits about automatically from the same registry that renders the “Entities in this essay” block.
Step 5 — Connect entities to the world
sameAs points to authoritative external descriptions of the same thing: a Wikipedia article, an official specification, a LinkedIn profile, a Google Business Profile. It is how you tell a machine “my GEO is the GEO in this paper,” resolving ambiguity you cannot resolve with text alone.
Step 6 — Mirror every edge with a visible link
Structured data that the visible page does not support is a mismatch, and Google's guidelines say markup should describe content users can see. If the JSON-LD says two entities are related, the hub pages should link to each other with descriptive anchors. This also gives crawlers a path; see AI pages vs. AI architecture for the linking side.
Step 7 — Keep it in one registry
The graph should be generated from one source of truth — a file, a CMS collection, a database table — so the hub pages, the article blocks, the JSON-LD, the sitemap and your llms.txt cannot drift. Drift is the quiet killer: two definitions of the same term on two pages is exactly the ambiguity the graph exists to remove.
Common mistakes
- Re-describing the same Organization in full on every page instead of referencing its
@id. - Marking up FAQ or review content that is not visible on the page.
- Creating hub pages with no unique content — a definition and a list of links is the minimum, not the whole page.
- Letting
sameAspoint to profiles you do not control or that describe something else.
Background reading: what schema markup is and why your website should be a knowledge base.
Get the next essay the day it publishes.
A few a month, written from real builds. Unsubscribe in one click.

Performance marketing and search leader who builds — 15+ years in digital growth and product (AT&T/DirecTV, Microsoft, Employbridge, Site Impact), now running his own properties with AI. These essays are field notes from that loop: what AI actually changes about work, product, and the economics underneath. Based in South Florida.
- Web & AI SearchTopical Authority: 30 Connected Pages Beat 300
Authority is the shape of your knowledge, not the size of your archive. How to map a topic, assign one owner per question, and link hub, spoke and sideways.
9 min read - Web & AI SearchGoogle Maps Heatmaps: What Your Local Ranking Really Looks Like
Why one rank is misleading, how geo-grid footprints expose opportunity, and the truth behind the observed shared-building filter — with an interactive map model.
8 min read · interactive - Web & AI SearchYour Website Is Not a Stack of Pages. It Is a Knowledge Base.
Entities, relationships, schema, internal links, and answer-ready evidence: the architecture machines need when pages alone are no longer enough.
7 min read · interactive - Web & AI SearchHow to Write a Service Page That Ranks and Gets Cited by AI
One service per page, the service and city in the heading, the answer first, buyer questions as headings, proof, one next step and schema behind it. Seven rules and a quick test.
4 min read - Web & AI SearchNew Website Launch Week: The Checklist That Protects Your Rankings
Get found, lose nothing, test every form and phone link, confirm analytics, then tell Google and every directory. A day-by-day checklist for the week a new site goes live.
4 min read - Web & AI SearchHow HVAC Companies Get More Service Calls from Google and AI
In South Florida every AC call is urgent. Be the obvious answer when it fails: the pages that bring in calls, effortless calling, honest answers and a profile that stays current.
4 min read - Product StrategySeats, Usage or Outcomes: Pricing an AI Product Without Losing Your Margin
Seat pricing fell from 21% to 15% of SaaS companies in a year while hybrid jumped to 41%. Why AI breaks the seat, how to model margin before you launch, and when outcome pricing is honest.
9 min read · interactive - AccessibilityAccessibility Is a Product Decision, Not a Final Audit
A beautiful interface can still lock people out. How to design for independent completion, test the real journey, and treat access as product quality.
8 min read · interactive - Privacy & TrustCan You Train AI on Your Customers’ Data? Ask Them First
The FTC's warning, Meta's EU opt-out and Anthropic's five-year choice set the reference points. The four variables that decide whether a training-data change keeps trust.
9 min read · interactive