Now a fast loading website, its performance and great UI (User Interface) is one of the most important key-point for your online business and great search engine visibility.
Joomla! CMS itself good enough for high performance, security and page loading speed. Joomla! alone isn't responsible for your website performance. Joomla! is a trusted CMS which by using you can build small to enterprise level websites using it's thousands of third party Free and Commercial Extensions (Component, Module, Plugin).
Here are some important points about your website and it's performance.
- Bad hosting/Server setup - 40%
- Non-optimized images - 20%
- Loading external Non-SSL (HTTP) urls over your SSL enabled website - 20%
- Bad cache configuration - 10%
- Loading unnecessary scripts and styles - 10%
1. Bad hosting/Server setup
As you know, shared hosting didn't setup only for your needs. It setup to meet with other applications and global users needs. Most of shared hosting provider try to build it for giving you best performance, but you don't know how other users using the same server. As well as you don't have any idea how much server resources and loads eating by others websites and applications.
What if you use VPS, Dedicated or Cloud server. Well, it's very good, but the server can't run your website itself. It needs OS (Operating System) and appropriate software to run your websites and applications. A bad configured server will run your websites but not enough to make you happy with it's performance and page loading speed.
2. Non-optimized images
Lets say, you need images for your Slideshow. You searched and bought or downloaded free images from Internet, and then uploaded to your website for the Slideshow. Easy right?
But you didn't check the image dimension and size you downloaded and uploaded. It could be 5000 x 4000 (width x height) and size could be 5MB - 10MB. But if you give 2 mins for resizing and optimizing the image before uploading, you could reduce its size to 90KB - 250KB. Now you see how much bandwidth, page size and loading time you save just for using properly optimized images.
3. Loading external Non-SSL (HTTP) urls over your SSL enabled website
It's applicable only if you have SSL enabled on your domain.
For many reason you may need to add external script to your website. Not only you, your third party Extensions (Components, Modules, Plugins) could load external scripts on your website. Example: Google map script, Analytics code, jQuery, web fonts, JS/CSS. But you have added external scripts with "http://yourscript" instead of SSL enabled one "https://yourscript".
Now when visitors browsing your website, their browser will block all external Non-SSL scripts/URLs and this will affect with your page loading speed dramatically.
After investigating a customer website, I was able to reduce page loading time 9s to 4s just by adding "https" to an external script which was loading over "http" by a "plugin".
4. Bad cache configuration
Bad configuration on Joomla!'s default caching or third party caching plugin can also decrease your website performance instead of increasing. Check all available settings one by one to make a final decision about caching settings requires for your website.
5. Loading unnecessary scripts and styles
Your website can load lots of unnecessary script and style files. It can be added by a template, extension or you. All RcaTheme Templates coded minimized as possible for reducing unnecessary scripts and styles loading. It also has inbuilt options to enable/disable extra features. To avoid this as possible, read documentation and see all available configuration options carefully for the Template or Extensions you're using. Example: All of RcaTheme templates loads jQuery framework by default, now you can disable jQuery on all of your third party extensions by using their setting options.