Processing...
Processing...

How the Topical Map Generator and Editor work — in plain English

The Topical Map Generator runs a seven-stage AI pipeline — from a seed keyword to a fully structured, entity-enriched content authority graph. The Visual Editor lets you load, edit, visualize, and export both Topical and Concept maps interactively. This page explains every stage of the pipeline and every feature of the editor.

What you get
  • Generator — 3 maps/month (beta, free account)
  • Seven-stage AI pipeline — auto-classification
  • Macro → Seed → Topic → Subtopic hierarchy
  • Hub / Section / FAQ / Standalone classification
  • URL architecture auto-generated
  • Internal linking plan with anchor text
  • Entity + alias enrichment on every node
  • Concept map — entity relationship graph
  • Editor — free, no account required

What is a topical map?

A topical map is a structured blueprint of every content entity your site needs to establish authority on a subject. It is not a keyword list or a sitemap. It is a graph — a set of nodes (pages, sections, FAQs) and edges (links and relationships) that defines:

What to build
Every topic, subtopic, FAQ, and comparison that establishes coverage of the seed within the macro category.
How to structure it
Which pages get their own URL, which are sections within a parent page, and which pages act as hubs.
How to connect it
The full internal linking plan — every parent-child link, related-topic link, and FAQ attachment, with anchor text and placement guidance.
What entities matter
Named entities (organisations, concepts, tools, people) and alias phrases (keyword variants and search intents) for every node.

What is a concept map?

A concept map is an entity relationship graph that shows how the key concepts, entities, conditions, processes, and attributes related to a seed topic connect to each other. Where a topical map answers "what pages do I need to build?", a concept map answers "what does Google need to understand about this subject?"

Entity relationship graph
Nodes represent real-world entities and concepts. Edges carry labelled relationship types — Is A, Has Part, Causes, Requires, Associated With — so the semantic structure of the subject is explicit.
Complements the topical map
A concept map is typically built alongside a topical map. The topical map defines site architecture. The concept map defines semantic depth — ensuring every important entity and relationship is covered somewhere in the content.
Named relationship labels
Every edge in a concept map carries a visible relationship label rendered on the connecting line — e.g. "is prone to", "is screened by", "requires". Labels are color-coded by relationship type for fast visual scanning.
Grouped by category
Concept nodes can be assigned to named groups — Health Conditions, Organisations, Care Requirements — making the map scannable at a glance and helping identify coverage gaps by category.
Topical map vs concept map — at a glance:
Property Topical Map Concept Map
Nodes represent Pages, sections, FAQs Entities, concepts, conditions
Edges represent Internal links Semantic relationships
Edge labels Anchor text Relationship type (Is A, Causes…)
Primary question What pages do I build? What does Google need to understand?
Output drives URL architecture, content plan Semantic depth, entity coverage

Topical node types

Every entity in a topical map is one of six node types. Each type has a fixed position in the hierarchy, its own color in the editor, and a default URL role.

Type Tier Color Default URL role Purpose
Macro 0 Rose-red Standalone + Hub The broad category the seed belongs to
Seed 1 Violet Standalone + Hub The primary topic the entire map is built around
Topic 2 Cyan Standalone (Hub if children > 2) Main pillar area under the seed
Subtopic 3+ Emerald Standalone or Section Supporting content under a topic
FAQ 2–4 Orange Section (rarely Standalone) Question-based content attached to a parent page
Comparison 2–3 Fuchsia Standalone Versus or comparison content
Macro and Seed in concept mode: When a topical map is viewed in Concept mode, Macro and Seed nodes retain their rose-red and violet colors so they are immediately identifiable as structural anchors within the concept graph.

Concept node types

Concept map nodes are classified into seven types based on the role the entity plays in the subject domain. Node size scales with label length so all text fits inside the circle. Color is consistent with the type regardless of which layout is active.

