Using Drupal? Here’s the Best Modules for Onsite SEO Optimization

SMS Text

Without a doubt, Drupal is one of the most popular content management systems around; there are millions of websites using it. Many users face one common issue – selecting Drupal modules that are both easy to use and the best at improving the visibility of their website in the search engines.

Although this seems like a difficult and time-consuming task, I can assure you that once you are aware of all aspects that require optimization, and which Drupal modules are the most efficient at facilitating your work, you can complete this project in just a couple of hours.

To start, here is a list of all things that you should fix on your website:

  • Different titles on all pages
  • Write the site Meta description (no more than 160 characters)
  • Use different headings
  • Add ALT attribute to all images (aka image description)
  • WWW resolve (redirect the version of your website with www. to without, or vica versa)
  • Include robots.txt
  • Add XML sitemap
  • Declare the correct language
  • Integrate Google Analytics
  • Decrease page load time (this is the hardest)

Now that I have covered all items that require your attention, here’s all the best modules that will help you optimize your Drupal CMS:

1. The Page Title module. This allows you to easily change the titles of all the pages on your website. It is really simple, so with just a couple of clicks you will have different titles for all your pages.

2. The Meta description tag allows the search engine users to quickly see what your website is all about and decide whether they want to visit it or not. Therefore, it is very important to create relevant descriptions for all your pages. The best Drupal module for this is called Nodewords. You will have the ability to write unique Meta descriptions for all existing pages on your website and you will have additional fields when creating a new one.

3. To create different headings on your website, the only thing that you have to do is to create different nodes on every page. Furthermore, you need to separate each node with sub-titles – piece of cake.

4. When you search Drupal’s website for image modules, you will find many choices. The module I strongly recommend is called Indexing HTML Attributes which allows you to inspect the HTML code of your whole website and add attributes wherever you need (in this case, title and description of image objects).

Indexing HTML Attributes

5. A common problem for many website owners is one they may not be aware of– the fact that their website, if not redirected properly, creates site wide duplicate content which has negative  consequences for your search rankings. To fix that, you will have to redirect the www. version of your website to the non-www. or the opposite (it is up to you). To do that, you need to find the .htaccess file of your website and configure it. However, to make it easier for you, Drupal provides instructions on how to do it . Here is the code (remember to change with the URL of your website):

# adapt and uncomment the following:

# RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
# RewriteRule ^(.*)$$1 [L,R=301]
# To redirect all users to access the site WITHOUT the ‘www.’ prefix,
# (… will be redirected to…)
# adapt and uncomment the following:
# RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC]
# RewriteRule ^(.*)$$1 [L,R=301]

6. To create a robots.txt you will need RobotsTXT module. It creates the file for you, place it in your root directory and allows you to dynamically edit it without using Drupal. However, before making any changes, I strongly recommend learning more about the structure of this file, because you might block the access to some search engine spiders to your website.

7. For your sitemap, use the XML sitemap module. Once installed, the module will automatically create a sitemap for your website and it will allow you to submit it to the most popular search engines – Yahoo, Google, Bing and Ask.

8. If you are running a website which is using a language other than English you have to notify the search engines. If you are using pure HTML it is quite simple, but with Drupal you will need a special module called Internationalization, which will allow you to extend the language capacities of the Drupal core and declare the language of your website.

9. Adding Google Analytics is really easy – you need the Google Analytics module. Configuring it can be tricky, especially if you want to collect more advanced data about your visitors and the actions they are performing on your website. But to start using the module is easy– you will only need your Google Analytics account number.

10. Finally, it is time to decrease the load time of your website. This may be the hardest task on our list, but it has one of the highest values for SEO. The modules I recommend using are Block Cache and Advanced Cache. These two modules will create cached versions of the blocks on your website and thus reduce the time for loading. In addition it is very important to validate your website at The W3C Validator, because that way you will be sure that there are no mistakes in the code. However, if you do find mistakes and you do not have the expertise to fix them, I recommend seeking out someone who can, rather than attempting to fix it yourself and possibly making it worse.

A tip: As you work through the above, use the SEO Checklist Module. It will not only allow you to keep track of what you have completed so far, but will also introduce you to some of the best Drupal SEO practices.

