Before I get into best practices for internal linking I'd like to lay some groundwork on what internal linking is, why it's important as well as what key elements of internal linking are affecting your website's relationship with search engines.
Truth about internal links
Links are like doors through which search bots pass to discover and value pages on your website. So, the cleaner the links are the simpler it is for a search bot to crawl your website.
Each link on an originating page passes value to a target page. This value is often referred to as "Google juice". Read more about internal links at SEOmoz.
Links can have an attribute that ether allows of prevents a links from passing "Google juice" to the target page. It's often referred to as dofollow / nofollow" and looks like [rel="nofollow"] in HTML. Here's a good article on dofollow / nofollow for beginners.
A link on an origin page suggests the meaning of the target page. For example, links like "for latest updates on SEO click here" are less valuable to search bots than links like "latest updates on SEO". The reason they are less valuable is that links like "click here" are not descriptive of the destination page. The linked portion of that sentence is called "anchor text". It's important that anchor text describes the target page.
Types of internal links
There's a few types of internal links including menu, sidebar, footer and contextual or body links. Here's a quick run through the main categories of internal links with a few new about each category.
Menu links are usually standard across all pages of the website. These types of links are not as valuable as body or contextual links.
Sidebar links are usually contextual links that lead users and search engines inside a particular section of the website. If you're running a blog your options for sidebar links would be:
- Recent or most commented posts / comments leading to your blog posts
- Categories / tag clouds or lists which lead to particular sections of your blog
Footer links / navigation is often used as a sitemap to allow users to browse through your site. The logic is that if a user has gone through the page and didn't find what he / she was looking for, the footer is the place to provide them with a better site structure and provide links to most popular content that others found valuable.
Body links or contextual links are the most valuable links. The fact that these links are located inside the page copy (surrounded by relevant copy), are not part of lists and are usually singular, makes these types of links more trustworthy for search bots.
12 internal linking best practices
In essence, proper internal linking is necessary to simplify Google's understanding of our site. Properly developed internal link structure will lead search bots to the right pages and Google algorithm will rank these pages higher for your selected terms. Based on the above definitions and introduction to internal links these are some best practices I recommend.
- Know your user's search patterns. Conduct keyword research to understand how users search for your product. Take a note of those terms to use them in your internal link planning or tweaking stage.
- Plan your site structure according to your product structure and how people are searching for your product. Here's good article on the topic of planning your internal link structure.
- Use descriptive anchor text. Use keywords in anchor text leading to target page. Here's a good article on the matter: http://www.seomoz.org/blog/a-diagram-that-can-help-you-define-the-proper-anchor-text-of-internal-links
- Don't use nofollow attribute on your internal links. Take a look at Matt Cutts' short video answer on the matter of nofollow for internal links.
- Limit the number of links per page to 75-100. Anything beyond that may be considered bad. The less links the more Google juice the page will pass to the target page. Use a free site audit tool Xenu to check how many outgoing links each of your pages has. More about the number of links per page.
- Use Related Links to move the user through your site as well as create links to your other posts and pages in the body or contextual links section. Using WordPress? Consider installing Yet Another Related Posts Plugin, which automatically creates a list of related posts / pages at the end of your blog post / page.
- Ensure that your new articles reference some of the past ones. Using WordPress? Consider installing Internal Linking For Scheduled Posts. The plugin "If you write posts scheduled for the future and want to link between them, this can help! WordPress has a great, fast tool for linking to posts on your own site, but it only lists already-published posts".
- Crosslink between sections in the body or contextually. Using WordPress? Consider installing Keyword Strategy Internal Links. This plugin "automatically links keywords to pages within a website. For example, you can make the first instance of the word "widgets" on any page to automatically link to the page yoursite.com/widgets/".
- Use breadcrumbs navigation. This will improve the user experience by telling the user where he or she is at the moment and how to get back.
- Avoid broken links on your site. Using WordPress? I recommend you install a Broken Link Checker addon to monitor broken links. Keep your eye on broken links and fix those as soon as you run into them.
- Keep an eye on your internal links. Internal links management is not a one-time thing. Your site grows (hopefully) every time you add new content to it, every time there are new links. New products appear, keyword focus changes, etc. So, it's a good idea to keep an eye on your internal links. Use Google Analytics to see what content is searched, found and where the opportunities are. Update your links and link anchors accordingly.
Good resources on internal linking
Here is a few articles both from Search Engine People community and beyond on the topic of internal linking.