Type Color Role in the graph Example
Core Soft rose The central subject — always the graph root Golden Retriever
Entity Cyan Named real-world entity — org, person, standard AKC, OFA, Lord Tweedmouth
Condition Red Medical condition, risk, or problem Hip Dysplasia, Canine Cancer
Process Green Activity, method, or behaviour Positive Reinforcement, Daily Exercise
Attribute Purple Physical or behavioural characteristic Double Coat, Friendly Temperament
Category Orange Classification or group membership Sporting Dog, Gun Dog
External Slate External context — location, origin, time period Scotland, Victorian Era
Concept edge relationship types

Every edge in a concept map carries one of eleven relationship types. Each type has its own color so relationships are visually distinguishable at a glance.

Type Color Meaning Example
0 — Is A Classification / taxonomy Golden Retriever is a Sporting Dog
1 — Has Part Composition / anatomy Golden Retriever has Double Coat
2 — Causes Causal relationship Genetics causes Hip Dysplasia
3 — Affects Impact / susceptibility Golden Retriever is prone to Cancer
4 — Requires Dependency / need Golden Retriever requires Daily Exercise
5 — Diagnosed By Screening / diagnosis Hip Dysplasia is screened by OFA
6 — Treated By Treatment / remedy Hip Dysplasia is treated by Surgery
7 — Performed By Agency / role Golden Retriever is registered by AKC
8 — Associated With General association Golden Retriever originated in Scotland
9 — Opposite Of Contrast / antonym Aggressive opposite of Gentle
10 — Custom User-defined relationship Any custom label

URL roles — page vs section vs hub

Every topical node is classified with a URL role that determines whether it gets its own page in the site architecture.

Standalone (urlRole = 1)
Has its own canonical URL. Appears in sitemaps. Gets its own page template. Shown in full color in the editor.
/golden-retriever/health/
Section Only (urlRole = 0)
No URL. Rendered as a heading + content block on a parent page. Shown with dashed border and muted color in the editor.
Hub (hubRole = 1)
A standalone page that also acts as a navigation centre for its children. Shown with a gold ring in the editor.

Edge types

Edges are the relationships between nodes. Every edge carries metadata that drives the internal linking plan in topical mode and semantic relationships in concept mode.

Parent-Child (type 1)
Hierarchy link from parent to child. Always required. Shown as solid grey line.
FAQ (type 3)
FAQ node to its parent page. Shown as orange dashed line.
Related (type 4)
Optional sibling link between related pages. Shown as purple line.

Every topical edge also carries: recommended anchor text, alternate anchor phrases, placement hint, weight (0–1), and required vs optional status. Concept edges carry a relationship label and relationship type rendered visually on the connecting line.

1 Normalize the seed

The pipeline begins by normalizing the macro and seed inputs into a consistent internal format before any topic discovery begins.

What it does
  • Creates a deterministic node ID from the seed label
  • Generates a URL-safe slug
  • Records the macro and seed context for all downstream nodes
  • Sets the site URL base for URL generation later
Example
Macro: "Dog Breeds"
Seed: "Golden Retriever"

id: "seed-golden-retriever"
slug: "golden-retriever"

2 Discover candidate topics

The core discovery stage. The pipeline expands the seed into a broad set of candidate topics using multiple data sources.

AI topic expansion
The seed keyword is expanded into potential subtopics using a language model prompted with the macro context.
SERP validation
Real search results are fetched for the seed and key subtopics. Titles, headings, and People Also Ask questions are extracted to validate and enrich the candidate set.
Entity extraction
Named entities are extracted from SERP content — organisations, people, concepts, tools, standards.
Competitor structure analysis
Top-ranking pages are scanned for heading structures to surface subtopics and FAQ candidates.

3 Canonicalize topics

The raw candidate list from Stage 2 contains duplicates, near-duplicates, and wording variants. Canonicalization resolves them into a clean, non-redundant topic set.

Deduplication
Exact duplicates and near-duplicates are merged into a single canonical topic node.
Concept vs variant separation
True topical concepts become nodes. Wording variants become aliases on the canonical node.
Candidate: "Hip Dysplasia in Golden Retrievers"
Candidate: "Golden Retriever Hip Problems"
Candidate: "CHD in Golden Retrievers"

