Meta Stack Exchange is where users like you discuss bugs, features, and support issues that affect the software powering all 153 Stack Exchange communities.

What is meta?
Here's how it works:
  1. Any Stack Exchange user can ask a question
  2. The community provides support, votes on ideas, and reports bugs
  3. Your voice helps shape the way Stack Exchange operates

My question—my meta-question as the case may be—concerns the purpose of these words referred to as "tags". Let me be clear: I use tags. The site supports them, so why shouldn't I? My understanding of their reason for existing is tragically incomplete.

Are they used for searching? Are they useful in any other way, or do they merely act as decoration?

For more information, see "How do I find topics I'm interested in?" and "What are tags, and how should I use them?" in the Help Center.

Return to FAQ index

share|improve this question

migrated from Dec 4 '09 at 4:15

This question came from our site for professional and enthusiast programmers.


Tags are a handy way to create a manually-generated index of related content, with as little input effort as possible.

share|improve this answer

The Encyclopedia Tagonica

By John Rudy, Cigar Afficionado and Preeminent Expert on All Things Fleece

Kinds of Tags

There are many kinds of tags in this great world. Some are physical, some are metaphoric, and some exist only in the darkest corners of software developers' minds.

Some tags which exist in the physical world:

  • Size tags on clothing. These tell you if the shirt you just bought will fit you.
  • Present tags. These tell you the person to whom a present under the tree should go.
  • License plates on cars are also sometimes known as tags.

Some tags which exist in the metaphoric space:

  • There is a children's game called, "tag." I hear it's fun.
  • In baseball, a popular play is called a tag, as in to tag a runner out.
  • Some people refer to receiving a traffic citation as being "tagged."

But chances are good you might be talking about tags on web sites, wherein we get to the Dark Corners of software developers' minds. Tags are used to organize content on web sites. They allow ad-hoc groupings of possibly-related information, typically generated by an online community. They allow users to then navigate more quickly and efficiently to the content located on the site, and to find potentially "hidden" relationships between said content.

On the Trilogy sites, tagging is used in such a manner. Tagging in this way is also often used in the blogging world (also known as the "blogosphere"), and on other community-content-driven sites such as Flickr.

The typical implementation of tagging in such sites is that a tag must be a single word. If a tag needs to be multiple words, different sites have different rules. Some just don't allow it -- you munge all the words together, for example, "sqlserver2008." Others, like the Trilogy, encourage it, but prefer you to use dashes (-) between the words, for example, "sql-server-2008."

Issues with Tags

Setting aside the physical and metaphoric tags (which tend to not have too many issues, unless you've already been pulled over a few too many times), we will continue to focus on content organization. There are issues with this approach:

  • Users define the tags. As a result, different users will define different tags for the same content. See "winforms" vs "win-forms."
  • Some users don't understand tags, and attempt to write a summary of their question in them. This leads to tags such as, "the."
  • Some users use tags which have no right to exist at all. Notable examples on the Trilogy include anything that starts with, "belongs-on," as well as the ever-so-popular "plzsendthecodes."

Because tags are user-generated, they are also often user-editable after the fact. This allows good users to clean up the bad users' tags (removing, say, "belongs-on-meta"). Unfortunately, it also allows bad users to add bad tags to others' content.

share|improve this answer
You win. If you don't mind sharing it with Shog9, I present you (jointly) with one (1) internet. – Super Long Names are Hilarious Dec 4 '09 at 5:16
I will; if it wasn't for his rewrite I wouldn't have had anything to say. :) – John Rudy Dec 4 '09 at 12:42

To qualify as an arrogant bastard, I'm going to use myself as an example and assume everyone else pretty much does the same (probably not).

I practically never look at the front page or generic questions page, simply because the volume of uninteresting questions drowns the ones I'm interested in. Instead, I only check the questions tagged to be related to stuff I'm interested in. Tags are a way to filter out uninteresting stuff.

If SO didn't have tags I'd never have time to wade through all the questions.

share|improve this answer
one issue with that is for things that don't get tagged properly.. but I understand the frustration – warren Dec 6 '09 at 15:23
I so the same thing for exactly the same reasons. – Lawrence Dol Jun 29 '10 at 18:09
@warren: that's what searching is for, I guess – SamB Nov 25 '10 at 20:23

Tags do several things:

  • Tags connect experts with questions they will be able to answer. If you tag your SQL Server question 'mssql' instead of 'sql-server', odds are it won't get near as much attention and may not get a good answer or as good of an answer, because frequent users who use SQL Server have settled on the 'sql-server' tag. They know to watch the sql-server tag for questions they can answer, but are not watching for mssql. A good rule of thumb is that any tag used less than 10 times is almost certainly wrong, and any major language or product tag used less than 100 times is almost certainly wrong.
  • Tags are for sorting your question into specific, well-defined categories. Each tag should by itself refer to a specific category. If a tag only makes sense when used in combination with another tag (like '2005' with sql-server, 'visual' with 'studio', or '3.5' with .net), it's a bad tag.
  • They are used for (weak) statistics. For example, you can't look at the currently 51,715 questions tagged c# and say there are that many C# questions, because some C# questions will simply be tagged .net and some question that are only very loosely C#-related (more about the .NET API, for example) will end up tagged that way. But you can compare the c# tag to other language tags like php or java for relative popularity on Stack Overflow or track the growth of the c# tag over time.
  • Tags are used in searching. You can search within a specific tag by enclosing it in square brackets, like this: [java] generics. That would search for all posts tagged "java" with the word "generics" in them. Additionally, if you search on any one of the top 20 tags, it's automatically converted to a tag search.
  • Tags can award badges. Earn 100, 400 or 1000 upvotes in a specific tag, and you get a badge for that tag. Also, if you click on a tag there is a stats tab where you can view top users within that tag.

Tags do not:

  • Tags are not for summarizing your question. That's what the title and the abstract are for.
  • Tags are not for indexing your question. This isn't audio or video. Stack Overflow and Google can index your question just fine based on the text of your question itself.

Also see these posts:

share|improve this answer

You must log in to answer this question.