Entities & Knowledge Graphs: Structuring a Site for GEO Success

How to map your website like a knowledge graph and build an Entity Inventory that powers Generative Engine Optimization.


1. Introduction: Why Entities Matter in GEO

Generative Engine Optimization (GEO) isn’t about stuffing keywords — it’s about teaching AI what your site knows and how its knowledge fits together.
To do that, search engines and generative engines alike rely on entities — named things with attributes and relationships.

Every page, product, and person mentioned on your site can become an entity node in your own knowledge graph.
Once you start connecting them intentionally, your site becomes a structured, machine-readable ecosystem instead of a flat list of posts.

Goal of this page: help you create your own Entity Inventory — a master spreadsheet that maps all the entities your site covers and how they connect.


2. What Is an Entity?

An entity is anything that can be uniquely defined and described — like:

Unlike keywords, entities are semantic units. They help AI understand what something is and how it relates to other things.
In GEO, entities become the atomic building blocks of your site structure.

👉 See the Glossary entry for Entity


3. What Is a Knowledge Graph?

A knowledge graph is a network of entities connected by relationships.
Each entity is a node; relationships are edges that explain how nodes are related.

For example:

[Generative Engine Optimization] — uses → [Entities]
[Entities] — are organized in → [Knowledge Graphs]
[Knowledge Graphs] — are implemented with → [Schema Markup]

On your website, that graph can be represented in two ways:

  1. Visually — through internal links, menus, and breadcrumbs.
  2. Semantically — through JSON-LD schema using stable @id identifiers.

4. Why Entities & Knowledge Graphs Matter for GEO

SEO Perspective

GEO Perspective

When your pages are semantically connected, AI doesn’t just find your content — it understands it.


5. How to Create an Entity Inventory

Your Entity Inventory is the heart of your knowledge graph.
It’s a simple spreadsheet that lists every concept, page, or person your site covers, and maps how they interconnect.

Columns to Include

ColumnDescription
Entity nameThe canonical name of the concept (e.g., “Generative Engine Optimization”).
TypeSchema type: DefinedTerm, Article, CollectionPage, etc.
Canonical URLThe live page URL where that entity lives.
Stable @idA permanent identifier (e.g., https://kentlundin.com/geo/#geo).
DefinitionOne-sentence description of what the entity means.
Related entitiesOther entities it connects to (like relationships in a graph).
Recommended schemaThe Schema.org type to use in your JSON-LD.
Example(s)Where it’s mentioned or how it’s applied on-site.
MetricsGEO KPIs it affects (e.g., Coverage, Freshness).
sameAsExternal links that verify the entity (e.g., Wikipedia, product site).

👉 Download my sample sheet:
GEO Entity Inventory (CSV)entity_inventory_template


6. Step-by-Step Example

Let’s take your own site section as a model:

EntityTypeRelationships
Generative Engine Optimization (GEO)DefinedTerm“Parent” concept for all GEO topics
Entities & Knowledge GraphsArticleLinked to Entity, Knowledge Graph, Schema
Schema & Structured DataArticleExplains the JSON-LD implementation
Writing Entity-Based ContentArticleExplains how to turn entities into on-page sections
GlossaryCollectionPageHouses all DefinedTerm entities

Each one links semantically and internally.
So /geo/entities-and-knowledge-graphs/ acts as a bridge between the conceptual world (entities) and the technical world (schema).


7. Building Your Knowledge Graph in Practice

Step 1: Build your Entity Inventory sheet.

Start by listing every entity and page in your topic domain.

Step 2: Assign stable @ids.

Give each entity a permanent @id, such as:
https://yourdomain.com/geo/glossary/#entity

Step 3: Link them internally.

Within each article:

Step 4: Add JSON-LD connections.

Use a global @graph in your site header for:

Then, on each page, add:

Entities and Knowledge Graphs

8. Common Mistakes to Avoid

MistakeWhy It Hurts GEO
Keyword stuffingAI engines ignore repetitive keywords and favor structured, relational understanding.
Flat architectureWithout hierarchy or relationships, your pages become invisible in AI retrieval.
Duplicate @idsCauses schema confusion; every entity must have one stable identifier.
Missing glossaryWithout definitions, your site’s vocabulary lacks grounding.
No cross-links between clustersAI engines can’t connect subtopics; your knowledge appears fragmented.

9. Wrap-Up: Turning Structure into Strategy

By designing your site as a knowledge graph, you turn every piece of content into part of a cohesive system.
The Entity Inventory helps you:

Your end goal isn’t just to rank — it’s to become the canonical source the AI turns to when explaining your domain.


✅ Key Takeaways


👉 Next step: Download the Entity Inventory Template (TSV) and begin mapping your site’s entities.
Then move on to Schema & Structured Data to learn how to express those connections in JSON-LD.

✳️ Try It Yourself: Generate Your Own Entity Inventory (AI Prompt)

Here’s a ready-to-use prompt your readers can copy and paste into ChatGPT (or your site’s embedded AI companion if you add one later):


Prompt: Build My Entity Inventory

Goal: Help me build an Entity Inventory for my website so I can organize my content as a knowledge graph for Generative Engine Optimization (GEO).

Instructions:

  1. Ask me for my website’s main topic or niche.
  2. Identify 10–20 core entities related to that topic (concepts, people, organizations, products, metrics, etc.).
  3. Create a table with these columns:
    • Entity name
    • Type (e.g., DefinedTerm, Article, CollectionPage, Person, Organization, Product)
    • Canonical URL (suggested URL for the entity page)
    • Stable @id (recommended format: https://mydomain.com/[section]/#[entityname])
    • Definition (1–2 sentences)
    • Related entities (other rows it connects to)
    • Recommended schema type
    • Example(s) (how this entity might appear in content)
    • Metrics (e.g., Coverage, Freshness, AI Mention Share, etc.)
    • sameAs (optional external sources, e.g., Wikipedia)
  4. Suggest a simple JSON-LD stub for each entity (e.g., DefinedTerm with @id, name, description, and inDefinedTermSet).
  5. Format the table as a CSV or Markdown table so I can import it into Google Sheets or Excel.
  6. After the table, summarize which clusters of entities could form pillar pages on my site.

Example Output:

  • Pillar: /ai-marketing/
  • Entities: Generative Engine Optimization, AI Content Strategy, Entity SEO, Knowledge Graphs, etc.
  • Glossary: DefinedTerm pages for each key concept.
  • Schema Recommendations: Global @graph for DefinedTermSet + per-page Article.

💬 Optional “Professor Kent” Teaching Prompt Variation

If you want to personalize the prompt for your students or your readers, you could include this slightly friendlier framing:

🧑‍🏫 “Pretend you’re Professor Kent teaching me how to think like a knowledge graph architect.
Walk me through each step — from defining my main entity to assigning relationships and schema types — and finish by giving me a clean Entity Inventory table I can build upon in the form of a CSV file.”

That line always gets better engagement and makes the reader feel guided, not overwhelmed.

Sample Entity Inventory Sheet: geo_entity_inventory_expanded