Canonical: "Golden Retriever Hip Dysplasia"
Aliases: ["hip dysplasia in golden retrievers", "CHD golden retriever"]

4 Classify each topic

Each canonical topic is classified into one or more content roles.

Standalone page
Sufficient demand and depth for its own URL.
Section only
Too thin for its own page — rendered as a section on the parent page. No URL generated.
Hub page
Has two or more child pages. Always Standalone. Contains summary sections linking to each child.
FAQ
Question-format topics from PAA or competitor FAQ sections. Attached to the most relevant parent.

5 Assign hierarchy and generate URLs

Each classified node is placed in the hierarchy and assigned a tier. Canonical URLs are then generated for all Standalone nodes.

Tier 0 — Macro (category hub)
Tier 1 — Seed (primary topic)
Tier 2 — Topics (main pillars under seed)
Tier 3 — Subtopics (supporting pages under topics)
Tier 4+ — Deep subtopics (thin coverage, often Section only)
Standalone nodes
parent_url + slug + "/"

/dog-breeds/
/dog-breeds/golden-retriever/
/dog-breeds/golden-retriever/health/
Section-only nodes
No canonical URL. The canonicalUrl field is empty string. parentUrl points to the page where the section lives.

6 Generate internal linking

The internal linking stage creates all edges in the graph. Every edge represents a real internal link that should exist on the published site.

Required edges
  • Every parent → child link (hierarchy)
  • Every hub summary section → child page
  • Every FAQ → its parent page
Optional edges
  • Related sibling topic links
  • Comparison page cross-links
  • Contextual body links between close topics

7 Assemble the final graph

All nodes and edges are assembled into the final graph output. The structure is graph-ready — directly importable into Neo4j, D3.js, or any graph database.

{
  "Metadata": { "macro": "...", "seed": "...", "mapType": "topical" },
  "Nodes": [ { "Id": "...", "Label": "...", ... } ],
  "Edges": [ { "Id": "...", "SourceId": "...", ... } ]
}
What the output enables
  • Load into the visual editor immediately
  • Export PNG/SVG for client presentations
  • Export CSV for content calendar spreadsheets
  • Import into Neo4j for graph database analysis
  • Feed into CMS automation or internal linking tools
JSON compatibility
Both PascalCase (pipeline output) and camelCase (editor export) are supported on import. The editor normalizes both formats at load time. The MapType field in Metadata determines whether the editor opens in Topical or Concept mode.

Map modes — Topical vs Concept

The editor operates in two modes. The active mode is detected automatically from the MapType field when a JSON file is loaded. You can switch mode at any time using the Mode dropdown in the toolbar. Switching mode does not clear the graph — it changes how nodes and edges are rendered and which fields appear in the Properties panel.

Topical mode
  • Nodes colored by node type (Macro, Seed, Topic…)
  • Section-only nodes shown with dashed border
  • Hub nodes shown with gold ring
  • Properties panel shows URL, URL Role, Hub Role, Tier
  • Stats bar shows Topics, Subtopics, FAQs, Hubs, Pages, Sections
  • All four layouts available
Concept mode
  • Nodes colored by concept type (Core, Entity, Condition…)
  • Node size scales to fit label text inside the circle
  • Edge labels shown on connecting lines with color-coded type
  • Macro and Seed retain their topical colors as structural anchors
  • Properties panel shows Concept Type, Description, Group
  • Stats bar shows Groups and average Confidence
  • Force layout defaults — top-down with seed at apex
Mode auto-detection: When loading a JSON file the editor reads Metadata.MapType first, then falls back to node-level MapType fields, then inspects which fields are populated (ConceptType vs NodeType). If detection is ambiguous the editor defaults to Topical mode.

Graph layouts

The editor renders the node-edge graph in four layouts. All four show the same data from a different perspective. Press F at any time to fit the full map in the viewport.

