404 or rel="canonical" for empty search results?
-
We have search on our site, using the URL, so we might have: example.com/location-1/service-1, or example.com/location-2/service-2. Since we're a directory we want these pages to rank.
Sometimes, there are no search results for a particular location/service combo, and when that happens we show an advanced search form that lets the user choose another location, or expand the search area, or otherwise help themselves. However, that search form still appears at the URL example.com/location/service - so there are several location/service combos on our website that show that particular form, leading to duplicate content issues.
We may have search results to display on these pages in the future, so we want to keep them around, and would like Google to look at them and even index them if that happens, so what's the best option here? Should we rel="canonical" the page to the example.com/search (where the search form usually resides)? Should we serve the search form page with an HTTP 404 header? Something else?
I look forward to the discussion.
-
I would not use a canonical here. I'd implement a logic that sets empty categories on noindex as long as they are empty IF they are really, really useful and needed there, which I kinda doubt. Might be if you display a "no entry yet - place your location here" registration form or something like that. Nearly as likely I'd just kill them and recreate them when/if there is actually useful content for the page. Core question I'd ask is: What exact use DO such pages have for users/search engines? (and NOT: What future use might they eventually have some day for you/others?)
Nico
-
Your'e right, ideally these URLs would not exist until needed. The problem I have is that our search is set up so it doesn't require an HTTP Post to the server - it works by manipulating the URL, so if someone searches for Service 5 at Location 1, the URL /location-1/service-5 has to present them with something - we're using a search form, but a signup form would work well too, and I think there is some limited use to the user to say "no, we don't have anything here."
I guess I could rebuild the page somewhat to make the "There are no results for Service 5 at Location 1" message bigger - it could even be in the Title / H1, then show my re-search or signup form - that would get rid of duplicate title tag problems, but my content would still essentially be the same - a form - so I'd have duplicate content problems.
Noindex would be a good idea, and easy to do. Do you know how easy it is to un-noindex later? As in, if I remove the noindex meta tag or header, how long will it take search engines to pick up on the change?
These URLs are in my sitemap too, and I should try to get rid of them there, but checking if there are search results in each location when building the sitemap is going to kill the webserver

-
John,
I'm in agreement with Netzkern on this matter. If those pages currently have little to no value, I'd personally noindex those pages that provide no content. To answer your question, for them to be re-indexed, it would simply just take a new crawl. If you have your XML sitemaps setup correctly, resubmitting these when a page is no longer a 'noindex' should expedite this process.
Even if you do not take the above step, I would caution you not to change the Titles to include that there is no content at that specific location. Keep in mind that title tags serve to tell search engines what content is found on a page & to communicate the same for users when they see your page in a SERP. This would likely tank your CTR on any pages that had no content, which could pose a problem.
Hope this helps!
Trenton
-
That's smart about the title tag. I'm not super concerned about CTR for pages that have no content - but that's because I assume they're not ranked well, since they have no content, and I could be wrong about that. However, when they do start having content, that delay between when they have content and when Google updates the title that it displays will not be fun.
It looks like noindex is the way to go here - thanks to both you & Nico - I hadn't even thought of it, I was stuck on 404 vs canonical.
-
Nonindex sounds like a great idea. But should those empty search pages have the HTTP status 404 or 200?