Is your site too deep? Bad designed link structure? Test it!

One of the things I look at when I get a fresh new site to analyse is the linkstructure. All sites, and I repeat: all sites, should have a basic structure that looks like a simple tree diagram:

treestructure

All pages link to one or more pages below them. This is the basis of your site's structure. I don't say it's the only structure, you could also interlink between different categories or products, but it's the main structure. It has the following advantages:

  • It's easy to check if all pages can be reached through this link structure
  • You can and must use breadcrumbs to link to the above pages:
    "Home" -> "Category A" -> "Product 1"
    This gives searchengines the possibility to enter a site anywhere and just by following the breadcrumbs upwards and normal links downwards be able to crawl everything. And it gives users a 'sense of place' in your site.
  • This structure can also be represented in a page's URL: "/home/category-a/product-1", although that is not really neccesary. If the URL's become too long I would leave out some levels.

So let's say your site has about 80.000 pages. By creating a good structure with (for example) exactly 10 links on every page to underlying pages you are able to fit every page in a 6 levels deep site:

goodstructure

Level 1 is the homepage that links to 10 category pages, those link to 100 sub-category pages who link to 1000 product pages, etc. All pages can be reached in 5 clicks from your homepage.

How to create this for your own site

First you need a tool that can crawl your site, I use the Screaming Frog SEO spider to do this for me. This tool generates a report that gives you all the pages it could find by simply following the HTML links from your homepage, just like the search engines do. Export the report as a CSV file with this button:

frogexport

Before you can use this CSV file you have to do some cleanup work. Open the file in an advanced text-editor (I use Notepad++). Find the search and replace option and replace all semicolons for nothing (Excel doesn't handle this character as we would like too). Next step is to replace all newlines in meta-descriptions for spaces, otherwise our file will look like this:

"http://andrescholten.nl/page1", "Description
with a newline"
"http://andrescholten.nl/page2", "Good description"
etc...

And it should look like this:

"http://andrescholten.nl/page1", "Description with a newline"
"http://andrescholten.nl/page2", "Good description"
etc...

I do this with an advanced regular expression that removes all this unwanted newlines:

searchreplace

The replace field is empty on purpose. Save the CSV and open it in Excel. Excel has this function to split the Comma Separated Values (CSV) into columns:

texttocolumns

When everything went right you should have a column called "Level". Select it, create a new graph, and see something like this:

badstructure

And as you can probably see: the above example is the graph of a site with a very bad link structure. It has only 41.000 pages, but 31 levels to reach them all...and most pages are around 8 to 9 click/levels away from the homepage. This site clearly needs an extra, or better: a new basic linkstructure. Right now it depends on pages that links to other related pages. The problems:

  • we don't know if all pages can be reached like this, we should check the CMS to see how many pages there should be and make sure they are all linked
  • pages 31 clicks away from the homepage are really not important to any searchengine
  • the site doesn't really has a structure, so for a visitor it's difficult to navigate through it, or to find a specific page back again

So, how does your site look graphed like this?

Click to activate social bookmarks