Joomla SEO or Search Engine Optimization is not something which you can do overnight and typically 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 - these are ALL extremely important if you want to get great ranking results.
Joomla SEO tutorial and optimization tips
1. Host your website on a good 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. InMotion do a fantastic job on hosting Joomla! websites - and we host our website on them because we want it to be fast - and Google friendly.
Remember that Google does not like websites which are not fast.
2. Keyword, Keyphrase and Topic Research
Finding the right keywords to target
It's always difficult to find the right keywords to target. They are either very very competitive. Or they don't have any traffic. How do you find the right middle ground? We can tell you how we find our good long tail keywords. It's saved us lots of time. And it helps us bring plenty of great traffic.
Here's an excellent video about doing good keyword research from ahrefs
3. Enable Search Engine Friendly URLs
Although you can use the built-in support for SEF URLs, it is highly recommended that you get a dedicated SEF component - these typically offer significant SEO advantages over the core component. Our favourite SEF plugin by far is sh404SEF - which we've added in our list of Joomla extensions. 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 useful after migrating a new website. You can also choose to redirect old URLs to the new URLs. It also includes in-built 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.
4. URL + Organizational Structure for Search Engine Optimization
The good thing is that the CMS lends itself very well to this type of on-page Joomla SEO. By default, it organizes all the content into categories and sub-categories. Your job to optimize the content for search engines is to create the categories and sub-categories which make sense for the content you plan to provide. Together with the search-engine-friendly URLs, this goes a long way to improve your site in the eyes of search engines.
The below image shows what your content structure should look like:
How to use Joomla Categories for better rankings
So given that we are discussing that you should organize a structure, how do you do this with Joomla. Let's give an example of how to do this to optimize for better positions in the SERPs. Since one of the topics of our website is Joomla, we create a category "Joomla" and then multiple other Joomla specific categories nested underneath it. So you can see that there are "Tips and Tricks", "Tutorials", "Modules", "SEO" etc. These are all nested within the parent category.
We do that for all the sections and categories of articles which we want to talk about. See below a screenshot of what it looks like on our backend.
How to use Joomla menus for optimal internal linking
We'll see below that internal linkings are great for passing page rank. So after you've created your categories of articles, you need to create a menu structure which is optimized for passing link juice (or page authority). What we do is we create a home page which links to a featured articles component, so that we can feature any article from any category.
We then create a menu item which links to each parent category. For each category, we aslo create sub-menus for each nested category within the parent category. This creates an excellent top-down structure which is fully optimized for search engine crawlers.
See below how we create our own menu structure.
5. Avoid creating very deep link structures, or very wide categories
6. Create Internal Links to pass Page Rank
7. Make sure you have a good sitemap
Generate a sitemap and create a link to it - we currently use JSitemap 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.
8. Submit to WebMaster tools (or Google Search Console)
Submit your website sitemap generated in the previous step to Google Webmasters, and Bing WebMasters. Google WebMasters or what is known today as the Google Search Console 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.
9. Improve your page titles - one of the most important ranking factors
The TITLE tag is highly regarded by Google, it is one of the highest on page seo ranking factors which you can influence and can make a significant positive or negative impact - sh404SEF above allows you to set a good title which can optimize your SEO. Of course, if you are looking for a great Joomla seo plugin, you don't need to go further than sh404SEF Joomla extension
10. Improve your meta descriptions
Your ranking results get a huge positive effect if you implement careful title and meta descriptions by improving your Click-Through-Rate (how many people click to your result)
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
Also remember to create a description for your site which is optimized for search engines. The SEO settings can be found here under System > Global Configuration > Site Meta Description and Site Meta Keywords. It also goes without saying, that your site Joomla Robots section should be set to Index,Follow so that search engines indexing can occur.
Bonus: The basics of on-page SEO
There are some SEO basics which apply to any CMS, whether it is Joomla, or WordPress or any other content being written on the web. These video from ahrefs explains the onpage SEO basics which you need to always remember.
11. 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.
12. Use good names and 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 especially for the content, context and keywords which you are looking to rank for. If you want to rank for Joomla SEO, then your first image should be called - you guessed it - that same keyword!. The rest of the images on the page should also follow a similar keyword rich naming convention.
13. 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.
14. Make sure that your website is fast!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.
14.1 Leverage Browser Caching
Header set Cache-Control "max-age=29030400, public"
This is a great tool which does a great great job of optimizing your page load times.
14.3 Read through the Simple Performance Guide
14.4 Specify a default character set
Simply add the following line in your .htaccess to specify a default character set
If this doesn't work, research on how you an do this on your hosting server. The following is a good place to start http://www.askapache.com/htaccess/setting-charset-in-htaccess.html
14.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" />
15. Make sure your Joomla site is mobile-friendly
In April of 2015, Google made a strong ranking signal changes. If your site it mobile-friendly, it will be favoured in search engine results to sites which are not mobile-friendly. By defualt this means, that if your site is not mobile-friendly, you site is getting a very strong negative ranking signal. So if your site does not pass the Google Mobile-Friendly test - make sure you've done the necessary changes to make it responsive and mobile friendly.
As explained various times on this website having good quality content flowing on your website is critical for modern SEO practices. We typically recommend to post a minimum of two times per week with posts being 500+ words, however, the more the better. Find interesting and searched for topics to write content about. This can come from common customer and prospect questions or you can leverage Google auto-compete or Adwords tool to research various blog topics.
17. Optimize Contact Page
Your contact page should have some very key information to help associate your business with other listings around the web. Make sure to include your business Name, Address and Phone number (known as N.A.P.). Then link your NAP to Google+ local and use microdata to help bring more readability. I'd also suggest including an embedded Google Map to your contact page in order to help link your business locally.
18. Expand Your Content
It's very important that you create completely separate pages for each service, product or location your business offers instead of simply lumping them all together on one page. This will give Google/Bing more content pages to crawl that are more specific to what your business is doing. Make sure you diversify all the content as much as possible especially when working with multiple locations. Write specific content that's unique and engaging for each seperate page.
19. Optimize Your Footer
Just like your contact page, including your N.A.P. and linking it to your Google+ local account and including microdata is a great way to give google a very rich reading of your business and the various pages associated with your business.
20. Find (and remove) Duplicate Content
Duplicate content can be a huge optimization killer. The problem is Google can't easily determine which piece of content is the correct one to index and associate with the link credit. This causes your overall page's rank to decrease. You can view duplicate content in Google Webmaster tools or use 3rd party tools like ahrefs to help audit and manage duplicate content. Much of the duplicate content that occurs in Joomla (due to categories, tags, etc) can be cleaned up with SH404SEF and/or .htaccess rewrites.
21. Optimize the Browser title for keywords you want to rank
Joomla 3 has a great feature for search engine optimization - you are able to customise the page titles for any page to whatever you want to. If you want to target specific keywords for specific pages, you can easily do this. The title is a great place to put good keywords to improve the SEO of the current page. The drawback is that this is done on a menu item level, not at page / content level - to do this at page level you'll probably need to look for an external component. So on to how we do this:
- Find the menu item which you want to optimize (say the home page) Menus > (Menu name) > menu item
- Click on Advanced Options > Page Display Options
- Find the "Browser Page Title"
- Insert the title which you want to show, ideally using the target keywords you want
- Save, close and refresh that page :)
SEO Tips Bonus: Link Building
There is no real SEO without getting good incoming links from website which are in the same industry as yours. You can do as much on-page optimizations as you want, however there is nothing as good and as an optimum ranking signal as getting good links to your website. You'll have to develop a strategy to get incoming links to your site for optimal ranking and good search engine results.
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.
There's plenty of more stuff you can do to get great Joomla SEO optimization - but these are a good starting point!