SEO tips that every Joomla! website should enable

Search Engine Optimization is not something which you can do overnight and typically seo optimization services may cost you and arm and a leg - however there are some basics which you can and should do to ensure at the very least that your website is Search Engine Friendly. Here's our list of Joomla SEO tips to ensure the best optimization for the least effort.

Joomla SEO tutorial and optimization tips

1. Host your website on a good joomla hosting server

Make sure you are on a good joomla hosting server. A fast reliable server is your first step. Don't go for home servers, or cheap hosting servers. Get a server which is fast, reliable and Joomla friendly. HostGator do a fantastic job on hosting Joomla! websites.

2. Enable Search Engine Friendly URLs

Although you can use the built-in support for SEF URLs, it is highly recommended that you the a dedicated SEF component - these typically offer significant SEO advantages over the core component. Our favourite by far is sh404SEF. Besides creating SEF URLs, it allows you to monitor which requests are generating 404 errors, such that you can ensure you any broken areas of your site are immediately fixed. These are especially usfel after migrating a new website. You can also chose to redirect old URLs to the new URLs. It also includes inbuilt support for stuff such as surrounding your titles by H1 tags, and other standard Google friendly SEO techniques. Meta descriptions are also supported by sh404SEF, and it has great support for other popular Joomla components such as Kunena forum and others popular components.

3. Make sure you have a good sitemap

Generate a sitemap and create a link to it - we currently use XMAP and it suits our purpose well, but there are others you can use. It is important that you use a component such that when you add more content to your website, this automatically gets added to the sitemap. The important thing is not just to generate a sitemap once and forget it, but to keep it current as content keeps being added. An out of date sitemap is only slightly better than no sitemap.

GoogleWebMasters Help also suggest and recommend why you should have a sitemap.

4. Submit to WebMaster tools

Submit your website sitemap generated in the previous step to Google Webmasters, and Bing WebMasters. Google WebMasters is an invaluable tool if you want to closely monitor how you are doing in your SEO. We won't delve into the details of WebMasters here, but if you are serious about SEO, then you need to make sure you visit Google WebMasters often and understand clearly what's going on. These two search engines will be the ones which generate most traffic by far. Buying access to a 100 million other directories is probably a waste of money.

5. Improve your page titles

The TITLE tag is highly regarded by Google and can make a significant positive or negative impact - sh404SEF above allows you to set a good title which can optimize your SEO.

6. Improve your meta descriptions

These are also highly qualified by Google and you should put a description which makes sense, ideally for each page

Take a look at the following Google WebMasters video which explains why these are relevant to increase search ranking, click through rate and overall ROI

7. Optimize your Robots.txt file to allow images to be indexed

Below there are several ways with which you can use images to make your website SEO friendly but these depend on Google actually indexing your images folder.This is the first step towards that optimization ;)

The only optimization requires is that you remove the Disallow on the images folder in the robots files.

Open your robots.txt file (in the root folder of your Joomla! website) and remove the /images line so that now search engines are not denied from indexing your images.

8. Use good alt tags for your images

Good alt tags are essential. Search engines give these tags a lot of relevance. Also make sure the name of the image also makes sense. 

9. Specify the image dimensions when including images

This allows the space to be reserved in the website even before your image has actually loaded. What this does, it makes your website load faster, and it has been proven time and time again that websites that load faster help SEO greatly.

10. Make sure that your websites is fast!

Make sure you enable content and URL caching and make sure that Joomla! is loading as fast as possible. Enable Browser caching by enable a Joomla! system plugin which is available by default in Joomla (Extension > Plugin Manager > System - Cache). Make sure the Browser Cache is set to yes, and make sure the plugin is enabled. Also, enabling GZIP compression helps improve loads times by compressing the content of your website (Global Configuration > Server and switch the option for Gzip compression to "Yes"). Optimize the image size to reduce load times by using Google's Page Speed Tool.

10.1 Leverage Browser Caching

<FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf)$">
Header set Cache-Control "max-age=29030400, public"

10.2 Install JCH Optimizer

This is a great tool which does a great great job of optimizing your page load times.

10.3 Read through the Simple Performance Guide

10.4 Specify a default character set

Simply add the following line in your .htaccess to specify a default character set

AddDefaultCharset UTF-8

If this doesn't work, research on how you an do this on your hosting server. The following is a good place to start

10.5 Remove captions.js and mootool.js

Check whether any components are using captions.js and mootools. If they aren't, then its a good idea to drop them. These two scripts have been added for some JCaption functionality which many times is not used by your website, so you can remove these two javscript files completely - they are "bloatware" for lack of a better term. the mootool.js file by itself is a good 70K file so dropping it will give you a nice slimming down of your website's total download size.

Add the following to your template before the </head> ... 

  $headerstuff = $this->getHeadData();  
  $scripts = $headerstuff['scripts']; 
  foreach ($scripts as $path => $val) 
    if (strpos($path, 'mootools.js') !== false || strpos($path, 'caption.js') !== false) unset($scripts[$path]); 
  $headerstuff['scripts'] = $scripts;
<jdoc:include type="head" />

Last but not least - make sure you are developing a website and content which your users will find useful and will want to visit and share. There is nothing better than good content to Search Engine Optimize your website.




15,000+ Users trust us - Subscribe