EXTRACTIVE SUMMARY
An internal link graph is the set of typed connections between URLs in a semantic content network, where every edge exists because a specific relationship in the topical map or the query network put it there. Every link must perform one of two jobs: complete the current query class or move the reader one class forward. Five link types perform those jobs: hub to node, node to hub, lateral, contextual bridge, and forward. Three graph properties govern the whole structure rather than any single edge: no orphans, maximum click depth of three, and an asymmetric direction ratio favouring outer to core. Anchor text reuses the exact n-gram from the query network, and creative variation splits one strong signal into several weak ones. Three common modules do not belong in the graph at all: related-posts strips, footer link blocks, and tag archives. The graph is audited by counting edges per type and confirming each one has a job.
What an internal link graph is
An internal link graph is the set of typed connections between URLs in a semantic content network, where every edge exists because a specific relationship in the topical map or the query network put it there.
The word typed carries the weight. In an ordinary content library, all internal links are the same kind of object: one page mentions another and links to it. In a semantic content network, a link from a hub to its node is a different object from a bridge crossing the contextual border, and the two are placed for different reasons, in different positions, with different anchor text.
The graph is specified in the topical map before any page is written. Two fields carry it: internal link targets, which lists the outbound edges from each row, and bridge target, which names the core destination each outer row forwards toward.
Why every link must have a job
Every internal link must perform one of two jobs: complete the current query class, or move the reader one query class forward.
Query classes progress along a journey. Informational, then commercial investigation, then transactional. A reader who has just understood what a topical map is has either finished, in which case a link completing that class serves them, or is about to ask how one gets built, in which case a link forwarding them one class serves them.
A link doing neither is a cost rather than a neutral addition. It consumes crawl attention, dilutes the link equity distributed by the page, and adds a relationship the search engine must evaluate and discard. Ten such links on a page of forty mean a quarter of the page’s outbound signal points nowhere useful.
The permitted exception is a backward link to a prerequisite. A page assuming knowledge of a concept may link back to the page teaching it, because comprehension is a precondition for the current class rather than a regression from it.
The five link types
Five link types carry every legitimate edge in the graph.
Hub to node, descending. A seed hub links to every node beneath it. The job is coverage declaration: the hub asserts the scope of its cluster by enumerating it. Rule: complete enumeration, no selective linking, because a node the hub omits is discoverable only through the sitemap.
Node to hub, ascending. Every node links back to its hub. The job is cluster membership: the node declares which subject it belongs to. Rule: one ascending link per node, to its own hub and not to a sibling’s hub.
Lateral, sibling to sibling. A node links to another node beneath the same hub. The job is completing the current query class for a reader whose next question sits alongside rather than above. Rule: place a lateral link only where correlative query data supports it. Lateral links added by topical resemblance are the most common source of graph noise, because sibling pages always resemble each other.
Contextual bridge, outer to core. An outer section page forwards to a core section page. The job is transporting earned relevance across the contextual border and moving the reader one query class forward. Rule: a justification passage precedes the anchor, stating why the two contexts connect. A bare anchor is not a bridge.
Forward, sequential. A page links to the page serving the query users search next, regardless of hub relationship. The job is anticipating the next search before the reader returns to the search engine. Rule: the target comes from the sequential signal in the query network, and the link is placed at the point in the page where that question arises rather than collected at the bottom.
Placement follows from the job in every case. A link exists to be taken at the moment its need appears, and a link placed after the reader has finished is a link placed after the reader has left.
The three graph properties
Three properties govern the whole graph rather than any individual edge, which means none of them can be fixed one page at a time.
No orphans. Every URL receives at least one inbound internal link. An orphaned page is discovered late, recrawled rarely, and contributes its tuples to the network’s coverage in name only. Orphans accumulate silently through migrations, unpublished drafts that later publish, and nodes added to a map after their hub was written.
Maximum click depth of three. Every URL is reachable within three clicks of the home page. Depth is the crawler’s cost of arrival, and it compounds: a page at depth six is not twice as expensive as one at depth three.
Asymmetric direction ratio. Outer to core links outnumber core to outer links substantially, with three to one a workable floor. The asymmetry is the entire point of the contextual border. Outer pages earn impressions across a wide surface and forward that relevance inward; core pages retain it. A graph where core pages link outward as freely as outer pages link inward leaks authority away from where the money is, and it does so invisibly, because every individual link looks reasonable.
→ Building a semantic content network: what to publish, in what order, over how long
Anchor text
Anchor text reuses the exact n-gram from the query network, in the same term form, every time.
The convention this displaces is anchor variation, taught as a defence against over-optimization and as a matter of writing quality. Varying anchors across “topical map,” “content map,” and “topic map” produces three weak lexical signals where one strong one was available, and adds a resolution step at the point where the graph is supposed to be cheapest to read.
Three subsidiary rules follow. Anchor text describes the destination rather than the current sentence, so “topical map production” rather than “read more about this.” Anchors sit inside the sentence that raises the need rather than in a standalone line. And the same destination carries the same anchor across the network, because a destination with six different anchors is six different things to a parser.
What does not belong in the graph
Three common modules are anti-structural rather than merely weak, and removing them improves the graph.
Related-posts strips. An automated module selecting pages by tag, category, or recency. Every link it produces is untyped, most perform no job, and it places them after the content where the reader has already finished. A related-posts module on 300 pages adds thousands of edges that no map specified and no query network justified.
Footer link blocks. A repeated set of links appearing on every page. Sitewide repetition tells the search engine these links are navigational furniture rather than contextual relationships, and it flattens the very distinctions the typed graph exists to create. A footer holding genuine navigation is fine. A footer holding twenty content links is a related-posts strip in a different position.
Tag archives. Pages generated from a taxonomy that runs parallel to the topical map. Tag archives create a second, competing structure over the same content, produce near-duplicate listing pages that hold no tuples of their own, and are a reliable source of near-duplication cannibalization.
The common fault in all three is that they add edges nobody decided on. The graph’s value is that every edge was a decision, and automation that adds edges by rule removes exactly that property.
→ Content cannibalization: four types, four different fixes
How to audit the graph
Audit the graph by counting edges per type and confirming each one has a job.
Four passes cover it. Crawl the property and export every internal link as a source and destination pair. Classify each edge as one of the five types, and flag every edge that fits none, since unclassifiable edges are the noise the audit is looking for. Compute the three graph properties: orphan count, depth distribution, and the outer to core ratio against core to outer. Sample anchor text by destination and confirm each destination carries one consistent anchor.
The output that matters is the unclassifiable count as a proportion of total edges. A graph built from a map runs low. A graph built by publishing and linking as you go runs high, and the proportion is a reasonable proxy for how much of the structure was decided versus accumulated.
BRIDGE
The five types and the three properties can be applied to an existing property, and doing so is worth the effort. What cannot be done retroactively is the part that makes the graph cheap to maintain: specifying every edge in the map before any page exists, so that each new page arrives knowing its hub, its siblings, its bridge target, and the pages that forward into it.
Retrofitting inverts that. Each new page requires a survey of what already exists, the survey degrades as the property grows, and the graph ends up reflecting what the most recent author remembered. A semantic content network build assigns the internal link targets and the bridge target as map fields, so that the graph is a specification the network is built to rather than a pattern that emerges from it, and building topical authority to rank does not depend on anyone’s recall.
→ Semantic content network builds: architecture before articles
SUPPLEMENTARY CONTENT
How many internal links a page should carry
Link count follows from the typed edges the map assigned rather than from a target. A node typically carries one ascending link, zero to three lateral links where correlative data supports them, and one or two forward links, which puts most nodes between two and six.
A page carrying twenty internal links has almost certainly acquired untyped edges, since no map assigns twenty jobs to one page.
Whether internal links should open in the same tab
Internal links open in the same tab. Forcing new tabs fragments the session and the behaviour the sequential signal was derived from, and it breaks the back navigation readers use to return to a hub.
Whether nofollow helps sculpt internal link equity
Nofollow on internal links does not redistribute equity to other links on the page. The technique was viable long ago and has not worked that way for many years, and using it on internal links now removes a path without benefiting another.
The structural equivalent of sculpting is not linking to the page at all, which is a decision the map should make explicitly rather than a tag applied afterward.
How the graph changes when the map is extended
Adding a node to an existing cluster requires three edits: an ascending link from the new node to its hub, a descending link from the hub to the new node, and any lateral links the correlative data supports. Adding a seed requires the same plus a bridge target.
The hub edit is the one routinely skipped, and skipping it is how orphans enter a graph that was correct when it was specified.