Chapter 07 · Writing articles

Internal links

Where link candidates come from, how Serpio ranks and validates them, why an expected page was not linked, and how to improve link quality over time.

Updated Sep 19, 2026 · 5 min read

On this page

Every draft Serpio writes points back into your own site. The links are not guessed. They come from a ranked menu of real pages in your site index, the writer may use only that menu, and the kept links are recorded on the article. This guide explains where the menu comes from and why a page you expected may be missing.

Where candidates come from

The site index holds pages Serpio crawled from your domain and URL sources you added by hand. A page is eligible as a link target when it is indexed, not paused or removed, not past its review date, allowed for publication rather than context only, and on the same host as your site. Uploaded documents are never link targets.

Two searches run over eligible pages: a text search on your focus keywords, the working title and key facts from the brief, and a meaning search that embeds the title, keywords, outline and thesis and finds pages with similar vectors. Each returns up to 50 pages; the union is scored.

How candidates are ranked

Each page, and each section anchor on it that Serpio knows about, gets a relevance score: 55 percent semantic similarity, 35 percent keyword coverage against the brief, 10 percent overlap with the page's named entities and topics. Words that appear on most of your pages are ignored so that a shared footer does not make everything look relevant.

  • Role boosts favour useful destinations: product and feature pages, conversion pages such as pricing or demo, then support and docs.
  • Legal, login and blog index pages are excluded outright.
  • Blog posts must actually be about the topic: at least two matched terms or a strong semantic match.
  • The final list is capped at 12, allows at most two blog posts, at most four anchors from one page, no two candidates with the same purpose, and starts with a product or feature page, a conversion page and a support page when they exist.

Every candidate carries a one-line reason such as "Existing page on X", "Covers Y" or "Core product page: Z" and a confidence flag. The writer sees those reasons when deciding where a link fits. The workspace shows the kept links with their anchor text under Links and scores; the reasons stay in the pipeline and are not displayed.

How many links the writer must and may keep depends on length: up to three for short articles, four from 900 words, five from 1,400. The minimum rises from one to three when there are enough confident candidates.

Validation and what is stored

Because the writer chooses from real pages, a link cannot point to a URL that does not exist in your index. Kept links are saved with their URL, anchor text and the indexed page they belong to, and the number of candidates the writer rejected is recorded. When you edit the body, Serpio re-reads every link in the HTML: links on your host are listed as Internal, everything else as External. The article card shows the internal count.

Why an expected page was not linked

  • It is not in the site index yet, because it was published after the last crawl or lives on a path the crawl did not reach.
  • It is paused, removed or past its review date in the knowledge base.
  • Its publication permission is context only.
  • It sits on a different host, such as docs.example.com when your site is example.com.
  • It is a legal, login or blog index page.
  • It matched too weakly. Blog posts in particular need real topical overlap.
  • It lost to the diversity rules: a second blog post, a fifth anchor on the same page, or a page with the same purpose as one already chosen.
  • The writer's budget was full. A 600-word article keeps at most three internal links.
  1. 1

    Refresh the site index

    Re-crawl after publishing new pages so they become candidates. See site index versus Google index and when to re-analyze.

  2. 2

    Add the page as a URL source

    If a page is important and the crawl misses it, add it directly with facts allowed. See adding URLs and refresh policies.

  3. 3

    Give pages descriptive titles and descriptions

    Matching uses the title, meta description, H1, H2s, topics and entities. A page titled "Untitled" cannot win.

  4. 4

    Write longer where it matters

    The link budget grows with the target length.

  5. 5

    Add a link by hand

    Select text in the editor and use Add link with an http or https address. On save it is listed as Internal if it is on your host, and the next quality check covers it.

Common questions

  • Can I pick the internal links before generating?

    No. The menu is built from the brief during the Picking internal links stage. You can add or remove links in the editor afterwards.

  • Will Serpio link to another site as an internal link?

    No. Only pages on your own host qualify. Anything else is an External link.

  • Why does the progress card show more Link options than the article has links?

    Link options is the size of the candidate menu, up to 12. The writer keeps a few of them based on the length budget and fit.

Your next article starts here.

Turn a topic that is trending right now into your first article.

Write my first article

3 free articles a month. No credit card.