Avoiding "Duplicate Page Title" and "Duplicate Page Content" - Best Practices?
-
We have a website with a searchable database of recipes. You can search the database using an online form with dropdown options for:
Course (starter, main, salad, etc)
Cooking Method (fry, bake, boil, steam, etc)
Preparation Time (Under 30 min, 30min to 1 hour, Over 1 hour)Here are some examples of how URLs may look when searching for a recipe:
find-a-recipe.php?course=starter
find-a-recipe.php?course=main&preperation-time=30min+to+1+hour
find-a-recipe.php?cooking-method=fry&preperation-time=over+1+hourThere is also pagination of search results, so the URL could also have the variable "start", e.g.
find-a-recipe.php?course=salad&start=30
There can be any combination of these variables, meaning there are hundreds of possible search results URL variations.
This all works well on the site, however it gives multiple "Duplicate Page Title" and "Duplicate Page Content" errors when crawled by SEOmoz.
I've seached online and found several possible solutions for this, such as:
- Setting canonical tag
- Adding these URL variables to Google Webmasters to tell Google to ignore them
- Change the Title tag in the head dynamically based on what URL variables are present
However I am not sure which of these would be best.
As far as I can tell the canonical tag should be used when you have the same page available at two seperate URLs, but this isn't the case here as the search results are always different.
Adding these URL variables to Google webmasters won't fix the problem in other search engines, and will presumably continue to get these errors in our SEOmoz crawl reports.
Changing the title tag each time can lead to very long title tags, and it doesn't address the problem of duplicate page content.
I had hoped there would be a standard solution for problems like this, as I imagine others will have come across this before, but I cannot find the ideal solution.
Any help would be much appreciated.
Kind Regards
-
Technically, the search engines don't want to crawl other "search results". Personally I would try to get individual pages and category pages indexed, while avoid trying to index and "canonicalize" search result pages.
-
Thanks Nemek,
I appreciate your answer.
However, as the site owner my instinct is to seek to get as many pages as possible indexed, so I'd like to get further advice about this before I take action.
The search results pages on our site often mirror what people are specifically searching for in Google, so we'd love our results pages to be highly ranked so as to help these people find what they want, quickly.
Does anyone else have an opinion on the best way forward for us?
Thanks in advance.
-
I would suggest making indexable pages for courses, the rest of the parameters are rather user orientated and - I think - not usefull for SEO. This means separating the search script with browse pages.
This means making find-a-recipe.php, which looks like the search engine, forbidden to robots. Instead, you should have a category browser, using only the course (I suppose no recipe have multiple courses ?). You would have url like :
/recipes/ => all recipes, paginated
/recipes/start/ => all starter recipes, paginated
/recipes/starter/fry/ => fried starter recipes, but you should check the search volume of those expression, like "fried starter recipes". If you have a very small volume of recipes, wait until every subpages of /recipes/starter/ have at least 5 recipes.
The goal here is to make your recipe pages easy to index, with a strong focus on the course type. Although the course may not be the best root category for recipe, this should be a good way to may your site seo friendly.
-
Sure, I understand where you're coming from. I still think there's no easy solution to this, but maybe someone else will have some interesting suggestions.
What I was suggesting in my first reply above is pretty much in line with what Baptiste is saying below. Google used to be very tough on people trying to index search results pages and that's why personally I would try going a bit different way.
Cheers!
-
Hope you don't create link from visitor's researches, like find-a-recipe.php?course=salad**&q=tomatoes** as you would get penalised !
-
Why do you think this? Is it Part of googles terms of service?
-
I manage websites specialising in holiday rentals, so the search pages are very powerful however I only use these for customer experience. For my seo I create pages based on the areas, types of properties, specific searches i.e. villas in florida etc..
I think when building websites you must always have two outlooks; users & seo
-
I noticed this question is still listed as unanswered. Did you come up with a solution you can share with us, and any information about how well it worked? Or are you still looking for advice? Would be great if you could pop back in with an update. Thanks!
-
Hello Baptiste,
I'm keen to know more about why you believe we would get penalised for this. What, specifically, should we seek to avoid in order to avoid the penalty?
Thanks for your help
David
-
I think Baptiste is referring to Google's preference for not including search results in their search results, as the URL in the example appeared to be a search result.
-
Thanks Keri,
Our current experience is that search results from our site are showing up in Google results, sometimes quite high.
So, I'm reluctant to change anything too drastically - "if it ain't broke, don't fix it". But ... maybe we could get slightly higher rankings if we made some minor alterations?
Is there any 'best practice' guidance I could look at to learn more about this specific issue?
Thanks for your help.
David
-
Personally I believe its best practice to have user friendly urls, rather than search generated ones. Google favours this and so do the users. It may be a lot more work to implement, but in my experience (having a site with a lot of categories and posts) it was well worth it.
-
This post is deleted! -
This is something that I've been working on lately. I've been really successfully avoiding duplicate content by using canonical linking, however this has not solve the duplicate Titles nor the duplicate meta descriptions. If you are using a normal web site (static) to post your content as single pages manually, then your only concern would fall into the search pages.
I've switched 100% to Wordpress Blog platforms because of two reasons.
- Google loves them better
- Easier to control content
I've been very successful avoiding duplicate content except for three areas but I do have the solution to repair them as well and I'm currently taking on this task.
The 3 areas of concern are:
- Duplicate Titles
- Duplicate meta descriptions
- Scrapers snatching my unique content and making them their own.
The 3 solutions are: (wordpress platform)
- Duplicate Titles are furnished by pagination next/previous or page #'s at the bottom of each page.
Although wordpress hasn't included this function within the core of its platform yet, Wordpress SEO by Yoast (plugin) automatically add's the new suggested syntax by Google.
Enter rel="next" and rel="prev"
Now, as it goes with these things, Google has just posted the solution. They've asked to add
rel="next"andrel="prev"to paginated archives, so that they can distinguish them as a series and, quote: Send users to the most relevant page/URL—typically the first page of the series.The above syntax will solve our pagination duplicate titles and search paginations. The plugin also adds tag terms at the end of the title for each page. This makes the Title unique.
-
Now the above also tells Google that page #1 is the canonical Title and meta description for all paginations, therefore your meta description is now accurate and safe. The plugin also has an advanced feature which allows you to provide a different description per page other than what the page actually states. Making this slight change makes all the difference.
-
The next problem is robbery or copy infringing my content. My unique content has been scraped and posted without my permission, however now... we can use another rel= syntax to point the article back to the original owner.
rel=”author” and rel=”me” in WP and other platforms
You can allow people to use your content, however the rel="me" tells search engines who the unique content really belongs to. and the rel="author" points to me as well.
This attribute allows you to tell Google who you are as an author and what articles you write. Google has indicated that they believe the authority of an author may even be weighted more heavily than traditional on page metrics, like page or domain authority. As Matt Cutts stated at SMX West, “The concept is that if an author is trustworthy, why does it matter what site the article appears on?”. Author authority also has implications for the impending Panda 2.2 update, which will affect the sites that steal content from other sites to post on their own. If Google sees the same article on 10 different sites, and 1 of those sites clearly identifies an author, marked up with the "rel=author" attribute, which site do you think Google is going to rank?
This is the extent of my research on the above and so far its working well. I hope the above helps for you too.
Cheers!
-
I agree it is best to get the individual pages indexed. Dont have dynamic pages. Instead come up with categories that make sense, have them indexed.
-
The best way to handle this is via the URL Parameters Setting in Google Webmaster or a robots.txt file.
Google added this functionality to handle the exact issues your'e describing, so there's no need to drastically change functionalities which would likely require editing core files in your CMS.
If you click on URL Parameters under Site Configuration in Google Webmaster you will find a list of queries and for each one there available options that instruct google as to how to handle these pages.
To do this:
1. Click Edit for the Paramater you'd like to configure (i.e. course, cooking, etc).
2. In the Dropdown Menu, select Yes. Changes, reorders, or narrow page contents.
3. Choose the option that best describes how the parameter affects the page content.
4. Choose how GoogleBot should crawl these pages.
- I usually choose "Let GoogleBot Decide" as it's Google your trying to please ;). I've designed and optimized several eCommerce store with multiple parameters and this option handles the crawling and indexing of these pages correctly 99% of the time. If you still experience Duplicate Content issues after editing these settings, simply choose the Ignore option.
Dynamic websites are very common these days and this tool is designed by Google specifically to handle parameters in the best possible way and allow Google to understand the URL structure of your site.. The "Don't have dynamic URLs solution" isn't a solution at all, as many modern functionalities rely on dynamic URLs, such as layered navigation in Magento or other eCommerce platforms. How do you suggest filtering products by price, size, color, etc without creating dynamic URLs? These functionalities IMPROVE user experience and navigation. The text in the address bar isn't always the important factor when a user is navigating a site.
Don't overthink it.
Take advantage of the functionality and only de-index pages that are causing duplicate content problems. If you notice specific dynamic URLs are appearing in SERPs too often then create a 301 redirect from that dynamic URL to a landing page with more user friendly URL.
Hope this helps.
Anthony
-
- Setting canonical tag, you should be already doing this rather it's a problem here or not as outlined in seomoz tools you may be missing out on link juice.
I agree with this guy, but I would like to add, why do you want google to crawl your searchable index? Aren't all of your recipes found on your site already by picking categories from a menu?
-
This post is deleted! -
Take Lonnie's advice. Install Yoast. Use the rel=next tags that the software inserts for you automatically. Yoast will fix it all.
Another WP plugin is called htaccess control. And it is also used for this same purpose... It's a little simpler than the Yoast plugin, and if you already have an SEO plugin you like-- or worst yet-- it is built into your theme, like Thesis...
Just go with htaccess control. It is simple to use and your problems will be solved in minutes.