⬡ Force Graph
Physics simulation. Nodes repel, edges pull connected nodes together. In concept mode the seed is pinned at the top and nodes fan outward by BFS depth. Nodes with labelled edges are spaced to keep relationship labels readable. Best for exploring structure and concept relationships.
⟶ Horizontal Tree
Left-to-right hierarchy. URL depth maps to column position. Best for reviewing parent-child relationships and URL architecture.
⬇ Vertical Tree
Top-to-bottom hierarchy. Tier level maps to row position. Siblings spread horizontally. Best for org-chart style review and wide maps.
◎ Radial Tree
Concentric rings per tier. Seed at centre, Topics on the first ring, Subtopics on the second. Best for client presentations and full-map exports.
Node style options
● Circular nodes
Default. Labels displayed outside the circle in topical mode. Labels displayed inside the circle in concept mode — text wraps and scales to fit.
▭ Rectangular nodes
Node width scales to label length. Labels truncate in short mode and wrap in full label mode. Icon + divider shows node type.

Node data model

Every node carries a full data profile. All fields are editable through the Node Properties panel. The editor shows topical or concept fields depending on the active mode and node type.

Shared fields — both modes
Field Type Description
id string Unique node identifier
label string Display name shown in the graph
slug string URL-safe version of the label
parentId string ID of the parent node
confidence 0.0–1.0 AI pipeline confidence score
entities string[] Named entities associated with this node
aliases string[] Keyword variants and search intent phrases
Topical-only fields
Field Type Description
nodeType 0–5 Macro / Seed / Topic / Subtopic / FAQ / Comparison
tier 0–n Hierarchy depth (0 = Macro)
urlRole 0 or 1 0 = Section Only, 1 = Standalone page
hubRole 0 or 1 1 = Hub page (gold ring in editor)
canonicalUrl string Full canonical URL (auto-generated or manual)
Concept-only fields
Field Type Description
conceptType 0–6 Core / Entity / Condition / Process / Attribute / Category / External
description string One-sentence definition shown in the tooltip
group string Category group label (e.g. Health Conditions)

Editing and re-parenting

In-place node editing
Click any node to open the Properties panel. Edit any field and click Apply. Most edits update the node visuals in place without redrawing the graph. Only re-parenting triggers a full layout redraw.
Re-parenting
Change the Parent Node dropdown and click Apply. The old edge is removed, a new edge is created, and the URL is regenerated. A full layout redraw is triggered. The node is re-selected automatically.
Adding nodes
Select a node and click Add Child Node. In topical mode the child type is inferred from the parent. In concept mode every new child is a generic concept node with the next concept type in sequence.
Duplicate node
Creates a copy of the selected node with all fields preserved. The copy is placed near the original and connected to the same parent. Label is suffixed with (Copy).

Navigation and search

Search
Press / to focus the search input. Type to match nodes by label, slug, URL, description, entities, or aliases. Matching nodes are highlighted with a gold ring. Non-matching nodes are dimmed. Press Escape to clear.
Node click — connection highlight
Clicking a node highlights that node and all its directly connected neighbours. All other nodes and edges are dimmed. The viewport zooms to fit the selected node and its neighbours. Closing the panel restores the previous viewport position and clears the highlight.
Fit View
Press F or click ⤢ Fit View in the View menu or control panel to fit the entire graph in the viewport. Also available as the centre button on the map control panel.
Minimap
Toggle the minimap from View → Toggle Minimap. The minimap shows the full graph at a reduced scale with a viewport rectangle indicating your current position. Click anywhere on the minimap to pan to that area.
Map control panel
A compact control panel in the top-right corner of the canvas provides zoom in (), zoom out (), fit view (), and directional pan buttons (▲ ▼ ◀ ▶). Hold any button to repeat continuously.
Keyboard shortcuts
/ Focus search
F Fit view
Escape Close panel / clear search
Delete Delete selected node
View options
Option Location Effect
Toggle Legend View menu Show or hide the color legend overlay
Toggle Minimap View menu Show or hide the minimap overview panel
Rectangular Nodes View menu Switch all nodes to pill-shaped rectangles with icon
Circular Nodes View menu Switch all nodes to circles (default)
Full Labels / Short Labels View menu Toggle between full and truncated node labels
Hide Section-Only Nodes View menu (topical only) Remove nodes with urlRole = 0 from the graph
Light / Dark Theme View menu Toggle between dark (default) and light canvas themes
Reset Positions View menu Clear all manual drag offsets and recompute layout

