The site structure of the Sugarrae blog has changed several times over the years. Sometimes for testing, sometimes for “bettering” SEO.
This blog has been moved from Moveable Type to Expression Engine to WordPress.
The internal linking structure has been changed from /blog/post-name/ to /post-name/ to /category/post-name/ and who knows what else.
Category landing page urls have changed from /blog/category/category-name/ to /category/category-name/ to /category-name/.
In short, I've messed with this blog a lot – much like many other folks do as they begin to learn SEO and make applicable changes that involve changes to their URL structures and permalink URLs. And I've always utilized 301 redirects with every change to save and redirect both visitors and link juice to the proper URL in addition to using standard best practices for WordPress SEO as far as avoiding internal duplicate content that can caused by WordPress goes.
That said, a few weeks ago, a friend had mentioned to me he'd noticed the Sugarrae site was linking to several thousand redirects (both internal redirects and external redirects).
Since redirects can lose a small microbe of link juice – and chain redirects can easily lead to problems, you should always correct links when possible to link to the correct landing page without going through the redirect. The redirect should be a net to catch what you can't change, not a free pass to ignore what you can change.
So I sat down for a few hours, download the Broken Link Checker plugin (free) for WordPress, installed it and went to work.
The plugin scans all links on your site and places them into three categories. Broken, Redirects and All. All simply shows every link you link to on your site (both internal and external). Redirects shows every redirect you are linking to while Broken notifies you of any broken links you're linking out to (usually folks deleting pages without proper 301's in place or sites ceasing to exist, etc.)
Addressing broken links
I looked at the list of about 80 broken links and went through them one by one. You have three choices to fix them within the plugin. You can edit the URL to be a working one, “unlink” the text if you can't or don't want to find a replacement or mark the link “not broken.” (Sometimes a site may simply be down or some other weird issue.)
For the truly broken links, I try to find a replacement link whenever possible – with my general theory being that I linked to further information because I felt it enhanced the post for the reader. However, I will unlink the text when I can't find a good replacement link or if what I'm linking to – say a person or company – no longer exists.
Additionally, you may find links on your own site that somehow slipped through the cracks and failed to be redirected. Then you can both fix those within the post and then add a redirect to your htaccess to catch and redirect external links linking to the same page.
Addressing redirect links
First let me state that there is a handy way to select all redirects and simply fix them (which means it will automatically switch out the old URL with the new URL it redirects to. And this can be tempting as hell to do, especially if you're staring at thousands of redirects. However, there are two main reasons I'd recommend you not do that – especially if you link to affiliate programs from your blog.
The first reason applies to everyone. Unless you look at what each link is redirecting to, it could be redirecting to porn for all you know. So mass fixing all redirects could cause you some damage reputation wise with both visitors and the search engines if you're not careful.
The second reason applies to affiliates. Most affiliate links redirect in some fashion. So if you mass fix redirects, it will replace your affiliate links (be they internal redirects or external redirects) with the end destination link. That means the sale will not be tracked to you.
My traditional Shareasale link to Raven Tools http://www.shareasale.com/r.cfm?b=214388&u=313242&m=25914&urllink=&afftrack= will be “fixed” to show http://raventools.com – which means any sales I refer can't be tracked back to me.
So as tempting as an easy mass fix may be, it's not one you should do with this plugin. What you can do though is use the search function to make some of the needed fixes a bit quicker.
I used the search function and put Sugarrae.com in the URL field and picked “redirects” from the link status drop down list. Knowing I can trust that my redirects are not linking to anything bad, I was able to “check all” on each screen and quickly scan and uncheck any links that were in my “affiliate redirect folder” (see why I redirect all affiliate links). This helped me fix the larger portion of the redirects in less than twenty minutes.
I then used the search function to continue to identify “trusted sites.” For instance, Search Engine Land is a reputable site in the SEO industry. They did some URL restructuring at some point and instituted 301 redirects to the new URLs. I was able to use the search function to find all redirects being linked to from my site to theirs and mass update them without having to look at each link.
After that, it was simply addressing each redirect one by one and either choosing to fix it, unlink it or ignore it (unfortunately though, there is no way to classify a redirect as ignored or white-listed like you can classify a broken link as “not broken.” I've submitted the suggestion to the plugin author in hopes it gets added one day – and you can too here if you'd like.)
A look at the after
The day that I fixed the redirects, I created an event in Raven Tools. The event notation allowed me to see the impact (if any) that fixing the redirects had on the sites performance in the search engines. Obviously, the engines have yet to recrawl every page on my site and find all the redirects updated. But, even in the short two-week time span, the trend line is moving slightly up:
Is this the only reason the trend line might be moving up? No. Have we seen the full impact of correcting all the links? No. The engines still have a lot of re-crawling to do. Does this help prevent potential indexing issues that can be caused by chained redirects and linking (unknowingly) to sites that are being redirected to bad neighborhoods? Absolutely. Is the short amount of time it takes to do the initial clean up and then maintain it worth any possible advantage it might give you? I think so.