Making your site Search Engine Friendly

From Joomla! Documentation

Why Create a Search Engine Friendly Site?[edit]

In order to add your pages to its database, a search engine (such as Google) will send out so-called crawlers, spiders or bots to harvest the text on your site. These bots cannot harvest things that are created by Javascript, or 'see' images (though they do check alt tags) and the don't play well with Flash files if at all.

While all these things may make the site look better, they do little to nothing in terms of search engine optimisation (SEO) without adding descriptive information about those resources which are visible to a search engine (but not necessarily visible to your site visitors).

It is important that your website can be found by people who are looking for its content, therefore you must serve content to search engine 'bots' in a way that they can interpret, analyse and identify how relevant it is to the search query.

For this to happen, you need to bring to the attention of the 'bots' important information about the page using various techniques detailed below - almost like a 'signpost' telling the 'bot' what the page contains. It will then compare what you tell it the page is about, with what it finds by itself, and run various algorithms to check if the page is in fact relevant. It also runs other checks to make sure that you are not trying to cheat the system using 'black hat' or 'grey hat' tactics to make your page rank higher.

It is also possible to add contextual information to your website which helps the 'bot' to understand the context of the information it is indexing, ultimately resulting in more appropriate search results pages when people are searching for topics.

Copyedit.png
This Article Needs Your Help

This article is tagged because it NEEDS REVIEW. You can help the Joomla! Documentation Wiki by contributing to it.
More pages that need help similar to this one are here. NOTE-If you feel the need is satistified, please remove this notice.

Quill icon.png
Page Actively Being Edited!

This article is actively undergoing a major edit for a short while.
As a courtesy, please do not edit this page while this message is displayed. The user who added this notice will be listed in the page history. This message is intended to help reduce edit conflicts; please remove it between editing sessions to allow others to edit the page. If this page has not been edited for several hours, please remove this template, or replace it with {{underconstruction}} or {{incomplete}}.

Using a Sitemap[edit]

Quill icon.png
Page Actively Being Edited!

This article is actively undergoing a major edit for a short while.
As a courtesy, please do not edit this page while this message is displayed. The user who added this notice will be listed in the page history. This message is intended to help reduce edit conflicts; please remove it between editing sessions to allow others to edit the page. If this page has not been edited for several hours, please remove this template, or replace it with {{underconstruction}} or {{incomplete}}.

While search engines can usually find your pages by the way they are linked from other places on the internet, it is good practice to create a Sitemap which gives search engine 'bots' a list of the pages on your website - think of it as a map to find all the content on your site.

Sitemaps are not only important for search engines, they are also very helpful for people with disabilities who may need a simple interface to view your site structure and navigate around the site without using your menu structures. W3C Working Group Note on Sitemaps

A sitemap serves several purposes:

  • Provides a structured list showing an overview of all content on your website
  • Allows a visitor to quickly get an overview of your site structure
  • Provides an alternative way of navigating your website, without the need for complex menu structures
  • Provides search engines with a means of finding content which might not be available through your menu structures (e.g. landing pages)

Types of Sitemap[edit]

It is possible to provide sitemaps for specific types of information, including:

These specialist sitemaps allow you to provide information relating to the specific media type - for example with a video sitemap you can provide information about the running time, category and family friendly status; with image sitemaps you can specify the subject of the image, its license for use, and type of image.

Update Frequency[edit]

While you can manually specify in your Sitemap how frequently search engine spiders should visit your website, they have in-built systems which automatically adjust the frequency of return visits based on how often the page in question has changed.

So, for example, if you tell search engine bots to visit your page on a daily basis, but when it visits the page nothing has changed for a week, it may adjust the frequency of revisits accordingly and not return as often as you told it to. You can request, via the various webmasters portals, for the revisit rate to be amended if required.

This would suggest, therefore, that if you have regularly changing content, your website will be 'spidered' more frequently - leading to content being indexed quickly.

It is generally sensible to specify pages which are static to be crawled less frequently than those which change regularly. For example, a static text article might be crawled once a month, whereas your blog or news page may be crawled once a day or once a week, depending on how often you add new content.

Google Webmaster Tools thread on Googlebot requests & sitemap frequencies

Title tag[edit]

Copyedit.png
This Article Needs Your Help

