Thursday, 30 December 2010

How to Speed up your Joomla website

One of the main Content Management System used though out the world is the award winning JoomlaOpen Source CMS platform. Many websites, business, government bodies prefer to use Joomla as their chosen CMS, due to the simplicity in managing contents and also the wide choice of extensions and modules available to download and install.

The overall default structure of Joomla is not slow at all, the framework of Joomla is built in a way to allow one to customise and add various extensions and modules with ease where necessary. This is where the main issues are when many would experience Joomla speed of loading the website in browsers, the site has to pull many resources, at one particular time many SQL queries are happening and at times this causes the site to crash or slow it down drastically.

Search engines are now giving allot of importance to WebPages loading speed in their ranking results, which puts allot of pressure on web developers, business owners, and designers, to ensure that their website is built in a way that is complaint and acceptable by search engines, and at the same time offers all the features and functionalities that the business requires, but most importantly it also loads up on a web browser in a good time.

This does not mean that your Joomla site can't be made to load faster, there are basic techniques you can do to optimise your Joomla website to increase speed.

Server: By investing into a good server, resolves half of the speed problem, when looking to host your Joomla site, ensure that the server is offering you plenty of speed and bandwidth to cope with your site. If you building a big site, and expecting allot of traffic it would be best to opt in for a dedicated server for your Joomla Site.

Optimise the template: There are many readymade templates you can download, some free and some paid but not all of them are correctly optimised, some templates take long to load, due to the HTML coding and the overall design of the theme. The first thing you could do increase the speed of your Joomla site to optimise the theme template, by reducing the images in the main template, if removing the images are not possible then reduce the size of the images to ensure quick and easy load, as each image has to be retrieved from the server when displaying the website on the browser.

Modules: Once your site is complete, by getting rid of unused items this will take some burden of your site, such as deleting the modules that are not being used, deleting the extensions that you don’t require, and also removing articles that you are not publishing. The less extensions and modules the server needs to fetch, this will help in the load time of your Joomla site.

Gzip: Gzip works in a way when the server compresses the files and sends one compressed file, which then uncompressed and displays to the user. This technique does use allot of CPU, so when enabling this feature ensure that your hosting CPU can handle it. The best way to see if it works is to try it.

Joomla Gzip

To enable Gzip, go to: Global Configuration > Server Tab > and select Yes to GZIP Page Compression

Cache: Another feature of Joomla is that you can turn on Cache, from the Global configuration. The way Caching works is that the server creates a static HTML page of your site on the server, and when someone requests to view your page, it will fetch that particular HTML site rather than pulling the contents from the database every time. By enabling caching you are also reducing your bandwidth, as it takes up fewer resources to form the server to display your site. Caching helps not just to reduce the load speed of a Joomla site, but most dynamic websites.

Joomla Cache

To enable caching on Joomla: go to: Global Configuration > Systems Tab > under the Cache Settings box, Select Yes to Cache.

You can then select how often you want to enabling caching by setting a time, this is the time it saves on your server, before it is replaced with new one. The time here you can set according to how often you would be updating your contents, by default it is set at 15mins.

While we talk about Joomla, I would also like to mention, as part of optimising your Joomla site, make a habit of taking regular backups, you can use components such as Akeeba. As you never know when you might need to restore your site to the backup that you have just taken. Joomla is an open source platform, the coding and the structure is known by many, which also increases the chances of malicious code being injected and hacking, so by taking backups on a regular bases you are covering yourself, which will save you time and hassle to get your site back up and running to the form it was. The other reason you should take back ups is in case your optimising changes goes wrong, at least you can refer back to the site that you had before you did the optimisation.


  1. Thank you for the tips on how to speed up the site. Have a joomla site that is slow and trouble shooting why. Thank you again! Changing servers/host.

  2. Hello, is it good to have a plugin like this?

  3. We havent tried this plugin our selves, but it seems fine. Check the reviews on it.

  4. Thanks for a great article Wasim!
    Well written, with clear simple step by step instructions that were easy for a newby like me to follow.
    Changed the settings on our site - after backing up of course :) - and it is loading much faster now.
    Lots of thanks for the help Wasim,