Lyuben Georgiev
Lyuben Georgiev currently works as a SEO manager in a premium Bulgarian SEO agency - SEO PAL. His most favorite topics are onsite SEO and link building. Beside his job, Lyuben is dedicated to his hobbies, which include driving and traveling.
Get the latest news from Search Engine Journal!
We value your privacy! See our policy here.
  • internet boss

    Don’t forget to add Mollom or Akismet. Because of the footprints that installing Drupal leaves, “login or register to post comments” and common URL strings like “/node”, it makes Drupal sites prime territory for link spam and very easy to find. Nofollow any part of the site that has user generated content.

    • Ljuben Georgiev

      Thanks for noticing, I simply forgot this module. I have 2 websites running on Drupal and I totally agree with you – there is a lot of spam, even when I added NoFollow to everything that was generated by the users.

  • Maxence Zanardo

    Interesting, but about drupal 7 ?

    • Ljuben Georgiev

      I think that for now, the developers are working on improving those modules for Drupal 7 and some of those modules are already compatible with the new version. To be frank I still had not had the chance to try it, but I do not think it will make such difference, which will make all those modules unsuitable.

  • Christophe Lombart

    Global redirect is also very nice

    • Andy

      +1 You need this module if you have pretty URLs

  • Chris

    I assume you mean “descrease” page load time… =)

    • Ljuben Georgiev

      Sorry, this is a mistype 🙁

  • Andy

    Nice list generally, but both of those performance modules you mention are obsolete

    • Ljuben Georgiev

      Yes, I know, to be frank I had never needed any of them, but when I was doing the research I found only those 2 modules. If you know any that people can use for that purpose, please share 🙂

      • Andy

        CSS Gzip does what it says on the tin. CDN can overcome the per-domain parallel download limit (as well as integrating with kosher CDNs). Boost is a great module that uses a filesystem-based cache and can work even on cheap shared hosting (making Drupal a possibility on those platforms). Apache SOLR has much better performance characteristics than default search. DB Tuner helps you optimise your database. Memcache and Cache Router can help out with caching. As well as those module-based options there’s also Pressflow which is a modified Drupal distribution with a few core patches to make life quicker. There’s also project pantheon which I think’s still at beta but has a number of these pulled together into an optimised Drupal stack. And Drupal comes with a number of built-in caches that are switched off by default – it’s good to enable them:)

      • Ljuben Georgiev

        Thanks for sharing 🙂 I did not knew most of this, so it is a lot of new info for me 🙂

  • Ben Finklea

    Thanks for mentioning the SEO Checklist module! I’m working on the Drupal 7 version. 🙂

    • Ljuben Georgiev

      I really like this module, thanks for developing it 🙂 It is really cool

  • AlinaGrinberg

    Seem like an interesting tool to use. I myself code html / java and use photoshop flash and SEO right in . For people that do not know all that it actually might be a lifesaver , although sometimes it seems to me that practically it is easier to learn all of the above then go into intricacy of modifying modules someone else wrote for you . Disregard me if i am talking to myself 🙂

    • Ljuben Georgiev

      hah you are right, it is easier to use CMS than to write the code on your own. I have knowledge of Java and PHP on my own, but with systems like Drupal making a larger websites is a loooot easier. However, for smaller websites (around 20 pages) there is no point of using Drupal or any other CMS, because writing the code on all pages is not that hard 🙂

  • Chris

    Good advice, thanks Andy for the server notes. Many marketers who come to me looking for advice are on shared servers so it would be nice to be able to incorporate Drupal into our existing efforts,

  • Mark Daniel

    great article….I would of put in links to the modules and what version though for noobs

  • Gudipudi

    i have almost neglected drupal from past 12 months….

  • smith brell

    The first thing I would recommend in order to improve your onsite SEO (search engine optimization).

  • Anonymous

    On page work is best for seo .. Easily keywords will come high position..
    Aluminium Kozijnen

  • Search Marketing Danmark

    Very good walkthrough Ljuben… Wish some of my clients had read this before they choose their cms.

  • Leslie Strickland

    Thanks for the helpful list! I’ll be connecting with my programmer on this soon!