This article is tagged because it NEEDS REVIEW. You can help the Joomla! Documentation Wiki by contributing to it.
More pages that need help similar to this one are here. NOTE-If you feel the need is satistified, please remove this notice.


The TITLE tag is found in the HEAD portion of your pages. This TITLE tag becomes the clickable title in search engine result pages (SERPs). A title should be under 70 characters in length. It should also include your keywords for the specific page, as close to the start of the TITLE tag as possible.

Google recommends that you create unique, descriptive page titles to describe to searchers what the page is about.

If a title page is not specified, or importantly if Google determines that the title is not appropriate for the content being returned for the search term, algorithms may be used to generate alternative titles which are more relevant.

Google recommends that you follow these key principles when creating a title:

  • Specify a title for every page
  • Make your title descriptive, and concise
  • Avoid keyword stuffing (repeatedly using similar words like "Foobar, foo bar, foobars, foo bars")
  • Avoid using generic titles - each page should have an unique title, ideally dynamically updated in relation to the content being displayed
  • Brand your titles, but do it concisely and in relation to the content being served
  • Use robots.txt carefully, don't disallow search engines from visiting your website

There are various webmaster tools which can be used to identify if there are problems with your listings in a particular search engine - it is always worth paying attention and correcting any problems.

Google support article on using titles for your web pages

Meta Description[edit]

Copyedit.png
This Article Needs Your Help

This article is tagged because it NEEDS REVIEW. You can help the Joomla! Documentation Wiki by contributing to it.
More pages that need help similar to this one are here. NOTE-If you feel the need is satistified, please remove this notice.


The META DESCRIPTION tag keeps a summary of the content on the page. The tag is used by search engines to display a description of the page when displaying it in search engine result pages (SERPs). This, however, only applies if the word searched for is included in the description. Otherwise, the search engine might display another portion of the page, which includes the keyword. When writing META DESCRIPTION tags for your pages, keep them below 155 characters. Also make sure to include the most important keywords for the page in question. Consider the description to be your sales copy to get people to click the link. Thus, the description should be written for humans, not search engines.

Even though Joomla has a global field for Meta Description (Global Configuration > Site > Global Site Meta Description), you should in most cases leave this blank. Google (and possibly other search engines as well) does not like duplicate title or meta description tags. If you add something to the global field, it will be duplicated on all pages that do not have a specific meta description.

Google recommends the following to ensure that you gain the most from your search engine indexing:

  • Ensure every page has unique, relevant meta descriptions
  • Ensure you apply metadata for listing pages (e.g. blog & list layouts) in addition to individual articles - this is commonly overlooked on Joomla! websites
  • Include factual information if relevant (e.g. blog articles may include the author, products might include the price or manufacturer)
  • Consider using automatically generated metadata - but make sure it's relevant, readable and accurate
  • Make your descriptions descriptive!

Google support article on using metadata

Keywords[edit]

Copyedit.png
This Article Needs Your Help

This article is tagged because it NEEDS REVIEW. You can help the Joomla! Documentation Wiki by contributing to it.
More pages that need help similar to this one are here. NOTE-If you feel the need is satistified, please remove this notice.


There are two major parts to understanding keywords: one is the meta tag and the other is density. If you are starting a brand new site you will need to do a little planning for both SEO and simple Joomla structure. Keywords are the focus of your content. You should come up with a list of no more than 25 keywords that describe your site's message. Once you have your list of keywords, keep them in focus as you write content and create Joomla sections, categories, and articles. Use these keywords through your site to improve SEO.

The meta keyword tag found in the head of most Web documents has little effect for Google, Bing and many of the other larger search engines. Yahoo still uses the meta tag as part of the algorithm, as well as some of the meta crawlers. Search engines all read the text in the tag; they just do not apply the information to their ranking algorithms. If your page has a keyword tag, you must make sure that word is on the same page in the content.

Density is the number of times a word is placed in the readable content of a page. If you have ten readable words and one word is a keyword the density of 10%. If you have 100 words and one of them is a keyword you now have a density of 1%. Keep your density between 3.5 and 7 percent. Look for an online density analyzer to get an estimated density of a keyword.

Make sure to use keywords in your titles or aliases, links, and content. DO NOT STUFF keywords. Content that does not make sense and is full of keywords for the sole purpose of raising the keyword density to a high level will cause your site to be penalized in the search engines. It is very difficult to write an article that someone will enjoy reading or find usable and increase the density over 7 percent.

