10 Tips to Speed Up Joomla Performance

speed up joomla

Joomla is a free and popular open-source content management system (CMS), built on a MVC framework, and used by at least 2.7% of all the websites on the internet. It is used by corporations, online magazines, government applications, small businesses, and all different types of websites. In this post, we will discuss tips on how to speed up Joomla performance to ensure your website keeps running fast, ensuring a good experience for your visitors.

Joomla was originally released in 2005 and is the second most popular content management systems (CMS), putting itself in between WordPress and Drupal. Here are some reasons why people choose Joomla:

  • Community: Creating a community with Joomla is incredibly easy. Out of the box it supports a membership area, newsroom, forums, articles, input from external authors etc
  • Multilingual: Unlike WordPress, Joomla comes with built-in capabilities to create a multilingual website. No additional plugins and components need to be installed in order to be able to translate your website.
  • Cleaner Extension Directory: Joomla has a little over 7,000 extensions which in turn results in a much cleaner and organized extension directory than that of the WordPress plugin repository which holds over 40,000 plugins. The WordPress repository is known for having a lot of useless plugins, such as Logout Roulette.
  • Built-in Caching: Unlike WordPress Joomla comes with built-in caching options as well as additional caching extensions.
  • Easy-to-use: Joomla! does not require a full-time developer on staff to manage it day-to-day.

Joomla! The Flexible Business Solution — Robert Jacobi, arctg.com

Joomla is currently used on many popular sites such as:

  • Linux.com
  • ITWire.com
  • Harvard – GSAS
  • The Eiffel Tower
  • United Nations Regional Information Centre for Western Europe
  • MTV Greece

According to W3Techs, Joomla currently holds a 6.1% market share, putting it as the second most popular CMS, with only WordPress ahead of it. According to BuiltWith, 3% of the top 100,000 websites are using Joomla.

joomla market share

CMS Market share Source: BuiltWith

And according to the regional data, Joomla is widely more popular in the United States and western European countries, with a strong presence in Germany.

joomla regional data

Joomla Regional Market share Source: BuiltWith

Speed Up Joomla

It is very important to keep your Joomla website running fast because speed affects everything from your traffic, conversions, revenue, and even your SEO rankings! Here are stats from a case study Radware did on page load times.

  • Shopzilla saw a 12% revenue increase after improving average page load times from 6 seconds to 1.2 seconds.
  • Yahoo increased traffic by 9% for every 400ms of improvement.
  • Amazon increased revenue by 1% for every 100ms of improvement.
  • Google says they lose 20% of their traffic for each additional 100 milliseconds it takes a page to load. Speed matters. Google also incorporates your page-load time into your site’s search rankings.

How long does your Joomla website take to load? Use our website speed test tool.

Follow these tips below on how to speed up Joomla and keep it running fast to ensure return visitors. We are using Joomla 3.4.5 in our examples.

Speed Up Joomla Index

  1. Latest Version
  2. Content Delivery Network
  3. Joomla Cache
  4. Image Optimization
  5. Joomla Compression
  6. Optimize CSS & Javascript
  7. Clean Up Joomla (DB)
  8. Browser Caching
  9. Speed Optimization Extensions
  10. Choose Fast Web Hosting

1. Latest Version

It is very important to always run the latest version of Joomla as it usually contains fixes such as code improvements and speed enhancements. Also, make sure to keep your extensions up to date.

Update Joomla Core

To update Joomla to the newest version you can either click on “Update now!” notification which should show up on your dashboard, or you can manually update by navigating to “Components” → “Joomla! Update.” Remember to back up your website, especially on major release updates.

update joomla

Update Joomla Extensions

To update your Joomla extensions navigate to “Extensions” → “Manage” → “Update.”

update joomla extensions

2. Content Delivery Network

Implementing a Content Delivery Network (CDN) with Joomla is an easy way to speed up Joomla and instantly see decreased load times. By doing this, you will ensure you are serving your Joomla assets (product images, javascript, CSS) from multiple locations around the globe so they are delivered faster to your visitors.

joomla cdn

KeyCDN has a simple 7 step integration with Joomla in which you can follow, utilizing the free extension “CDN for Joomla!”. Once the Joomla CDN integration is completed, the static content will be delivered from the 25 points of presence (POPs) around the world. All POPs are enabled by default and there’s no extra fee for locations in Asia or Oceania. Traffic spikes can easily be handled by the CDN (instead of the origin server). KeyCDN also supports HTTP/2 for even faster content delivery.

3. Joomla Cache

Joomla actually has some pretty powerful caching built-in already which you can enable. Cache is a way of serving pre-generated content to your users. This means that the server does not have to look up all information requested in the database every time a page is requested. There are two steps when it comes to enabling the cache in Joomla.

Step 1 – Enable Cache setting in Global Configuration

To enable the cache setting navigation to “System” → “Global Configuration” → “System.” Then enable the Cache option. Make sure to hit “Save.” Note: It might log you out after this.

There are two caching options to choose from:

  • Conservative Caching: Caches the content for each unique user
  • Progressive Caching:  Caches and delivers the same cached content to all visitors

joomla cache configuration

Step 2 – Enable Joomla system cache plugin

Now you need to enable the Joomla page cache plugin. Navigate to “Extensions” → “Plugins.” This is a large list so you will need you will probably want to search for the term “cache.” Then enable the “System – Page Cache” plugin.

