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.
Is there any benefit to changing 303 redirects to 301?
-
A year ago I moved my marketplace website from http to https. I implemented some design changes at the same time, and saw a huge drop in traffic that we have not recovered from. I've been searching for reasons for the organic traffic decline and have noticed that the redirects from http to https URLs are 303 redirects. There's little information available about 303 redirects but most articles say they don't pass link juice. Is it worth changing them to 301 redirects now? Are there risks in making such a change a year later, and is it likely to have any benefits for rankings?
-
It's a tricky lesson to learn as Google often release posts and content which over-burdens developers with false-confidence (it's not the developer's fault). Basically, website owners and company owners often ask broad brush questions and pressure Google to respond with simple, succinct answers (like in Matt's old Webmaster videos).
Google cave into this pressure and say stuff like "yeah doing redirects for your migration is good", but in some (not all) of their published content, completely neglect to mention that some redirect types are more worthy than others within the context of certain situations.
Developers read posts written by Google and just think "ok fine that's how it is now so we just do that" and, of course - unless you make a livelihood studying all this stuff, you end up pretty far wide of the mark.
I recently answered this question by a webmaster whom had taken it for granted that, because Google 'can' crawl JS they always will (under all circumstances). He made a move in terms of technical on-site architecture and saw loss as well
Just ask the guys who know!
And yes, do the redirects, you may as well. You might still get something back from it (probably not a lot though)
-
Thank you for the comprehensive response.
I had never heard of a 303 redirect until I discovered today that I had them all over my site almost by accident, so I've learned a major lesson learned on getting input from an SEO specialist before undertaking any major website work with my developers because clearly there's a lot I don't know and they don't know... worse, I don't know what I don't know until something goes wrong!
I didn't expect I'd be able to get any of my link equity back after a year of trying to find the cause of the problem, but I will definitely have the redirects changed ASAP just in case there's anything left of it!
Thanks again for the helpful advice.
-
You should have used 301 redirects which infer a 'permanent' move from one place to another. Google doesn't send link juice through 301 redirects because that's what the SEO industry says they should do, it's the other way around. Status code 301 infers that the contents of a web page have permanently moved from one URL to another, thus is 'may' be fair to shift all (or a portion) of SEO (ranking) equity from one address to another
Note that even if you do the right thing at the right time, it won't always work. If your redesign heavily removes content (which was previously perceived as useful) from a web page, don't expect the 301 redirect to carry 'all' the link juice from one page to another. Had this recently with a client who decided to streamline some of their more in-depth articles as part of a site redesign and move to HTTP (simultaneously). They did correctly use 301 redirects (A to B, nothing in the middle) and they did point all the posts from the old HTTP URLs to the HTTPS URLs on the new site (same domain, but again - protocol altered and change of design)
Because the posts contained quite radically different (stripped down) content on the new site, the 301 redirects only seemed to pass across between 25% and 33% of the ranking equity. They did everything right, but if you're telling Google that content has moved from one URL to another, you had better actually move the content (lies don't work)
If you take into account that, even doing most things correctly you can cause some major issues, if you use the wrong response code then obviously you greatly increase the risk of losing all (or much of) your ranking power
I'm going to say this now, one year is probably way too late to get back to where you were just by changing some redirects. If that's your expectation, check yourself before you wreck yourself. Redirects (of any kind) slowly decay over time and most people think that a lot of the equity transfer has occurred by six months, let alone twelve. If you transferred your ranking equity into the void of cyberspace... well, it's probably 'mostly' gone by now. I'd still recommend converting the redirects as it really is your only option other than building your ranking equity over from scratch
**Let's get onto, why what you did was wrong **(why is important!)
So to you, a '303' is a type of redirect. But in its wider context, it's actually a 'status code'. Not all status codes result in a redirect and they all mean completely different things. They basically tell a client or a web-browser, which makes a request (that results in some kind of error), what the best way to proceed is. Some just send information back, others perform more concrete actions like the 3XX codes (redirect codes)
One common thing we get on here is, people saying: "I want to de-index some pages from Google, but I can't get Meta no-index into the source code, what can I do?" - very often I look at those questions and find, the pages which they want de-indexed are sending status code 404. Status code (error) 404 simply means "this resource or page isn't available temporarily, but keep tabs on it because it's only temporary and it will be back". So quite often I suggest to them, well you can deploy no-index in the HTTP header via X-robots, but also why don't you change the status code from 404 to 410? Status code 410 roughly means "gone, not coming back so don't bother coming back"
You did use a redirect code, but you used the wrong one which had the wrong meaning:
So what does status code 303 mean?
I cite from Wikipedia:
"The HTTP response status code 303 See Other is a way to redirect web applications to a new URI, particularly after a HTTP POST has been performed, since RFC 2616 (HTTP 1.1).
According to RFC 7231, which obsoletes RFC 2616, "A 303 response to a GET request indicates that the origin server does not have a representation of the target resource that can be transferred by the server over HTTP. However, the Location field value refers to a resource that is descriptive of the target resource, such that making a retrieval request on that other resource might result in a representation that is useful to recipients without implying that it represents the original target resource."
So in English a 303 translates roughly to:
"Hey web user. I can't give you the page you are requesting because it's gone, and I can't redirect you to that same content on another URL because guess what? It wasn't moved to another URL. That being said, I think this page I am going to send you to, is at least partially relevant. I'll send you there - ok?"
But you're only stating that the resource is partially equivalent, so you can only expect fractional (at best) equity transfer from one URL to the other
Using a 301 tells Google: "this exact page has moved to this other exact page and it's likely to be 75% the same or higher overall. Ok so maybe we changed how the nav menu looks an moved to HTTPS, but the written content and images and stuff that was unique to this page to begin with - that should basically be all the same. As such, you don't need to re-evaluate the ranking potential of this page"
... of course, Google still will (in many instances) re-evaluate the page against the query, which is why (although loads of people say they do) - 301 redirects don't always transfer 100% of your SEO equity. If the content is adjusted too much, even 301s don't save you and it's time to build up again from ground zero
As stated redirects decay over time as the SEO equity moves from one place to another. In your case you have asked Google to move one portion of the equity from one URL to another (which they may or may not have, depending on content alterations) and also to delete the remaining portion of your ranking power. If that movement is now complete, then gains from fixing the redirects won't be all you are hoping and dreaming of
It will help. Be sure that you do it, because it's a seconds to minutes change in your .htaccess file or web.config file. It's not hard, it's very simple and you could luck out. But with a whole year behind you... the odds aren't fantastic. Still it's some 'free' equity that you can get back, which you won't have to re-earn (so take it). But it won't be all-encompassing (sorry)
-
You have to use 301 redirect. Read this link from Google Search Console help https://support.google.com/webmasters/answer/6073543?hl=en
you can preserve the "link juice" from SEO perspective if you use 301 redirect.
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
-
301 redirect hops from non-https and www
It's best practice to minimize the amount of 301 redirect hops. Ideally only one redirect hop. It's also best practice to 301 redirect (or at least canonical) your non-https and/or your non-www (or www) to the canonical protocol/subdomain. The simplest (and possibly the most common) way to implement canonical protocol/subdomain redirects is through a load balancer or before your app processes the request. Both of which will just blanket 301 to the canonical domain/protocol regardless if the path exists or not In which case, you could have: Two hops. i.e. hop #1 http://example.com/foo to https://example.com/foo, hop #2 https://example.com/foo to https://example.com/bar 301 to a 404. Let's say https://example.com/dog never existed, but somebody for whatever reason linked to it (maybe a typo). If I request https://www.example.com/dog, the load balancer would 301 to a 404 page. Either scenario above should be fairly rare. However, you can't control how people link to you. Should I care about either above scenario? I could have my app attempt to check if the page exists before forwarding, but that code could be complicated.
Intermediate & Advanced SEO | | dsbud0 -
Hacked website - Dealing with 301 redirects and a large .htaccess file
One of my client's websites was recently hacked and I've been dealing with the after effects of it. The website is now clean of malware and I already appealed to Google about the malware issue. The current issue I have is dealing with the 20, 000+ crawl errors which are garbage links that were created from the hacking. How does one go about dealing with all the 301 redirects I need to create for all the 404 crawl errors? I'm already noticing an increased load time on the website due to having a rather large .htaccess file with a couple thousand 301 redirects done already which I fear will result in my client's website performance and SEO performance taking a hit as well.
Intermediate & Advanced SEO | | FPK0 -
Images Returning 404 Error Codes. 301 Redirects?
We're working with a site that has gone through a lot of changes over the years - ownership, complete site redesigns, different platforms, etc. - and we are finding that there are both a lot of pages and individual images that are returning 404 error codes in the Moz crawls. We're doing 301 redirects for the pages, but what would the best course of action be for the images? The images obviously don't exist on the site anymore and are therefore returning the 404 error codes. Should we do a 301 redirect to another similar image that is on the site now or redirect the images to an actual page? Or is there another solution that I'm not considering (besides doing nothing)? We'll go through the site to make sure that there aren't any pages within the site that are still linking to those images, which is probably where the 404 errors are coming from. Based on feedback below it sounds like once we do that, leaving them alone is a good option.
Intermediate & Advanced SEO | | garrettkite0 -
How do you 301 redirect URLs with a hashbang (#!) format? We just lost a ton of pagerank because we thought javascript redirect was the only way! But other sites have been able to do this – examples and details inside
Hi Moz, Here's more info on our problem, and thanks for reading! We’re trying to Create 301 redirects for 44 pages on site.com. We’re having trouble 301 redirecting these pages, possibly because they are AJAX and have hashbangs in the URLs. These are locations pages. The old locations URLs are in the following format: www.site.com/locations/#!new-york and the new URLs that we want to redirect to are in this format: www.site.com/locations/new-york We have not been able to create these redirects using Yoast WordPress SEO plugin v.1.5.3.2. The CMS is WordPress version 3.9.1 The reason we want to 301 redirect these pages is because we have created new pages to replace them, and we want to pass pagerank from the old pages to the new. A 301 redirect is the ideal way to pass pagerank. Examples of pages that are able to 301 redirect hashbang URLs include http://www.sherrilltree.com/Saddles#!Saddles and https://twitter.com/#!RobOusbey.
Intermediate & Advanced SEO | | DA20130 -
Can I make 301 redirects on a Windows server (without access to IIS)?
Hey everyone, I've been trying to figure out a way to set up some 301 redirects to handle the broken links left behind after a site restructuring, but I can only ever find information on 2 methods that I can't use (as far as I can tell). The first method is to do some stuff with an htaccess file, but that looks like it only works on Linux-based servers. The method described for Windows servers is generally to install this IIS rewrite/redirect module and run that, but I don't think our web hosting company allows users to log directly into the server, so I wouldn't be able to use the IIS thing. Is there any other way to get a 301 redirect set up? And is this uncommon for a web hosting company to do, or do you all just run your sites on Linux-based servers or your own Windows machines? Thanks!
Intermediate & Advanced SEO | | BrianAlpert780 -
Multiple 301 Redirects for the Same Page
Hi Mozzers, What happens if I have a trail of 301 redirects for the same page? For example,
Intermediate & Advanced SEO | | Travis-W
SiteA.com/10 --> SiteA.com/11 --> SiteA.com/13 --> SiteA.com/14 I know I lose a little bit of link juice by 301 redirecting.
The question is, would the link juice look like this for the example above? 100% --> 90% --> 81% -->72.9%
Or just 100% -----------------------------------------> 90% Does this link juice refer to juice from inbound links or links between internal pages on my site? Thanks!0 -
How to stop Google crawling after 301 redirect?
I have removed all pages from my old website and set 301 redirect to new website. But, I have verified old website with Google webmaster tools' HTML verification file which enable me to track all data and existence of pages in Google search for my old website. I was assumed that, Google will stop crawling and DE-indexed all pages after 301 redirect. Because, I have set 301 redirect before 3 months. Now, I'm able to see Google bot activity on my website with help of Google webmaster tools. You can find out attachment to know more about it. How can it possible & How Google can crawl removed pages? You can see following image to know more about it. First & Second
Intermediate & Advanced SEO | | CommercePundit0 -
How To 301 Redirect .html pages
I need to redirect a page/URL that is purely .html to a new location. I don't know how to do this. All the redirects I can find are for server side code pages .php/.aspx etc. From my understanding I can't put a server side redirect in a .html file. I am hosting on a microsoft server, however the new page I am redirecting to is .php. I am running some WordPress (.php) files on the server. I need to make it redirect before the old page loads so visitors don't start reading something that is about to get redirected Can someone please help me?
Intermediate & Advanced SEO | | MyNet0