Internal Linking for Online Stores
Stores need collection–product links, breadcrumbs and a path to orphan SKUs. Related-product widgets are merchandising; SEO links need crawlable HTML.
Internal linking on a store is how you tell crawlers and shoppers which collection a product belongs to and what to buy next. Magazines think in related posts. Catalogs think in hubs (collections) and leaves (products), plus a few editorial guides.
If the graph is wrong, category SEO and product SEO fight each other. The e-commerce SEO guide is the wider process. This article is the link layer.
Use consistent handles when you create collections—the URL slug generator is for naming, not for stuffing.
Collection ↔ product
Downward: A collection page must list products as HTML links (<a href="/products/...">), not only as JavaScript cards. Pagination or “load more” must expose a crawlable next URL (category page SEO).
Upward: Each PDP should link to its primary collection in the breadcrumb and in a text or nav module. If a product sits in eight collections for merchandising, pick one canonical parent for the crumb.
Sideways: Sibling collections (“trail” vs “road”) help users and spread crawl. Do not create twenty overlapping automated collections that all link to the same 400 SKUs.
Related products vs SEO links
| Mechanism | Job | SEO-useful when |
|---|---|---|
| Collection grid | Hub → leaves | Links in HTML, in-stock, matching the H1 |
| Breadcrumb | Hierarchy | One path, matches live IA |
| Related / complete-the-set | Merchandising | Crawlable anchors, not only “customers also bought” in an iframe |
| Footer / mega-menu | Navigation | Real URLs, not images-only menus |
| Sitemap XML | Hint | Complements links; does not replace them |
Recommendation engines are fine for conversion. For crawl, view-source a PDP: if related SKUs are not in the HTML, assume Googlebot may not treat them as your internal graph.
Manually curated “pairs well with” for high-margin SKUs is often better than a generic app on every template.
Orphan SKUs
An orphan is a product URL with no internal inbound links (or only links from noindexed pages).
They appear when:
- You create products and never add them to a collection.
- You remove a collection and leave products hanging.
- The only path is site search or a paid landing URL.
Find them by comparing the product catalog to links in collections (export, or a crawler). Put orphans in the right hub or noindex them if they should not rank.
Sitemaps still help discovery; technical SEO covers that. Links pass context (“this is a trail shoe in the trail collection”).
Breadcrumbs
Breadcrumbs are a UX pattern and a BreadcrumbList candidate—only if they match what is on the page.
Rules:
- Home → department → collection → product (or shorter).
- Do not show a collection the product is not in.
- Do not rotate the parent based on whichever ad the user clicked if that creates five URL variants of the crumb.
Shopify collection-product paths vs canonical product URLs: link the breadcrumb to the collection, the canonical to /products/handle as discussed in Shopify SEO fundamentals.
Guides and contextual links
Buying guides should link to in-stock SKUs and collections with descriptive anchors (“men’s trail shoes”), not “click here.” That is how problem queries connect to the catalog (keyword research).
Do not dump 50 product links in a paragraph. A compact list or comparison table is enough.
Practical audit
- Crawl the store (or sample 50 PDPs): inbound internal links count.
- Open a new product: is it in a collection in the HTML?
- Disable JS in a test browser: does the grid still link?
- Check breadcrumbs vs canonical.
- Fix orphans before you write more blog posts that never mention a SKU.
Pagination, filters, and “view all”
Page 2 of a collection should still link products in HTML. If page 2 is only reachable by a button that never adds ?page=2 or /page/2/, crawlers that do not click will under-discover SKUs. That is an internal-link problem as much as a technical one.
Filtered states should not become a second copy of the collection with a full set of product links and a competing title—unless you intentionally index that facet. Otherwise you split crawl between /shoes and /shoes?color=navy with the same grid.
A “view all” URL that lists 2,000 products can be a crawl gift and a performance bomb. If you offer it, make it the canonical hub or do not index it.
Cross-links that are not spam
Footer links to every collection on every URL are a lazy graph. Prefer:
- Contextual links in unique category copy (“see also trail socks”).
- A compact HTML module of 4–8 related SKUs on the PDP.
- Guide → collection → product chains for problem queries.
Anchor text should name the destination (leather tote 14"), not “learn more.” Repeating the exact target keyword on 200 PDPs pointing at one collection is still a pattern engines have seen; vary anchors with real product names.
Seasonal collections: when you unpublish, 301 to the parent department or the next season’s hub so product links do not die with the campaign URL.
New product launches should join a collection before ads point at the PDP, so crawlers and shoppers share a path. Launching a SKU that is only in a campaign landing URL is how orphans start.
Internal linking is catalog IA made visible. Widgets are optional. HTML paths are not.
PageRank Distribution and Crawl Depth Hierarchy
Internal links are the circulatory system of an e-commerce website. They distribute search engine authority (PageRank) from your high-authority homepage and editorial guides down to commercial product collections and individual SKUs. A fundamental goal of store architecture is keeping crawl depth flat: every indexable product in your catalog should be accessible within 3 clicks of the homepage.
| Page Type | Optimal Crawl Depth | Primary Inbound Linking Source |
|---|---|---|
| Homepage | 0 Clicks | Direct, brand search, external backlinks |
| Main Categories | 1 Click | Global header navigation, footer links |
| Subcategories | 2 Clicks | Parent category hubs, breadcrumbs, faceted links |
| Product Detail Pages | 2 to 3 Clicks | Collection grids, related products, buying guides |
| Orphan Pages (Risk) | > 4 Clicks / None | Unlinked or inaccessible via navigation (Poor SEO) |
High-Impact Internal Linking Placements
Maximize link equity distribution across your store by deploying four structured linking modules:
- Contextual In-Content Links in Cornerstone Guides: Link directly from authoritative informational guides (e.g., 'How to Start an Online Store') to relevant commercial category collections and interactive calculators using descriptive, keyword-rich anchor text.
- Algorithmic Cross-Sell and Upsell Carousels: Implement 'Frequently Bought Together' and 'Customers Also Viewed' modules on product pages. Ensure these carousels render clean HTML links directly in server-side responses rather than relying entirely on client-side JavaScript execution.
- Structured Breadcrumb Trails: Breadcrumbs provide users with intuitive situational navigation while establishing explicit parent-child taxonomy hierarchies for search engine crawlers.
- Related Category Links on Collection Footers: Add cross-links to adjacent or complementary collections at the bottom of category hubs to encourage multi-category browsing and bot traversal.
Key takeaways
- Every indexable product should be reachable from a collection (or another crawlable hub) in HTML—not only from site search or a JS carousel.
- Breadcrumbs should match one primary hierarchy. Five parents on one PDP confuse users and dilute the graph.
- Related products can be SEO-useful if they are real links to in-stock SKUs, not a black-box widget that never renders in the source.
- Orphan SKUs (no inbound internal links) get crawled slowly or not at all. Sitemaps help; they do not replace links.
Frequently asked questions
How many internal links should a product page have?+−
Enough to place it in the IA: breadcrumb, parent collection, a few related in-stock products, maybe a guide. Dozens of footer links to every category are not a strategy. Quality and crawlability beat count.
Do related-product apps help SEO?+−
Only if the recommendations output crawlable anchors to real URLs. A slider that loads after JavaScript with no fallback is merchandising, not an internal-link graph.
Should I link to out-of-stock products?+−
Link if the URL is still the right landing page (back-in-stock). Do not build hubs of dead SKUs. Offer substitutes on the OOS template with HTML links.
Related tools
- URL Slug Generator
Generate clean, SEO-friendly URL slugs from article titles and product names, stripping stop words, symbols, and formatting errors.
- Meta Title Preview & Pixel Width Checker
Preview how your page title displays in Google search results and verify pixel widths to prevent desktop and mobile truncation.
- Meta Description Preview & Pixel Checker
Preview how your meta description displays across desktop and mobile search snippets and test character boundaries for maximum CTR.
- SERP Snippet Preview Tool
Simulate desktop and mobile Google search engine result snippets including title tags, meta descriptions, and clean URL breadcrumb displays.
Related guides
- E-Commerce SEO Guide
A practical map of e-commerce SEO: information architecture, keyword research, product and category pages, technical indexation, schema, Core Web Vitals and measurement.
Related articles
- Category Page SEO
Category pages rank for broader intent. Unique copy, faceted navigation, pagination and indexation decide whether the grid is a landing page or a duplicate farm.
- Product Page SEO
Product SEO is unique titles, specs, variant indexation and internal links. Duplicate manufacturer copy—not missing adjectives—is the usual ranking problem.
- E-Commerce Schema Markup
Product, Offer, BreadcrumbList and visible FAQ markup help machines parse the page. Never fake reviews or ratings. Schema follows what shoppers can see.