In this article I am going to teach you how to make your Joomla website faster. And then at the end of this if you are still dissatisfied with your page speed scores I will suggest a minimalist template that's extremely fast (100% out of the box).
Before you start try opening this page speed tester in another window.
Now that you opened that up enter your url in the box and press analyze.
What's your score?
Take a look at all of the potential problems there and let's start with the easiest possible solutions.
But, before you start trying to make your Joomla website faster
It's a good idea to take a back up in case anything goes wrong. Also realize that many extensions or even optimization extensions can conflict with others. So some things will work below for you and others not.
Proceed carefully and constantly test things out.
Basic techniques to improve your Joomla site's page speed
Here are the basic techniques for making your Joomla site faster. Try these first before you do anything else.
1. Turn on caching
There are 2 places to do this.
- In the back end of Joomla go to System>Global Configuration>System>Caching>Conservative Caching and press save.
- In the back end go to Extensions>Plug ins and do a search for System - Page Cache and enable it.
2. Enable compression
Go to System>Global Configuration>Server Settings>GZIP Page Compression and enable it.
3. Optimize your images
You should compress and size all of your images before uploading them to your site. Smaller equals faster. Fewer images make for a faster loading page and no images are the fastest.
I currently use Tinypng.
4. Remove what you are not using or what is not working
LESS IS MORE.
The more components you have added to your Joomla site then the slower it will be. Go to the backend and remove any extensions that you aren't using. If you are not sure then disable them for now.
Have comments on your site? Are people commenting? Try disabling them to see what the difference is in page speed.
Intermediate techniques to make your Joomla site faster
Here are some techniques you can use to further your page speed.
5. Try an extension (but choose wisely)
You can try an extension, however they don't always work because they can conflict with other extensions on your site.
JCH optimize is a popular one for combining Javascript and CSS files. I used to like it back in the day, butYou can also minify them too. Results vary per website. I used to get good results from it back in Joomla 2.5 and then in Joomla 3 not so much.
Try it out and see if it helps. Keep in mind some things you can do without an extension.
Also you can check out other extensions that might help with page speed.
But....
I do not recommend the "extension" called "Jspeed". That has no relation to the template I created called Jspeed. That was created in 2020 and my template was created in 2018. That is a rip off copy cat. I read once, "how you do one thing is how you do everything".
So...
If the guy would blatantly rip off the name of my template (for a related product which is a copyright violation) then I'd guess that he probably copied JCH optimize or another extension and then charges you money for it.
I have ZERO respect for copycats.
Advanced techniques for making your Joomla template faster
Get deep into it.
6. Combine all of your CSS files into one
One CSS file loads faster than two. And a compressed file loads faster than one that is not. Combine all of your template CSS into one file and then reference those files in the head of the index.php file.
You can do this for extensions that have separate CSS files too.
7. Remove unused CSS
The smaller the CSS file the faster it will load. It can be complex and confusing to find out what CSS is being used on some and all pages.
So do so carefully.
8. Put it in your index.php file if...
You can put it in your index.php file if it isn't much after you removed the unused portion. This is uncommon advice and some will recommend against it. But it will make your site load faster if it's a small amount of CSS.
9. Eliminate the unnecessary JS files
Find out what JS files are not being used on your Joomla site and eliminate the calls to them, but as usual do so carefully. Sometimes you can do this with an extension and sometimes not.
Often you can put a line of code in the index.php file that will do this too.
10. Defer JS files
You can do this by using an extension or sometimes by putting a few lines of code into your index.php template.
Sometimes this extension worked for me and others it didn't.
11. Get rid of Google fonts
Or get rid of any unnecessary fonts as these add to the HTTP requests on a page.
12. Optimize .htaccess
This will not work on a shared server, but you can try it otherwise.
Go to your cpanel on the backend and add the rules to all the different files. For example:
- ExpiresByType image/gif "now plus 1 month"
- ExpiresByType image/jpeg "now plus 1 month"
Learn more about how to use htaccess to optimize Joomla.
13. Use a CDN
You can use Cloudflare for free. You can sign up and then get the process moving. You'll have to change the nameservers on your server too.
Want the fastest Joomla template?
Well, the fastest template is not going to have a lot of bells and whistles. It's going to be very simple.
14. Get an optimized template
Your template might be the problem.
Your template makes a difference and every template is different.
Out of the box few templates are fast and ready to go. But you can try out different templates to see which is faster. Some say they are fast, but not really.
This minimalist Joomla template that you are looking at right now gets 100% out of the box (with no extensions). See for yourself.
And...
I am a bit obsessive about things like page speed. I would go over and over again on how I could make my template faster. Sometimes extensions would increase my page speed considerably, sometimes they would just a little and others not at all.
But I never got a 100% until I made this template.
I also liked the idea of not using an extension to increase page speed, so I made my own.
Do you want to get a 100% on page speed?
I created a template that does just that and you are looking at it right now. It's extremely simple and fast.
Get 100% with this simple Joomla template that is extremely fast.
Or
Read more about this minimalistic Joomla template.