Export formats

The editor supports five export formats. All image exports account for node width and label overhang so nothing is clipped at the edges. Press F to fit the full map in view before exporting.

PNG — Viewport
Exports exactly what is currently visible on screen. Rendered at 4× screen resolution for sharpness.
topical-map-[seed]-viewport.png
PNG — Full Map
Captures the entire graph regardless of zoom level. Minimum 4800px on the longer side. Node widths and label overhang are accounted for — nothing is clipped.
topical-map-[seed]-full.png
SVG — Viewport / Full Map
Scalable vector export. All styles, colors, and arrow markers inlined. Fully editable in Figma, Inkscape, or Illustrator. Ideal for print deliverables.
topical-map-[seed]-viewport.svg
topical-map-[seed]-full.svg
CSV — Node Export
One row per node. Built in the browser with no server round-trip. In topical mode exports URL, tier, node type, hub role, entities, and aliases. In concept mode exports concept type, description, group, entities, and aliases.
topical-map-nodes.csv
JSON — Copy or Save
Full graph — nodes and edges — as formatted JSON. Copy JSON writes to your clipboard. Save downloads a local copy. Compatible with Neo4j, D3.js, and the editor itself.
topical-map-[seed]-edit.json
Which format for which purpose
Goal Layout Format
Client presentation image Radial Tree → F PNG — Full Map
Org-chart style image Vertical Tree → F PNG — Full Map
URL depth review Horizontal Tree → F PNG — Full Map
Concept relationship overview Force → F PNG — Full Map
Print-quality deliverable Any → F SVG — Full Map
Figma or Illustrator editing Any SVG — Full Map
Content calendar handoff Any CSV
Reload or continue editing Any JSON — Save
Neo4j or D3.js import Any JSON — Copy

What the finished map contains

A complete topical map for a seed like Golden Retriever contains:

Full node inventory

Every Macro, Seed, Topic, Subtopic, FAQ, and Comparison as a structured node with ID, label, slug, tier, entities, aliases, and confidence score.

URL architecture

Canonical URL for every Standalone page, derived from the parent-child hierarchy. Section-only nodes have no URL.

Internal linking plan

Every required and optional link as a graph edge with anchor text, placement hint, weight, and required status.

Concept map (optional)

Entity relationship graph showing how the key concepts, conditions, organisations, and attributes of the subject connect to the Core node with labelled relationship types.

Ready to build your map?
Open the editor to start from scratch or load a starter map. Or use the Generator to have the AI pipeline build the map from your macro and seed.

What this is — and isn't

  • Not a keyword rank tracker: the map defines architecture and intent — it does not track daily SERP positions.
  • Not content writing: the generator produces a structural blueprint. You brief and write the actual content.
  • AI classification is probabilistic: topic classification (Standalone vs Section, hub detection) is based on language model inference. Review and override classifications in the editor before briefing content.
  • Concept map relationships are inferred: relationship labels and types on concept edges are generated by the AI pipeline. Verify that the relationship direction and type accurately reflect the real-world relationship before using the map as a semantic reference.
  • Confidence scores are relative: scores below 0.70 are a signal to review — not an absolute quality threshold. Context matters.
  • URL patterns are suggestions: the generated URLs follow a logical hierarchy but may need to be adjusted for your CMS, existing site structure, or URL conventions.
  • 3 maps per month (beta): the Generator is limited to 3 maps per month per account during the beta. The visual editor has no generation limits.
  • No Google ranking guarantees: building a topical map does not guarantee rankings. It provides a structured foundation — execution, content quality, and authority still determine outcomes.
Open the Editor Free · No account required