The use of tagging on websites seems to be something which has gradually become mainstream in recent years, particularly since the advent of 'web 2.0', where it became very widely used. I thought I'd explore this phenomenon, as well as discussing the implications, advantages and disadvantages of tagging and tag clouds and exploring how various different sites have approached it.
Generally on most websites, tags are used as a categorisation mechanism. They allow items (be they blog posts, articles, questions or something else) to be associated with words which generally represent topics, ideas or categories. Most users of the web will likely have encountered them and probably does on a daily basis.
Tags are likely to be found displayed in two different ways:
- As a list of tags belonging to a single item
- A tag cloud (or 'weighted list')
Typically both approaches can be found on a website which uses tags. Using Flickr as an example, we find that each photo can have a list of tags to which the photo is associated. As well as showing the tags associated with the image, each one is also a link so that it is possible to view a list of other photos using this tag. Flickr have taken this one step further by linking first to all the photos from the same user with the tag, and also providing the means to see all public photos using it.
Flickr also provides a tag cloud in several areas of the site which shows a selection of the more popular tags, or the tags used by a given user. As would be expected, clicking on any tag in the list results in a page showing photos which have that particular tag assigned.
My blog (and many others) uses a similar approach. Each blog post is assigned a number of tags and these are displayed along with the post details. Clicking on a tag brings up a list of all the posts which use that tag. The site also contains tag clouds; the front page contains a small cloud with some of the commonly used tags and a large tag cloud is available for showing all the tags used on all posts. Again, clicking on any of these tags brings up the page showing all posts assigned to it.
Tag Clouds: Genius or Clutter?
As previously mentioned, tag clouds are a popular way of presenting a list of tags used on a site (or by a particular user or similar). A tag cloud (or 'weighted list' to use the correct visual design term) is a list of tags whereby each item is given more or less prominence depending on its importance. Generally importance correlates directly with the frequency of use.
Importance in tag clouds is generally illustrated using one (or more) of the following methods:
- Weight (normal, bold)
Each of these approaches has specific advantages and disadvantages and are sometimes combined to create different visual effects or to portray another level of detail. However the most commonly seen type is generally where importance is represented by size. Those tags which are more frequently used are shown large and those which are infrequently used are shown smaller.
Opinion in regards to tag clouds seems to be split. People such as myself generally like them and find them useful (I wouldn't have put one on my blog if I didn't), but others do not find them of value and prefer alterative methods for finding information.
I have to be honest, I never found really useful tag clouds for browsing a website and finding what I’m looking for concerning a specific tag.
Reading the above article, it is hard to determine whether Antonio specifically dislikes tag clouds, or whether it is tagging in general he objects to. Many of the problems he describes are issues which afflict tagging in general rather than being expressly cloud-related, and are things I have covered in the following section.
A good point which he does mention though is that users generally do not read each tag, rather s/he will scan the page and pick up on larger tags and ignore smaller ones. This is not desirable if the tag the user is interested in is actually one of the small ones as it might end up not being noticed.
In addition to the above point, Wikipedia notes that the area of the tag cloud can affect the likelihood that the tag will be seen by users. Specifically, the tags in the centre and top left get the most attention due to the fact most Western languages read from left to right, top to bottom. In exploring this tendency for myself, I discovered that I generally follow on a broad diagonal line from the top left to the bottom right, particularly focusing on the larger tags. This image shows this tendancy on a tag cloud of US Presidential speeches:
I don't think this is necessarily a problem with tag clouds, but it is worth bearing in mind. The problem of users missing tags is compounded when the size of the tag cloud increases, particularly if the end result is a vast cloud with many small items compressed together to form a huge wall of tags. In my opinion, when a tag cloud reaches unwieldy proportions it then does begin to lose its effectiveness.
Like any other design element or technique, tag clouds should not be seen as a silver bullet or default presentation method. If a site is beginning to outgrow its own tag cloud, it might be time to explore different ways to display the data.
Tag lists (also referred to as tag indexes) are an alternative form of presenting tags where equal weight is given to each tag. Generally, they are displayed in a more regimented format which is easier on the eye for large collections of tags.
Stack Overflow shows its tags in such a list, and allows filtering to find a particular tag. This works particularly well as it allows casual browsing of tags as well as allowing users to drill down and find tags matching their specific needs, and does not overwhelm the user with a wall of text or too many items showing at once. The ability for a tag cloud to show tags both alphabetically and illustrate popularity has also been retained by the option to show tags in descending popularity order or in alphabetical order.
The Downsides to Tags
My opinion on tags in general is that it is a nice and quite intuitive way of loosely grouping items together without having to rigidly define categories. As a content publisher, tags are infinitely flexible as you can just add new ones whenever you need them. However, this flexibility can be a big problem too.
It can be very easy to just create a whole bunch of tags which essentially mean the same thing ('c-sharp', 'csharp', 'c#'). This creates clutter as the tag clouds/lists get filled up with similar tags and it makes it very difficult for visitors to then locate the content which they are interested in. For a visitor viewing a site with the above example, which tag should s/he look under if s/he is interested in items related to the C# language? This can particularly be a problem on a site with many contributors, as different people will naturally think of slightly different variations.
Another potential problem is that it can be easy to create tags which have very little value. Would a 'miscellaneous' tag (for example) help or hinder visitors? Generally, this seems to happen quite infrequently as people focus on the important aspects of the item when assigning tags, but it is still a potential problem well worth looking out for.
Addressing these Problems
Tackling these shortcomings generally boils down to two things: improving the user experience and discipline. If the experience of adding tags to items at creation-time is improved in all the right ways, it can dramatically cut down the likelihood of pointless duplicate tags being created.
Implementing some sort of auto-suggestion mechanism can make it a lot easier to know which tags have already been defined and therefore which ones to use. This is an approach many websites have taken and it really does make a difference. A good example of this is Stack Overflow. When adding a new question, you must enter the tags relating to the question. Rather than just letting users get on with this themselves, assistance is given in the form of a drop-down. Once one (or more) letters is typed, the drop-down list appears with some tags the user may be looking for. As more letters are typed, this is refined.
In addition to providing the tag suggestions, Stack Overflow's implementation also displays the number of uses next to the tag and shows them in descending order based on that number. Strictly speaking this is probably not needed as the main goal is simply to ensure users do not reinvent different variations of tags. However it does help since most people would be more likely to use a common tag than one which is only used twice.
Tag Name Conventions
The conventions related to naming tags is something which will vary from site-to-site (and vary in importance from site-to-site depending on the nature of it). Some sites have a fairly well-defined set of rules as to how tags should be created and used. The content of these rules is unimportant and should be tweaked to suit the site, however it is their application which is important to ensure consistency.
Ensuring a simple consistent set of conventions regarding tags is another area where Stack Overflow have done the right thing. When entering a new question and the tags input field takes focus, some simple and easy tagging guidelines appear in the help box.
Typically, when I implement a tagging system I use a set of rules similar to Stack Overflow. Tags should be one word (multiple words in a tag separated by a dash) and separated by spaces. Since most tagging implementations I've created are used only by me (this blog) or a select few people, that's all that is needed. Of course, using a set of rules like this means tags also work well as a section of a URL, which is always a nice usability and SEO plus.
Tagging on a large site, like all user-generated content, is never going to be perfect despite providing guidelines. People make mistakes and will still occasionally create tags which are equivalent in meaning to others. This means that some form of maintenance is required - if something is tagged badly, it will need to be edited to fix it.
Once again, this is something Stack Overflow have nailed. Due to the very nature of the site, the community at large are free to edit and improve content throughout the site and are actively encouraged to add and fix things. Because of this ethos, it is rare to see something badly written, badly tagged or badly formatted to stay that way. Stack Overflow have actually taken it one step further and have set up a way to help the tag synonym situation - specific tags are designated as synonyms for the 'proper' variant, and when the synonym tags are used, the post ius automatically assumed to be tagged with that proper tag.
Of course, not all sites work this way, and not all sites are as open as Stack Overflow is. However I do believe that tagging systems (those which do implement guidelines for tagging at least) ought to have some kind of process for ensuring they aren't mis-used. Whether that's just the website administrator occasionally fixing things or the community doing it, it doesn't matter. And don't think you, as the sole author of a small blog, are immune. It is just as important that your site is organised in a predictable and consistent way, it just all falls to you and you probably know your own blog well enough to not have too much of a headache. Ultimately, whatever methods are used, the end result is a more consistant experience which makes finding specific content of interest easier. And that is the main (probably only) goal of all this stuff.
Generally, I find the concept of tagging to be very useful and quite intuitive. However it should always be remembered that tags should be applied in a consistant manner and to aid navigation.
Display tags to users can be done in a variety of ways including tag clouds and lists. These can also be combined with the ability to filter or search the tags if required. It also appears to be the case that the more tags there are, the more unsuitable a tag cloud can become, as it gets more and more difficult to locate a particular topic within it.
As with all design and UI elements, tags should be used where appropriate, and thought should be given to whether they work in a given scenario or just add additional unnecessary clutter and complexity. However on a personal note, I like them and find them a valuable aid to navigation from both a user and publisher point of view.