More at Features | Support | Blog | Demo | Community | Download

SEO Considerations

Search Engine Optimization is an important area to address when implementing and developing an ecommerce solution to ensure competitive search engine performance. The following guide outlines current Spree Search Engine Optimization features and future optimization development possibilities.

1 Existing Search Engine Optimization Features

Chapter 1 contains a description of the work that has been completed to address common search engine optimization issues.

1.1 Relevant, Meaningful URLs

Several improvements have been made to improve the urls used for products and taxonomies since the release of Spree 0.4.0. The helper method seo_url(taxon, product) yields SEO friendly urls such as, Rails config/routes.rb is configured to serve the content using these keyword relevant, meaningful URLs.

1.2 On Page Keyword Targeting

Several enhancements have been made to improve on page keyword targeting. The admin interface provides the ability to manage meta descriptions and meta keywords per at the product level. Additionally, h1 tags are used throughout the site for product and taxonomy names. The ease of extension development of layout changes allows for you to target keywords throughout the site.

1.3 Clean Content

The release of Spree 0.8.0 brought a complete overhaul of the frontend including the move to tableless layout. Having clean HTML with minimal inline javascript and css is considered to be a factor in search engine optimization.

1.4 On Site Performance Optimization

Spree has been configured to server one css and one javascript on every page (excluding extension inclusions). Minimizing http requests is considered an important factor in search engine optimization as the server performance is an important influence in the search engine crawl behavior for a site.

1.5 Google Analtyics integration

Google Analytics has been integrated into the spree core and can be managed by a rails preference setting in RAILS_ROOT/app/models/app-configuration.rb. Google Analytics is not included if this preference is set to an empty string. The google analytics setup includes conversion tracking.

2 Planned Search Engine Optimization Features

Although several common search engine optimization issues have been addressed, remaining known issues are discussed in Chapter 2. While solutions for several of the issues are in development, contributions to address the other issues will be very welcome. Visit the contributing to spree section to learn more about contributing.

2.1 Product and Taxonomy Page Title Enhancements

Currently, the Spree core does not include functionality for page title management. The Spree demo has “Spree” as the page title for all pages that use the ‘application’ layout. Page titles are an important part of search engine optimization and should be meaningful and relevant to the page content. Page title templating is in development and can be reviewed at the spree-user group for more information. Discussion of the solution includes creating a templating solution, where  %PRODUCT% from %STORE%  would yield a page title with the product and store name for all product pages (for example: Ruby on Rails Bag from Spree) and  %SECTION% at %STORE%  would yield a page title with the taxonomy name and store name for all taxonomy pages (for example: Apache at Spree). Also included in this discussion is the intended functionality to allow page titles to be overridden at the page level.

2.2 Alt Attribute on Product Images

The alt attribute on product images currently pulls data from product titles or the image filename. Enhancing the image alt tag can improve image search performance.

2.3 Known Duplicate Content Issues

In the Spree demo, it is a known issue that contains duplicate content to Another source of duplicate content is derived from product navigation via different taxonomy paths. For example, is considered a duplicate of Duplicate content can be a detriment to search engine performance as external links are divided among duplicate content pages. As a result, duplicate content pages may not only not be excluded from the main search engine index, but pages may also rank poorly in comparison to other sites where all external links go to one non-duplicated page.

2.4 Integration of Content Management System or Content

There has been quite a bit of interest in development of CMS integration into spree. Having good content is an important part of search engine optimization, as it not only can improve on page keyword targeting, but it also can improve the popularity of a site which can in turn improve search engine optimization.

2.5 Tool Integration

In addition to integration of Google Analytics, several other tools can be implemented for SEO purposes such as Yahoo Site Explorer, Google Webmaster Tools, Quantcast. Social media optimization tools such as Digg,, Facebook, MySpace, and Twitter may also be integrated to improve social networking site performance.

3 Spree SEO Extensions

The following list shows extensions that can improve search engine performance. Refer to the github README for developer notes.

4 External Search Engine Optimization Efforts

Spree cannot control factors such as external links, quality of external links, server performance and capabitilites. These areas should not be ignored in implementation of search engine optimization efforts.