An editor once asked me why one of my blog posts, published in 2023 and never touched since, still pulls steady traffic while an almost identical piece from the same month flatlined. Same writer, same length, same keyword research. The difference was twelve words scattered across the older post — twelve internal links pointing to pages that had been climbing for months. That was the day I stopped treating internal linking as cleanup work and started treating it as the actual lever.
Key Takeaways
- Internal links do two jobs at once: they help search engines understand your site's shape, and they help readers stay on it.
- On a blog, the highest-return links are contextual — embedded in a sentence, not dumped in a "related posts" widget.
- A handful of well-placed links per article beats fifty automated ones. Quality of placement matters more than volume.
- Pillar-and-cluster structure gives you a template you can reuse for every new topic you cover.
- You can measure the effect: the Pages report in Search Console, plus a crawl with Screaming Frog, will show you what changed.
What an internal linking strategy for blogs actually changes
Most advice about internal linking stops at the definition: a link from one page of your site to another page of the same site. True, and useless on its own. The question that matters is what you're trying to move.
Two things move, and they pull in different directions if you're careless.
For search engines, internal links are how a crawler discovers pages and how it decides which ones matter. A blog post nobody links to internally is a post Google has to find on its own, through your sitemap, and then has to guess about. That guess usually goes badly.
For readers, internal links are exits. Every one is a doorway out of the page they're on. Get the placement right and they walk through it willingly. Get it wrong and they bounce back to the search results.
The myth of "link equity" you keep hearing about
You'll read that internal links "pass authority" around your site. There's something to this, but the framing leads people astray. It suggests a fixed pool of value you're redistributing, like pouring water between glasses.
Reality is messier. What actually happens is that pages receiving more internal links get crawled more often and appear more prominently in your site's internal hierarchy. That's a signal, not a transfer. A page linked from your homepage and from six strong posts signals "this matters." A page linked from nowhere signals nothing, regardless of how good the writing is.
I've watched an orphaned post — good content, zero internal links, published eight months earlier — start ranking after I added four links to it from older, already-trafficked articles. Position went from page three to the top ten in roughly five weeks. Nothing about the post itself changed. Its standing on the site did.
How to build the strategy, step by step
Here's the workflow I use now. It's not glamorous. It takes about ninety minutes per batch of ten posts, and it's the single highest-leverage half-day I spend on any site.
Step 1: map what you have
Before you add a single link, you need to see the shape of the blog as it exists. Crawl the site with a tool like Screaming Frog or Sitebulb. Export every URL, and note two numbers for each: how many internal links point to it, and how many clicks from the homepage it takes to reach it.
That second number is the one people ignore. A page six clicks deep is effectively invisible to a crawler that's budgeting its attention.
Look for pages with zero or one internal link pointing at them. In my experience running this on blogs between 50 and 400 posts, roughly a third of the archive ends up orphaned or nearly so. That's your raw material.
Step 2: pick your pillars
Group your blog into topics. Each topic gets one pillar page — a long, broad piece covering the subject at a high level — and every narrower post on that subject links back to it. The pillar links out to the narrower posts in return.
This is the pillar-and-cluster model, and it's the closest thing to a template you can apply mechanically. For a blog about, say, personal finance, your pillars might be budgeting, investing, and debt. Every post about index funds links up to the investing pillar. The investing pillar links down to the ten or twelve strongest posts in its cluster.
One rule: don't let a cluster grow past fifteen or so member posts before you split it. Past that point the pillar starts diluting and readers stop finding it useful as an overview.
Step 3: place links where they serve the reader
This is where most strategies quietly fall apart. People add links in bulk, at the bottom of posts, in a widget titled "You might also like." Readers ignore those. Crawlers treat them as low-value because they look identical across hundreds of pages.
Contextual links — a phrase in the middle of a paragraph, hyperlinked with anchor text that describes the destination — work because they arrive at the moment the reader has a question. If your post mentions compound interest and you have a deep-dive on it, link from the words "compound interest." Not from "click here." Not from a list at the bottom.
How many per article? I aim for three to six in a 1,500-word post, distributed through the body. Fewer than three and you're leaving structure on the table. More than eight and the piece starts feeling like a directory.
- Link forward from an older post to a newer, more detailed one on the same topic.
- Link back from a new post to two or three established pieces — this is how fresh content gets crawled fast.
- Link sideways between posts of similar depth on adjacent subtopics, sparingly.
- Always up to the pillar.
- Rarely to the homepage. It's already the most-linked page you have.
Step 4: write anchor text that says something
Anchor text is the clickable words. It tells the crawler what the destination is about, and it tells the reader whether to bother.
Exact-match anchors — using the target keyword verbatim — were once the trick. They still work, within limits, but overdo it and you're writing "email marketing software" as link text six times in one post. It reads like spam because it is spam-adjacent.
What I do: mix it. One exact-match anchor per post at most. The rest descriptive but varied — "a longer breakdown of deliverability," "the post where I compared pricing," "how to set up a sending schedule." Partial matches and natural phrases.
The trap here is anchor text that repeats identically across many pages, all pointing to the same destination. That pattern is the kind of thing automated audits flag, and for good reason.
Step 5: measure, then prune
Wait four to six weeks. Then open the Pages report in Google Search Console and compare, for the pages you linked to, clicks and impressions before and after.
I'm skeptical of anyone who claims a precise causal figure here — too many variables move at once. But you'll see patterns. Pages that gained links usually show more impressions within a month, even if clicks lag. Orphaned pages you rescued from deep in the archive often show up in the index report for the first time.
Prune too. Links that point to pages you've merged or deleted are dead weight. Crawl again every quarter, fix the 404s, and remove links that no longer make sense.
Internal vs. external links: what's the difference in practice
You'll see these conflated constantly. They aren't the same tool.
| Internal links | External links | |
|---|---|---|
| Direction | Page to page, same site | Your page to another domain |
| Primary job | Structure, discovery, reader flow | Credibility, sourcing, context |
| Who controls it | You, entirely | Nobody — the destination can vanish |
| Typical volume on a blog post | 3–6 | 1–4, only when citing something real |
One practical note on external links: if you're citing a source, link to it and let the reader leave. Hiding it helps nobody. What you should never do is link out to a competitor's page on the exact topic you cover — not because a link hurts you, but because you're handing a reader to someone else when you have your own answer sitting in the archive.
The mistakes I made so you don't have to
Early on I ran a script that added three "related posts" links to the bottom of every article, chosen by tag overlap. It looked efficient. Traffic to the linked posts barely moved, and my average time on page dropped, because readers were being yanked to semi-relevant pages at the worst possible moment — right when they'd finished reading.
Second mistake: I linked everything to my three best-performing posts. Sounds sensible. What it actually did was concentrate all internal attention on pages that were already saturated, while twenty decent posts sat ignored. Spread your links. Your mid-tier posts have the most room to move.
Third, and this one stung: I rewrote anchor text in bulk across a hundred posts over a weekend, then didn't crawl for three months. When I finally did, I found I'd created a chain of redirects — twelve links pointed to URLs I'd changed during a site restructure. They'd been passing nothing for months.
The fix took twenty minutes. Finding it took a quarter.
Questions readers keep asking
How many internal links should a blog post have?
Three to six contextual links in a standard 1,500-word post is a workable range. Long-form pieces of 3,000 words or more can carry eight to ten without feeling cluttered, provided they're spread through the body rather than stacked in one section. Navigation menus, sidebars, and footers don't count toward this — they appear on every page and carry far less weight per link.
Do internal links still matter for SEO?
Yes, and arguably more than they did a few years ago. As search engines have gotten better at assessing a whole site rather than isolated pages, the way your pages connect has become part of how each one is understood. A page with no internal links is a page whose context is missing. The links you control are the ones that supply it.
What about automated link plugins?
They'll save you time and cost you results. Automated tools pick links by keyword matching, which produces anchors that read oddly and land in sentences where the link doesn't belong. Use a crawler to find candidates — that part is genuinely tedious and worth automating — but make the final placement decision by hand. Ninety minutes per ten posts. That's the whole cost.
Where this leaves you
The blog post I mentioned at the start is still running. It's now the second-most-linked page on that site, and the twelve links I added have grown to twenty-eight as newer posts started pointing back to it. Nothing about the writing got better. The site's sense of what mattered got sharper.
That's the thing about internal linking that takes a while to land. You're not optimizing a page. You're teaching your site what it's about, and letting it repeat that back to the people reading it. The posts are the argument. The links are the reasoning.
Start with the ten oldest posts in your archive. Find what they should be pointing at. You'll know within a month whether it worked.