The key to maintaining search engine friendliness is the ability to quickly change as new strategies are introduced and older ones become irrelevant. Search engine optimization (SEO) is an ever-changing entity that requires constant attention. The actions that generated results six months ago may be completely antiquated today. That’s why the Magento Enterprise and Professional Editions are already one of the most search engine friendly platforms right out-of-the-box. As an open source, modular platform, Magento allows users to stay ahead of their competition through the ability to upgrade and evolve. Current editions have features like URL rewrites, site map generation, and caching that help maintain the flexibility to control important aspects of SEO. But there are some limitations to the platform that could be impacting your SEO rankings. Some of these limitations can be resolved fairly easily in the backend while others can require the use of extensions or customization.
Magento-Powered SEO Features
By default, Magento product URLs look something like this: http://www.example.com/tag/product/list/tagId/12. However, a great SEO feature of the platform is URL customization, where you can customize the URLs to be more engine (and user) friendly. Make sure to enable this feature on the backend by going to System -> Web -> Search Engine Optimization, look for Use Server Rewrites, and select Yes.
Magento also allows users to enable a Google sitemap. You can go to Catalog -> Google Sitemap -> Add Sitemap and generate one. Take full advantage of this feature by submitting it to Google Webmaster!
Last but certainly not least is the full-page caching feature of Magento Enterprise. Every platform has its limitations but Magento does what it can to counter those – full-page caching is one of those fixes. This is one of the most important things you must do to ensure your ecommerce web site is performing at its best because it caches primary pages for all users, making pages take less time to load.
Magento SEO Limitations
One of the most talked about SEO limitations of the Magento platform is related to slow page load times. As a front-end heavy platform, Magento should reside on the best server environment available to you as well have caching enabled. Search engines take load time into consideration when ranking ecommerce websites, so having a fast, high performing site is not only important to conversion, it is vastly important to search engine rankings.
Another thing to consider is canonical tagging. For Magento, it’s imperative to use because the script sets up the URLs without a trailing slash; without this tag search engine spiders can cache duplicate content that can cause major ranking issues. This is even more evident after the Google Farmer update, which actually penalizes websites for duplicate content.
Lastly, Magento comes with a blank robots.text file out of the box. With it, you can let search engines know what should and should not be indexed on your site. Due to the complexity of the script, there are a number of directories and URLs you won’t want to get crawled.
Here’s an example of our robots.text file:
Groove Commerce Magento Robots.txt 05/2011 # # robots.txt # # This file is to prevent the crawling and indexing of certain parts # of your site by web crawlers and spiders run by sites like Yahoo! # and Google. By telling these "robots" where not to go on your site, # you save bandwidth and server resources. # # This file will be ignored unless it is at the root of your host: # Used: http://example.com/robots.txt # Ignored: http://example.com/site/robots.txt # # For more information about the robots.txt standard, see: # http://www.robotstxt.org/wc/robots.html # # For syntax checking, see: # http://www.sxw.org.uk/computing/robots/check.html # Website Sitemap Sitemap: http://[your_website]/sitemap.xml # Crawlers Setup # Directories User-agent: * Disallow: /404/ Disallow: /app/ Disallow: /cgi-bin/ Disallow: /downloader/ Disallow: /includes/ Disallow: /js/ Disallow: /lib/ Disallow: /magento/ Disallow: /media/ Disallow: /pkginfo/ Disallow: /report/ Disallow: /skin/ Disallow: /stats/ Disallow: /var/ Disallow: /blog/ # Paths (clean URLs) User-agent: * Disallow: /index.php/ Disallow: /catalog/product_compare/ Disallow: /catalog/category/view/ Disallow: /catalog/product/view/ Disallow: /catalogsearch/ Disallow: /checkout/ Disallow: /control/ Disallow: /contacts/ Disallow: /customer/ Disallow: /customize/ Disallow: /newsletter/ Disallow: /poll/ Disallow: /review/ Disallow: /sendfriend/ Disallow: /tag/ Disallow: /wishlist/ # Files User-agent: * Disallow: /cron.php Disallow: /cron.sh Disallow: /error_log Disallow: /install.php Disallow: /LICENSE.html Disallow: /LICENSE.txt Disallow: /LICENSE_AFL.txt Disallow: /STATUS.txt # Paths (no clean URLs) User-agent: * Disallow: /*.js$ Disallow: /*.css$ Disallow: /*.php$ Disallow: /*?p=*& Disallow: /*?SID=
Extensions and plug-ins improve upon the out-of-the-box SEO features of Magento. The beauty of an extension is that it doesn’t interfere with the core code base, maintaining your ability to upgrade and to remain scalable. The SEO Suite Pro extension by Mageworx takes Magento default to the next level by allowing you to optimize product review URLs, create more robust title tags, optimize HTML header, add a canonical meta tag and extend the sitemap functionality. We recommend this extension for all our ecommerce website development projects because it addresses the previously stated SEO limitations of Magento.
All things considered, the inherent flexibility of an open source platform will allow you to address the areas that are known to impact search engine rankings today and to continue to optimize your strategy in the future. Sometimes, the features you want will be included in the default settings; other times simply enabling or configuring features on the backend is all it takes. For those few things that Magento doesn’t provide for you (yet!), there are extensions that can fill in the gaps. SEO for ecommerce is an industry that is forever changing and evolving; it’s vital to have a platform to support that change.