Moz Q&A is closed.
After more than 13 years, and tens of thousands of questions, Moz Q&A closed on 12th December 2024. Whilst we’re not completely removing the content - many posts will still be possible to view - we have locked both new posts and new replies. More details here.
How to safely reduce the number of 301 redirects / should we be adding so many?
-
Hi All,
We lost a lot of good rankings over the weekend with no obvious cause. Our top keyword went from p3 to p12, for example.
Site speed is pretty bad (slower than 92% of sites!) but it has always been pretty bad. I'm on to the dev team to try and crunch this (beyond image optimisation) but I know that something I can effect is the number of 301 redirects we have in place.
We have hundreds of 301s because we've been, perhaps incorrectly, adding one every time we find a new crawl error in GWT and it isn't because of a broken link on our site or on an external site where we can't track down the webmaster to fix the link. Is this bad practice, and should we just ignore 404s caused by external broken URLs?
If we wanted to reduce these numbers, should we think about removing ones that are only in place due to external broken URLs?
Any other tips for safely reducing the number of 301s?
Thanks, all!
Chris
-
Really helpful. Thanks very much, Sha. Much appreciated!
-
Hi again Chris,
OK, well that makes it interesting!
First, if the list of 301's in your .htaccess file numbers in the hundreds, then there is definitely cause for concern about the effect it might be having on your load times.
The .htaccess file is read from top to bottom until a rule is matched. The first one that is matched will be used and no rule after that will be checked. Obviously, if there are hundreds of rules to check, this can cause processing bottlenecks.
Now there are some things you might be able to do to alleviate the problem IF you have the right conditions.
-
If your rebuild involved the relocation of an entire directory or directories which still contain the same pages as before, you can write a 301 Redirect for all pages in a directory with a single line of code
-
If there is a database behind your site and you have some means of matching pages from the old URL to the new (for example, is there a unique product ID for each page?) then you can use database lookups to write the redirects on the fly. This will eliminate the processing bottlenecks, but can only work if you have a reliable means of matching the pages.
-
If you have only one competition or offer at a time, then you could use database lookups to match any page with say, "competition" in the URL and 301 it to the current competition page (and the same with "offer").
-
For unknown links from external sites you can use a "catch-all" 301 to catch any other page that returns a 404 and send it to a single page (you put this rule at the very end of your .htaccess so it is the last to be matched). You could send these all to home, a generally relevant landing or category page, or a specially designed 404 page. The most important thing is that the page you redirect them to is as relevant as possible, or provides options that may keep the visitor on your site (search, menus etc). I prefer not to send these "random" 404's to home as they are likely to bring an increase in bounce rate. Since bounce is now acknowledged as a ranking factor, I prefer to keep any traffic with a higher probability of bouncing away from pages with the highest Page Authority (PA).
Hope that helps,
Sha
-
-
Yeah, that seems to be the consensus - thanks, Aaron!
Back to the drawing board diagnosing this drop - avg rank over our top 200 keywords has gone from 80-something to 120-something. Not good at all!
Chris
-
Hi Sha,
A combination of things, really. We rebuilt and got rid of a load of legacy pages so there's a few for that reason. We also have a lot of time-limited pages like competitions and special offers that require specific landing pages. The majority are caused by broken links on external sites though - links that never existed, or that have been crawled and added to an autogenerated page incorrectly. The usual nonsense.
So, in brief, there isn't really one cause!
Many thanks for your reply.
Chris
-
In general, 301 aren't bad unless you have a whole string of them. For instance if a 301 redirected to another 301, then another, etc... If 301's are shallow they usually do not present a problem.
-
Hi BaseKit,
What is the reason for there being so many 404's?
Did you move your site or rebuild your site structure? Do you have a lot of pages that are removed after a short time?
The answer to these questions will help to know what is the best approach for your situation.
Sha
Got a burning SEO question?
Subscribe to Moz Pro to gain full access to Q&A, answer questions, and ask your own.
Browse Questions
Explore more categories
-
Moz Tools
Chat with the community about the Moz tools.
-
SEO Tactics
Discuss the SEO process with fellow marketers
-
Community
Discuss industry events, jobs, and news!
-
Digital Marketing
Chat about tactics outside of SEO
-
Research & Trends
Dive into research and trends in the search industry.
-
Support
Connect on product support and feature requests.
Related Questions
-
What to do with old content after 301 redirect
I'm going through all our blog and FAQ pages to see which ones are performing well and which ones are competing with one another. Basically doing an SEO content clean up. Is there any SEO benefit to keeping the page published vs trashing it after you apply a 301 redirect to a better performing page?
Technical SEO | | LindsayE0 -
301 Redirect for multiple links
I just relaunched my website and changed a permalink structure for several pages where only a subdirectory name changed. What 301 Redirect code do I use to redirect the following? I have dozens of these where I need to change just the directory name from "urban-living" to "urban", and want it to catch the following all in one redirect command. Here is an example of the structure that needs to change. Old
Technical SEO | | shawnbeaird
domain.com/urban-living (single page w/ content)
domain.com/urban-living/tempe (single page w/ content)
domain.com/urban-living/tempe/the-vale (single page w/ content) New
domain.com/urban
domain.com/urban/tempe
domain.com/urban/tempe/the-vale0 -
Increase 404 errors or 301 redirects?
Hi all, I'm working on an e-commerce site that sells products that may only be available for a certain period of time. Eg. A product may only be selling for 1 year and then be permanently out of stock. When a product goes out of stock, the page is removed from the site regardless of any links it may have gotten over time. I am trying to figure out the best way to handle these permanently out of stock pages. At the moment, the site is set up to return a 404 page for each of these products. There are currently 600 (and increasing) instances of this appearing on Google Webmasters. I have read that too many 404 errors may have a negative impact on your site, and so thought I might 301 redirect these URLs to a more appropriate page. However I've also read that too many 301 redirects may have a negative impact on your site. I foresee this to be an issue several years down the road when the site has thousands of expired products which will result in thousands of 404 errors or 301 redirects depending on which route I take. Which would be the better route? Is there a better solution?
Technical SEO | | Oxfordcomma0 -
301 Redirect on a PDF, DOCX files?
Hi, I have to rename many pdf and docx files. How can I implement 301 redirect on them as they are linked from 'n' number of places? Regards, Shailendra Sial
Technical SEO | | IM_Learner1 -
Index.php and 301 redirect with Joomla
Hi, I'm running Joomla 1.7 with SEF on and I'm trying to do a htaccess redirect which fails. I have approximately 100 in effect so far and all working fine, but I have one snag. Index.php is not working as I need it to when it's redirected to www.myurl.com/ If I turn on index.php redirect to root using this code #index.php to root
Technical SEO | | NaescentAdam
RewriteCond %{HTTP_HOST} ^myurl.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.myurl.com$
RewriteRule ^index.php$ "http://www.myurl.com/" [R=301,L] And then go to www.myurl.com/test.html I'm redirected to the homepage. I think this is because all pages are index.php in joomla. SEOMOZ and Google both think that index.php and root are duplicate pages. Does anyone have any advice for overcoming this? Thanks, Adam0 -
What tools produce a complete list of all URLs for 301 redirects?
I am project managing the rebuild of a major corporate website and need to set up 301 redirects from the old pages to the new ones. The problem is that the old site sits on multiple CMS platforms so there is no way I can get a list of pages from the old CMS. Is there a good tool out there that will crawl through all the sites and produce a nice spreadsheet with all the URLs on it? Somebody mentioned Xenu but I have never used it. Any recommendations? Thanks -Adrian
Technical SEO | | Adrian_Kingwell0 -
Loss of search engine positions after 301 redirect - what went wrong?!?
Hi Guys After adhering to the On Page optimisation suggestions given by SEOmoz, we redirected some of old urls to new ones. We set 301 redirects from the old pages to new on a page by page basis but our search engine ranking subsequently fell off the radar and lost PR. We confirmed redirection with fiddler and it shows 301 permanent redirect on every page as expected. To manage redirection using a common code logic we executed following: In Http module, using “rewrite path” we route “all old page requests” to a page called “redirect.aspx? oldpagename =[oldpagename]”. This happens at server side. In redirect.aspx we are redirecting from old page to new page using 301 permanent redirect. In the browser, when old page is requested, it will 301 redirect to new page. In hope we and others can learn from our mistakes - what did we do wrong ?!? Thanks in advance. Dave - www.paysubsonline.com
Technical SEO | | Evo0 -
Why is a 301 redirected url still getting indexed?
We recently fixed a redirect issue in a website, and although it appears that the redirection is working fine, the url in question keeps on getting crawled, indexed and cached by google. The redirect was done a month ago, and google shows cached version of it, even for a couple of days ago. Manual checking shows that its being redirected, and also a couple of online tools i checked report a 301 redirect. Do you have any idea why this could be happening? The website I'm talking about is www.hotelmajestic.gr and its being redirected to www.hotel-majestic.gr
Technical SEO | | dim_d0