A cluster plan is a drawing of a blog that does not exist yet. Ours came back on 2026-10-03 with 18 posts, 72 internal links between them, no orphan page and at least three links pointing into each one. The post we had actually published five days earlier carried two contextual links in about 1,260 words and never pointed at the product page it spent four paragraphs describing. The distance between those two pictures is where internal linking is won or lost, and a calendar is what closes it, one article at a time. This lesson reads the plan, the live page and the inventory in between.
What a cluster plan hands you
The plan arrives as a pillar, a set of spokes and a matrix of links between them. Ours disambiguated the term against current results, chose a pillar, generated 42 variants and proposed 18 posts in 5 clusters totalling about 28,800 words, after merging 5 near-duplicate terms so they would stop competing and dropping 5 that were navigational.
The link matrix is the part worth keeping. Every post receives at least three links and none is left orphaned, which is a property you can check on the drawing before any of it is written. Read it as an argument about which page supports which, and edit it with what you know about your own readers.
Read the plan's limits before you commit a quarter
The same report named two limits of its own, and both change how much weight the matrix carries. It measured 11 keyword pairs for shared results and found between 0 and 2 shared URLs on every pair, against the threshold of 4 its own methodology requires to group two terms. The output marks which pairs were measured and which were inferred, and most of the groups came from inference about intent.
It also had no measured search volumes, because no data provider was connected: the pillar is labelled with a relative estimate rather than a number. A plan that writes down where its evidence runs out is more useful than one that reads as finished, and the honest response is to validate the pillar with real demand data before committing three months of writing.
The published page is the measurement
Our live post is what the plan looks like after reality: two contextual links in about 1,260 words, where the content report asks for three to five per 1,000. The missing one was the obvious one. The post explains how a product distributes its connector and never links the page about that connector, which is the page a convinced reader would open next.
We added that link on 2026-10-03, in the first section, where the post first calls seodraft an MCP server.
That failure is ordinary and that is the point. Links get written last, when the draft is finished and the writer wants to publish, and the ones that survive are whichever came to mind. Deciding the targets inside the brief moves the decision to the moment you are still reading the competition.
Pages about one problem with nothing between them
The architecture report of the same audit found three pages answering the same objection with zero links among them: a blog post, a product page and a free tool, written months apart, each carrying the topic alone. Its recommendation came before any new article: add the links in both directions, then write the pillar.
Orphaned utilities are the other half of that pattern. Six free tools on the site had no blog post pointing at them, so the pages most likely to earn a link from somebody else were the hardest ones to reach from inside. A tool page with no article feeding it is a page waiting for a SERP to be generous.
Pick the target by what it answers
The right target is the page that answers the question your paragraph just raised, and that is readable from its headings. get_linkgraph returns each candidate with its slug, title, description and headings, so the match can be made on content. A slug is a naming decision somebody made once, and matching on the words inside it produces links that look related to a crawler and send a reader nowhere useful.
One limit is worth knowing before you plan around it. The inventory lists the workspace's own articles, so a page you published elsewhere is invisible to it, and a link to a page the gate cannot resolve fails as broken. An absolute link to your own domain counts as external and adds nothing to the minimum, which is why a new workspace starts with that minimum relaxed. Those links belong in your repository, after the draft is delivered.
Templates keep a blog from reading as one article repeated
The inventory also records the shape each article used, and the planner reads it to avoid repeating the last two. Our blog workspace held 22 posts on 2026-10-03 across seven templates: list, how-to, guide, case-study, comparison, answer and tools. A blog where every piece is the same numbered list teaches a reader to skim, and the rotation is a cheap way to keep the next one from looking like the last one.
Templates also change what links make sense. A comparison earns links to the feature pages it compares, a case study earns links to the tool it used, and a how-to earns a link to whatever the reader needs next. The shape and the targets are the same decision made twice.
A calendar is a promise about the next four weeks
Scheduling takes a gap between articles and writes one entry per article with its date, its status and its term. Seven days is the default, our own blog workspace runs one per day, and the right number is the largest one you can hold for a quarter. A date also tells the next article which articles already exist to link to, because the inventory grows in the order the calendar decides.
A scheduled date is a plan and a publication date is a fact, and keeping them apart matters more than it sounds. The lesson after this one takes apart what happened to us when a calendar date reached a published page as its publication date.
Write the two links before you write the post
Decide, inside the brief, which two pages the article will link to and which page will link back to it. Write them as full sentences with the anchor you intend, so the draft is built around them instead of having them inserted afterwards. Then set the gap in the calendar and let the queue decide what comes next, which is the part that keeps a blog connected after week three.
Your next step: open the last article you published, find the one page a convinced reader would want next, and add that link in both directions today. The inventory and the targets live at features/internal-linking, and the queue that keeps the dates is at features/editorial-calendar.