This section has a keyword density on the term “keyword” of 1.79% and on the term “keywords” of 2.05%. The combined density is approximately 3.8%. You can see how deliberate you would have to be to stuff a site greater than 7%.

To Add Meta Keywords to Your Site:

  • Add the 25 keywords to your Global Configuration > Site > Global Site Meta Keywords.
  • Add specific meta keywords to articles using the metadata information. Make sure the keywords listed here are in the content of the article also.
  • Adding the data does not harm your rankings in search engines, and will help you in Yahoo, and meta crawlers. Never add more than 25 words in the meta data. Separate words and phrases with a comma. Do not repeat keywords.

Use Semantic HTML[edit]

What is Semantic HTML?

Semantic HTML is a way of using HTML coding to create or enhance the structure of a page. In other words, it's a way of using HTML - classes, divs, tags and so forth - to compliment the actual words or resources on a page. Again, this helps 'bots' to understand the importance, relevance, and links between the content on your page.

It's important, therefore, that you have an understanding of semantic HTML and how to use it. For example, we often see people using a H2 tag in the middle of content because it has the style that they want to use - but it's not actually a heading. How the content looks has nothing to do with the structure of the page - it's important to remember that the two are quite different.

For example, lets say we have an article:

<h1>Using headings</h1>
This is an article about the importance of headings

<h2>Why use headings?</h2>
It is important to use headings so that search engine bots can tell what is an <strong>important</strong> part of your article

<h3>Types of headings</h3>
You can use set types of headings, but they should be ordered, and structured, within your page.  H1 should be your page title, with H2 being used for sub-headings of the page.  Any headings within your sub-headings should cascade using H3, H4, and H5 as appropriate.

<h2>Is it hard to implement headings?</h2>
It is really easy to implement headings, you just use the appropriate HTML code

<h3>Using headings on dynamic pages</h3>
On dynamic pages, simply wrap your main heading within a H1 (for example, the title of a category listing page would be H1) then wrap all subsequent headings in H2.

Here, a search engine bot could clearly see the structure - h1, h2, h3 - but if we were to simply make these titles bold, underlined and larger font, it would be much more difficult to identify the structure. It is also possible to identify that the word 'important' is an emphasised word, something that is important within the page.

Semantic HTML is also

  • Easier to read (in the code)
  • Easier for accessibility purposes - screen readers function in a similar way to search engine bots to identify important headings
  • Potentially better for search engine optimisation

Wikipedia article on Semantic HTML

Use Links in Your Content[edit]

Copyedit.png
This Article Needs Your Help

This article is tagged because it NEEDS REVIEW. You can help the Joomla! Documentation Wiki by contributing to it.
More pages that need help similar to this one are here. NOTE-If you feel the need is satistified, please remove this notice.


It is important that you ensure any links within your content inform the user what they are linking to, but without being 'spammy' - i.e. stuffed full of keywords.

Ideally you should include words which feature in the URL to which you are linking, and the hyperlinked text should be descriptive of the content you're about to view. An example where this is often done poorly on Joomla! websites is where 'Read more' links display Read More rather than the title of the article, in the hyperlinked text. Another common habit is for sites to only include a link on the word here.

This also gives the person visiting your site confidence in the link they are clicking - they know what to expect when visiting the link, so it may be more likely that they do so.

