Tagging was popularized by websites associated with Web 2.0 and is an important feature of many Web 2.0 services. It is now also part of some desktop software.
The use of keywords predates the internet and carried over to early websites as a way for publishers to help users find content. In 2003, the social bookmarking website Delicious provided a way for its users to add "tags" to their bookmarks (as a way to help find them later); Delicious also provided browseable aggregated views of the bookmarks of all users featuring a particular tag. Flickr allowed its users to add free-form tags to each of their pictures, constructing flexible and easy metadata that made the pictures highly searchable. The success of Flickr and the influence of Delicious popularized the concept, and other social software websites – such as YouTube, Technorati, and Last.fm – also implemented tagging. "Labels" in Gmail are similar to tags.
Websites that include tags often display collections of tags as tag clouds. A user's tags are useful both to them and to the larger community of the website's uses. This collective set of tags is known as a folksonomy.
Tags are a "bottom-up" type of classification, compared to hierarchies, which are "top-down". In a traditional hierarchical system (taxonomy), the designer sets out a limited number of terms to use for classification, and there is one correct way to classify each item. In a tagging system, there are an unlimited number of ways to classify an item, and there is no "wrong" choice. Instead of belonging to one category, an item may have several different tags.
In a tagging system, typically there is no information about the meaning or semantics of each tag. For example, the tag "orange" might refer to the fruit or the color, and this lack of semantic distinction can lead to inappropriate connections between items.
People often select different tags to describe the same item: for example, items related to a version of Apple's operating system may be tagged "Mac OS X", "Leopard", "software", and a variety of other terms. This flexibility allows people to classify their collections of items in the way that they find useful, but the personalized variety of terms can make it difficult for people to find comprehensive information about a subject; in order to catch every relevant item, they may have to search several times using different keywords. Users also have to decide whether each tagged item is actually relevant to what they're looking for.
Larger-scale folksonomies address some of the problems of tagging, as users of tagging systems tend to notice the current use of "tag terms" within these systems, and thus use existing tags in order to easily form connections to related items. In this way, folksonomies collectively develop a partial set of tagging conventions.
One common challenge in tagging systems is that people use both single and plural words as tags. A user could tag an object with "teacher" or with "teachers", which can make finding similar objects more difficult for both that user and other users in the system.
Another syntax for use within HTML is to use the attribute rel="tag" to indicate that the linked-to page acts as a tag for the current context. More detail is available in the rel tag specification
]