Internal Linking Strategy for Service and E-commerce Sites
An internal linking strategy is a set of rules for which pages on your site link to which, and with what anchor text, so visitors and search engines reach your most important pages easily and understand how they relate.
Start with page roles, not links: once every page is labelled service, location, category, product or guide, the links it needs become predictable.
Google says every page you care about should have a link from at least one other page on your site.
Links in the body copy carry more context than menu and footer links, so a page reachable only from the footer is weakly supported.
Service sites need links between services, industries and locations in both directions; shops need clean category, sibling and product links.
Internal linking is maintenance, not a one-off: recheck after every batch of new pages, redesign or migration.
Most sites don't have an internal linking strategy. They have whatever links happened.
Here's a strategy that works for service businesses and online shops. You'll learn:
Why page roles come before links
How service sites should connect services, industries and locations
How shops should link categories, collections and products
How to write anchors and fix what weakens the structure
How to keep it working as the site grows
Internal linking strategy fundamentals
An internal linking strategy is the set of rules deciding which pages link to which, from where on the page, and with what anchor text.
It matters for two reasons.
First, people. Links are how a visitor moves from "I'm reading about this" to "I want this". A missing link is a dead end.
Second, search engines. Google's link best practices say Google uses links to judge relevance and to find new pages to crawl.
The same page puts the minimum plainly: "Every page you care about should have a link from at least one other page on your site."
Link position changes what a link says
A link's value to your structure depends on where it sits:
Position
What it's good for
Limitation
Header menu
Making key sections reachable from everywhere
Says a page matters, not how it relates
Footer
Locations, policies, full service lists
Repeated everywhere, mostly skimmed
Sidebar
Related content on blogs and shops
Often template-driven and generic
Breadcrumbs
Showing hierarchy
Only links upwards
Body copy
Context: why this page relates to that one
Only exists if someone writes it
Body links do the work most sites skip.
When I audit a site, the gap I find most often is a money page that's in the menu and the footer but never linked from inside the copy.
1. Label every page by its role first
Don't start by adding links. Start by deciding what each page is for.
A crawler sees URLs. A strategy needs roles.
Here are the roles I use:
Role
Typical examples
Should link to
Should be linked from
Service
"Boiler repair", "Bookkeeping"
Related services, industries, locations, proof
Home, hub, guides, industries, locations
Industry
"Bookkeeping for dentists"
The services that industry buys
Services it applies to
Location
"Plumber in Leeds"
Services offered in that area
Service pages, location hub, footer
Hub
"All services", "Locations"
Every page in its group
Main menu
Category or collection
"Men's running shoes"
Subcategories, products, sibling categories
Parent category, menu, guides
Product
A single item
Its category, related products
Category, guides, related products
Guide
Blog posts, how-tos
The service or category it supports
Hub, related guides, the page it supports
Once every page has a role, the missing links stop being a matter of opinion.
A service page with no links to its industries is a gap.
A location page with no incoming links is an orphan.
You can list both, and you can count them.
Tip: do the labelling in a spreadsheet, one row per URL. It becomes the input for every step below.
2. Build the money-page backbone on service sites
Service sites earn their leads on three page types: services, industries and locations.
Your job is to connect them in both directions.
Link services and industries both ways
If you sell bookkeeping to dentists, the bookkeeping page should mention dentists and link to that industry page.
The industry page should link back to every service a dentist would buy from you.
One direction is common. Both directions is rare, and that's the gap.
Give every location page real incoming links
Location pages are the most common orphans I see.
They get built in a batch, listed in a footer, and forgotten. Link each one from the services offered in that area, and from a locations hub.
If you're building them now, my local SEO work covers what each location page needs beyond links.
Use hubs to hold groups together
A services hub that links every service, and a locations hub that links every area, gives you a clean structure two clicks from the homepage.
Then link the hubs from the main menu.
Point proof at the pages it supports
Case studies and reviews should link to the service they prove.
A visitor reading a result wants to know how to get the same thing.
A worked example
Say you're a plumbing firm with five services and eight towns.
That's 40 possible service-and-town pairings. You won't want a page for each, but each service page should link to the towns where you offer it, and each town page should link back to its services.
Now add two industries you serve, such as landlords and restaurants. Each industry page links to the services those customers buy. Each of those services links back.
Write those rules down once.
Then you can check every page against them, instead of guessing.
3. Structure an online shop's links
Shops follow the same logic with different roles.
Categories do the job service pages do.
Keep the category tree shallow and linked
Every category should link to its subcategories, and every subcategory back to its parent through breadcrumbs.
Your most important categories should sit close to the homepage in clicks.
Link sibling categories
Someone browsing "trail running shoes" may want "road running shoes".
A short block of sibling links on category pages helps people and spreads links across the tree. My guide to optimising WooCommerce category pages goes deeper on category page structure.
Connect products to categories and to each other
Products should link to their category.
Related-product blocks then link products to each other.
Check those blocks link to products that are in stock and indexable, not to dead ends.
Link buying guides into categories
A buying guide ("how to choose running shoes") is often the page that earns links from other sites.
Use it. Link from the guide into the categories it discusses, at the point where the reader is ready to browse. That passes attention from the page people find to the page that sells.
Decide which filter pages deserve links
Filtered views (size, colour, price) can create huge numbers of URL combinations.
Link only the filtered views you actually want found, and make sure the rest aren't linked in crawlable form. On Shopify, duplicate product paths are a related issue, which I cover in Shopify duplicate content.
A new page with no incoming links is an orphan from the moment it goes live.
When you publish, find two or three existing pages that already discuss the topic and add a contextual link from each. A site search such as site:yourdomain.com "boiler repair" turns up candidates in seconds.
Make this part of your publishing routine, not a clean-up job for later.
Link guides to each other sparingly
Link a guide to another only when a reader would genuinely want it next.
A paragraph stuffed with five "related reading" links helps nobody.
5. Write anchors that describe the destination
Anchor text is the visible, clickable text of a link.
It tells people and Google what's behind the link.
Google's guidance asks for anchors that are "descriptive, reasonably concise, and relevant" to both pages.
In practice:
Name the destination. "Emergency boiler repair" beats "click here".
Keep it short. Two to five words is usually enough.
Vary the wording. Don't force the same exact phrase into every link to a page.
Give it context. The sentence around the link matters too.
Don't chain links. Several links side by side are hard to tell apart.
A quick test: read only the anchor, out of context. If you can't guess what the target page is about, rewrite it.
Don't forget image and button links
Image links have anchor text too. Google's guidance says it uses an image's alt attribute as the anchor when the image is the link.
So a category tile with empty alt text is a link with no description. Write alt text that names the destination, such as "women's trail running shoes", on every linked image.
Buttons need the same care. "Shop now" on ten tiles tells nobody where each one goes.
6. Fix what weakens the structure
Good links can be undone by technical problems.
Check for these.
Orphan pages
Pages in your sitemap that no other page links to. Either link them from a relevant page or ask whether they should exist at all. Content pruning covers that decision.
Broken links and redirect chains
Internal links to deleted pages, or links that hop through several redirects, waste visits and crawling.
Update links to point at the final URL.
After a migration, this is one of the first things to check, and the website migration checklist includes it.
Links search engines can't follow
Google's guidance says it can generally only crawl links that are anchor elements with an href attribute.
Menus built with click handlers and no href may hide whole sections of your site.
Pages buried too deep
If a key page takes many clicks to reach from the homepage, it's signalling low importance. Bring it closer through hubs or body links.
A full audit of a few hundred pages can produce a long list of missing links. You won't fix them all this week, so rank them.
Here's the order I use:
Priority
What it covers
Why it comes here
P1
Orphaned money pages, broken links, key services with no body links in
These pages can't do their job until fixed
P2
Missing service-industry and service-location links, pillar-cluster gaps
They shape how the money pages relate
P3
Guide-to-guide links, extra sibling links, anchor rewording
Useful polish once the backbone is in place
Group anything that repeats across a template into one task.
If every location page is missing a link to the locations hub, that's one change to the template, not 40 separate edits. Your developer will thank you.
Tip: put the page to edit, the page to link to, a suggested anchor and the reason on each row. Whoever makes the change shouldn't need to ask you.
Common internal linking mistakes
These are the patterns I see undo otherwise sensible structures.
Letting a plugin decide
Keyword-matching plugins insert links wherever a phrase appears.
They don't know which pages earn you money, and they can't see gaps in menus or templates. You end up with links nobody chose.
Linking everything to the homepage
Your logo already links home on every page. Extra "home" links in body copy add nothing.
Spend those links on the services and categories that need support.
Using one anchor for two different pages
If "SEO audit" links to your audit service in one post and to a blog guide in another, you're sending mixed signals about which page owns the topic.
Google's guidance reserves nofollow for links you don't trust or were paid for. Your own service pages are neither.
If you don't want a page found, deal with the page itself.
Over-linking a single paragraph
Five links in three lines and your reader can't tell which one matters.
One or two well-placed links per section beats a cluster.
Measure and maintain your internal links
Internal linking decays.
Every new page, redesign or migration changes your link map.
What to track
Orphan count: pages with no incoming links from other pages.
Money pages without body links in: services and categories linked only from templates.
Broken internal links: should be zero.
Click depth of key pages: your most important pages should be shallow.
Google Search Console's Links report shows which of your pages are most linked internally.
It's a quick sanity check that your money pages are near the top.
When to recheck
After every batch of new pages. After a redesign or template change. After a migration. And on a regular schedule for sites that publish often.
On sites with hundreds of pages, doing this by hand is slow and patchy.
That's why I run it as an internal linking automation pipeline: a crawl from the live sitemap, links tagged by position, pages classified by role, then a ranked list of fixes.
One example is my managed IT case study, where an internal link audit was part of the work.
Turn the strategy into a list of fixes
A strategy is only useful once it becomes specific tasks: this page, link to that page, with this anchor.
Start with your money pages. Label every page's role, then check that each service, category and location has body links in from the pages that should support it.
The next step is finding the gaps across the whole site.
There is no fixed number. Google's own link guidance says there is no magical ideal number of links per page, and that if it feels like too much, it probably is. Aim for enough contextual links that each important page is reachable from the pages a visitor would logically read before it, and no more.
Should internal links be nofollow?+–
Almost never. Google's guidance describes nofollow for links you don't trust or were paid for, which doesn't describe links between your own pages. If you don't want a page found or indexed, use the right tool for that, such as a noindex tag or removing the page, rather than nofollowing links to it.
Do footer and menu links count as internal links?+–
Yes, they are crawlable links like any other. They are useful for making key pages reachable from everywhere. But because they repeat on every page, they say little about how two specific pages relate. Contextual links in the body, with descriptive anchors, do that job, so a good strategy uses both.
Is it safe to use exact-match anchor text for internal links?+–
Descriptive anchors that include the topic of the target page are normal and helpful. The problem is forcing the same exact phrase into every link. Google's link guidance warns against cramming keywords into anchor text. Vary the wording naturally and make sure each anchor makes sense out of context.
Should I use a plugin that adds internal links automatically?+–
I wouldn't rely on one. Keyword-matching plugins insert links wherever a phrase appears, without knowing which pages matter most or whether the link reads naturally. They also can't see gaps in menus, footers or templates. A crawl-based task list that a person works through gives you the speed without the clumsy links.
Independent SEO consultant · 6+ years in SEO · 60+ client websites worked on
I'm an independent SEO consultant with 6+ years in SEO. I run audits, migrations and content programmes for businesses in Europe, the UK and the USA, and I build the automation behind my own research.