This is true for both internal links (if you're linking to another page or area on your website) and also on external links to other sites.

Be aware, however, that with recent updates to Google's algorithms (named Panda, and more recently Penguin), sites with unnatural linking profiles may be down-ranked in search engine positions. One of the main factors in the Penguin update targeted websites which had a large amount of its traffic coming from keyword-stuffed anchor text on hyperlinks from low-value websites. Keep your links relevant, appropriate and relating to what you are linking to.

Where possible, it's also wise to regularly check that your links are still valid. The user experience is tainted somewhat if 50% of the links on your site result in a 404 - Page Not Found error. There are components and plugins available which will automate these checks for you.

In short, use links appropriately, but don't make the mistake of not using them where relevant. The user experience is improved greatly when you link to any article you may be referencing (whether internal or external), and the Search Engines generally recognise this.

Have a Structured or Planned Navigation[edit]


Having a good navigation system is hugely beneficial for allowing bots to effectively crawl your site. Joomla goes a long way in doing this for you when used correctly. Using keywords in the actual link title (anchor text) will help improve rankings.

Your site structure starts with your content management - this should be structured according to your website function. A news website might categorise based on the topic (e.g. technology, business, world, etc) but a sports news website might categorise based on sport (e.g. Football, Rugby, Hockey, Cycling).

This is a critical factor in creating your website, and if used properly can have huge implications with regards to your search engine optimisation - as you can use your category name in your Search Engine Friendly URL's.

Once you have defined your content structure, the next step is to create a sitemap - even if it's on the back of a napkin - to identify what your 'top level' menu items will be, and any sub-items under them. This helps you to form an idea of how the visitor will browse your website.


If you are using sub-menus as drop-downs, it is sensible to use text separators at your top level, and the top level for any child menu items - this ensures that users who have touch-screen devices, or those using speech control, can easily click or hover over the top item, and have the sub-menu items display without being directed to a new page before having a chance to select a sub-menu item.

Website navigation is all about improving how users find content in your website. The easier users can find information on your site, the easier search engines will too.

Have an HTML Sitemap[edit]

Copyedit.png
This Article Needs Your Help

This article is tagged because it NEEDS REVIEW. You can help the Joomla! Documentation Wiki by contributing to it.
More pages that need help similar to this one are here. NOTE-If you feel the need is satistified, please remove this notice.


An HTML sitemap is essentially a table of contents for your site. This serves two purposes:

  1. It provides a place where visitors can go to easily get to any content on your site, even if it isn't necessarily easy to access by other navigation aids on the site.
  2. It provides a centralized store of links to the content on your site that can be easily indexed by search engines.
  3. It allows users with disabilities to be able to quickly navigate your website with a simple list of links, rather than through complex menus

At the very least, a sitemap should link to the main sections and pages within your site, but the more detailed you can make it, the better.

There are available extensions that create sitemaps automatically based on Joomla content.

Have an XML Sitemap[edit]

Sitemaps are an easy way for webmasters to inform search engines about pages on their sites that are available for crawling. In its simplest form, a Sitemap is an XML file that lists URLs for a site along with additional metadata about each URL (when it was last updated, how often it usually changes, and how important it is, relative to other URLs in the site) so that search engines can more intelligently crawl the site.

Web crawlers usually discover pages from links within the site and from other sites. Sitemaps supplement this data to allow crawlers that support Sitemaps to pick up all URLs in the Sitemap and learn about those URLs using the associated metadata. Using the Sitemap protocol does not guarantee that web pages are included in search engines, but provides hints for web crawlers to do a better job of crawling your site.

  1. An XML sitemap provides a list of links to the content on your site that can be easily indexed by search engines.
  2. It is possible to create specific sitemaps for News, Images, Multimedia.

There are available extensions that create XML sitemaps automatically based on Joomla content. More about the Sitemap protocol

Things to Remember[edit]

Copyedit.png
This Article Needs Your Help

This article is tagged because it NEEDS REVIEW. You can help the Joomla! Documentation Wiki by contributing to it.
More pages that need help similar to this one are here. NOTE-If you feel the need is satistified, please remove this notice.


There are perhaps a few basic points that readers should away;

  • Anything that requires a login will not be 'seen' by a search engine (though some search engines will allow you to tell them how to bypass these).
  • This article only just starts to scrape the surface.
  • Frequent maintenance and updates are a big part of Search Engine Optimization (SEO).
  • SEO is only the start - it might help people find your site through search engines but you've got to work out how to get them to stay or come back or use your site.

Search Engine Optimization is an ongoing task, the 'rules' used change frequently and simply undertaking SEO work once wont guarantee you a high ranking. Unique content is important, but so is site navigation. If a search engine finds it difficult to navigate your site (e.g. needs 7 'clicks' to reach an article) it will assume that real users will encounter similar difficulties. Sitemaps can help with this issue tremendously.

Although Search Engine Optimization is important, focusing on the basic elements of the user experience (easy navigation paths, unique and compelling content etc.) is often one of the best ways to ensure a higher ranking. Simple steps like ensuring appropriate Meta Keywords and Internal links will help to improve that experience further.