joomla page cache plugin

Here are some popular 3rd party Joomla caching extensions you might want to try as well.

4. Image Optimization

As we mentioned in a previous post on smart image compression, on average 56 percent of a website’s page weight is made up of images. So optimizing images can drastically decrease your page load times and speed up Joomla. Unfortunately in Joomla there is no built-in option for image compression. So you can either compress and resize them beforehand in a tool like PhotoShop (using the “Save for Web” feature) or an online tool, or using a Joomla extension. We highly recommend the EIR – Easy Image Resizer extension. It is developed by Viktor Vogel, a Joomla! specialist at 1&1 Internet SE.

As of version 3.3.0, EIR is now integrated with KeyCDN’s Optimus Image Optimizer so that you can take full advantage of our amazing lossless compression in Joomla! Here is an example before Optimus lossless compression in Joomla.

Here is an example after Optimus lossless compression in Joomla.

That is a decrease of 71.72% in image file sizes simply by using the Easy Image Resizer Joomla extension! Here are a few additional extensions that also deal with image optimization:

5. Joomla Compression

Joomla has a Gzip compression feature built right in which you can easily enable. Navigate to “System” → “Global Configuration” → “Server.” Then enable “Gzip Page compression.” Don’t forget to hit “Save.”

joomla gzip compression

This will allow you to pass the “enable compression” test with PageSpeed Insights.

pagespeed insights enable compression

6. Optimize CSS & Javascript

By concatenating your CSS and Javascript files you can improve your frontend performance and download times, as your browser doesn’t have to fetch as many files and it reduces the total number of HTTP requests being made. Remember though if you are running over HTTPS and your server supports HTTP/2, this is no longer necessary. If you are unsure of whether your server supports it, you can use KeyCDN’s HTTP/2 test tool. Minification is also recommended, which is the process of stripping out whitespace, line breaks, etc.

Unfortunately, this is not built-in to Joomla, but there are some good third party extensions which you can use to enable this features.

7. Clean up Joomla (DB)

Sometimes you might have issues where your database tables need to be repaired and optimized. Joomla doesn’t have a feature built-in for this but you can easily do it via PhpMyAdmin.

Repair MySQL DB Tables

In PhpMyAdmin simply click on your database, select the tables needing repair, and from the dropdown select “Repair table.”

joomla mysql repair tables

Optimize MySQL DB Tables

The process for optimizing your MySQL tables is pretty much the same. Click on your database, select your tables, and from the dropdown select “Optimize table.”

joomla mysql optimize tables

If you have a lot of third party extensions that you no longer use it is also recommend to delete/drop those tables to ensure your database sizes remains small.

8. Browser Caching

You can enable browser caching by editing the page cache plugin. This tells the browser whether they should request a file from the server or grab it from the browser’s cache.

To enable navigate to “Extensions” → “Plugins.” This is a large list so you will need you will probably want to search for the term “cache.” Then click into the “System – Page Cache” plugin. You can then enable “Use Browser Caching.” Don’t forget to hit “Save.”

joomla browser cache

You can also do this with expires headers.

Apache Example

If you are running on Apache you can add the expires directives to your .htaccess file.

<ifModule mod_expires.c>
     ExpiresActive On
     ############################################
     ## Add default Expires header
     ## http://developer.yahoo.com/performance/rules.html#expires
     <FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf)$">
     ExpiresDefault "access plus 1 year"
     </FilesMatch>
     </ifModule>

Nginx Example

On Nginx the expires directives can be placed inside http {}, server {}, location {}, or an if statement inside a location {} block.

location ~* .(jpg|jpeg|png|gif|ico|css|js)$ {
expires 365d;

We also recommend reading our article on cache-control.

9. Speed Optimization Extensions

If you are wanting to take your Joomla site one step further you might want to check out these additional Joomla extensions which offer additional ways to boost your website’s performance.

  • jQuery Easy (Call jQuery from Google CDN or locally)
  • LLFJ – Lazy load your images, prevent additional HTTP requests until the user scrolls down
  • Javascript Async and Defer – Improve your page loading time by allowing javascript loading asynchronously
  • ScriptsDown – Move your scripts down to the bottom of the page

10. Choose Fast Web Hosting

And of course, last but not least, choosing a reliable and fast web host can be one of the most important decisions you will make when running Joomla. We recommend staying away from cheap shared hosting as they tend to overcrowd their servers and you will end up sharing resources between hundreds of people. We suggest going with a VPS like Digital Ocean, Linode, or Vultr. The reason is because you will be in complete control of your resources. And if you aren’t as tech savvy or don’t want to manage your servers via CLI, ServerPilot is a great control panel alternative which works with the VPS providers mentioned above.

Summary

As you can see there are many ways you can improve the speed of Joomla, from implementing a CDN, caching, image optimization, compression, concatenation and minification, DB optimization, and choosing a good web host.

Do you have another way to speed up Joomla that we missed? We would love to hear about it below in the comments. Or drop by our new web performance community.

Related Articles

10 Tips to Speed Up Joomla Performance was last modified: April 10th, 2017 by Brian Jackson
  • Great Article

    Website Owner have the dream to increase loading speed of for their blog/website. They should learn about the tactic and embed the implement those strategy to their website.

    Thanks for sharing this.

  • marzenit

    It’s possible that my webpage is slow for limitations on my hosting?
    I use OVH

Share This