Let me start by saying that I know that there is gamification in receiving tag-badges. Users* want the badges to show they have skills in certain areas.

I am active the tags and I have seen an increase in what I would call bad tagging. Examples of bad tagging, include adding , MySQL error message tags, to basic SQL questions.

Now, I know these tags are related, but they seem to be adding unnecessary noise, so I was looking for an official stance on how to handle this and I did not find a clear answer. A few of the posts send mixed messages:

The question happened to be about SQL tags and the accepted answer basically says there are five tags so use them if the tag is relevant.

The next question:

Had a great answer from Jeff Atwood

No, you should not add tags that are a superset of the question.

Those two answers seem to disagree with each other. Then I found the How do I correctly tag my questions with a great answer by Joel Coehoorn that says:


  • Do not re-tag a question if you are not going to add value to the question information by doing it.
  • Do re-tag questions to use well-known and popular tags that are appropriate for the question.

What is considered appropriate tagging? Are these edits incorrect? Should they be rolled back?

I don't want to get into editing/rollback wars with people, and I was hesitant to even ask a question about it, but how should these edits be handled?

*Even high-rep users

  • 5
    Here's a good example.
    – Kermit
    Apr 12, 2013 at 19:38
  • 6
    I like this: "My question is what is considered appropriate tagging? Are these edits incorrect? Should they be rolled back?" You can add "Should the tagging users be spanked with a mod hammer?" Apr 12, 2013 at 20:12
  • 8
    +1 I asked that myself recently. I know a high-rep user in the SQL area adding exactly that tags to include it in his profile just to say: First to get that badges.
    – juergen d
    Apr 12, 2013 at 20:25
  • 2
    I tried to ask something similar but could not get to the point as you did.
    – juergen d
    Apr 12, 2013 at 20:54
  • 5
    @FreshPrinceOfSO Why is tagging something as just [mysql] better than tagging it as [mysql] [sql] [sql-update] [mysql-error-1064]? Adding a useless tag like [query] feels abusive, but all of those look like legit tags that would help future users find the question.
    – blahdiblah
    Apr 12, 2013 at 22:16
  • @blahdiblah the mysql tag already implies it involves sql.
    – Kermit
    Apr 12, 2013 at 22:55
  • 4
    @FreshPrinceOfSO Sure, and [mysql-error-1064] implies both, but breadth in tagging is generally a good thing. Someone who knows the answer might only be following [sql] but not [mysql], and a later searcher with the same problem might reasonably restrict their search results to [sql]. I want those people to find that question.
    – blahdiblah
    Apr 12, 2013 at 23:01
  • 2
    @blahdiblah It makes no sense to add tags such as update, where, from, table when asking a sql question. Same principle here.
    – Kermit
    Apr 12, 2013 at 23:12
  • 2
    @FreshPrinceOfSO It does make sense if the question concerns one (or more) of those keywords (like this one). And it can also make sense to apply the sql tag to questions about where clauses. I see no reason to pick only one of the two if they're both relevant.
    – Caleb
    Apr 13, 2013 at 6:15
  • Actually it doesn't @FreshPrinceOfSO. SQL is a standard language that's been varied. MySQL has it's on procedural language as well. If the question is tagged SQL then you know it doesn't involve procedures. Apr 13, 2013 at 6:46
  • 4
    [query] and [select] look like pretty bad tags in general. Apr 13, 2013 at 9:40
  • 3
    @CodesInChaos - I agree. I don't see either of those tags add any value. Anyone interested in those tags will be following SQL. If anything their existence is a hinderance as if a question is only tagged with either of those very few people follow either and will see it. Apr 13, 2013 at 11:54

3 Answers 3


In my opinion, appropriate tagging refers to adding tags that are not redundant and are relevant to the information in the question. If I see a question that doesn't follow this guideline, I would modify (or rollback if appropriate) so that the tags are relevant and are not redundant. Since this topic is oriented, I will be speaking from that position.

Example 1

Question with a tag, is implying a platform agnostic query. The tag is not necessary here, since query is part of the SQL acronym, and implies that is the nature of the question. Since there are very few questions that are actually platform agnostic, the tag should really not be used because it's ambiguous.

Example 2

Question with a tag, implies the SQL Server platform. From there, the question should state the nature of the question ( or ). If the tag exists, there is no need to list the DDL components of the query (UPDATE, FROM, WHERE, JOIN). Of course, if the query has an ORDER BY and it isn't behaving like it should*, then it should be included.

Example 3

Question with a tag, implies the MySQL platform. Let's say the OP states that it is giving an error and does not mention what that error code is, but a tag appears. This tag does not follow, just because the user editing guesses that is the error being thrown.

In summary, I would modify Joel's use of "appropriate" and state the following:


  • Do not re-tag a question if you are not going to add value to the question information by doing it.
  • Do re-tag questions to use well-known and popular tags that are appropriate relevant to the question.

*Inside joke

  • 5
    I agree on most, except the "Question with a [sql] tag, is implying a platform agnostic query." No, it isn't. Question with a [sql] tag, is implying a question related to the SQL language. Nothing more. Questions for MySQL that involve SQL queries or statements should have both [mysql] and [sql] tags. Queries about SQL-Server that involve SQL queries or statements should have both [sql-server] and [sql] tags. Queries about SQL-Server administration (e.g. "Why my Restore is taking so long") should have only the [SQL-Server] tag. Apr 14, 2013 at 16:54
  • @ypercube My only concern with your suggestion is that a tag of sql-server should be accompanied by tsql, no?
    – Kermit
    Apr 14, 2013 at 23:15
  • No @FreshPrinceOfSO, something tagged sql-server should only be tagged T-SQL if T-SQL is involved; It's not always. If it's SQL then it should be tagged sql-server and sql. In the same way you can tag something oracle and sql or oracle and plsql, ditto postgres and plpgsql etc etc. Apr 16, 2013 at 21:05

It would be nice if we could just apply the simple rule "use any tags that exist and match the question." Alas, this doesn't really work on SO (it does work reasonably well on some other SE sites) because of the huge number of crap tags.

The questions I ask myself when deciding whether a tag really is useful are:

  • "Could someone want to follow / ignore questions with this tag?"
  • "Could someone want to search for this tag?"
  • "Could someone be an expert on this tag?"

and, specifically when deciding how to tag a post:

  • "Would someone following this tag be more likely to know the answer than a random user?"

and also:

  • "Is this tag redundant to others on this question?"

So, for example, let's take FreshPrinceOfSO's example question about UPDATE queries in MySQL. What tags should it have?

  • — sure, that's kind of obvious. It's a popular tag favorited by many users, with a well defined scope.
  • — technically, that applies too, but it's kind of redundant to . I wouldn't use it here, but I wouldn't remove it either.
  • — are there really experts specializing on UPDATE queries? I kind of doubt that, and the fact that the tag only has 12 followers (which, on SO, is statistically indistinguishable from zero) pretty much confirms it. Useless.
  • — um... nope. Just nope.

Note that the redundancy criterion is not absolute — there's plenty of personal judgement involved. I wouldn't normally tag a MySQL question with , since anyone watching the tag will almost surely know that we also have a tag. However, if the question wasn't really restricted to a specific SQL dialect, or if it was about some obscure dialect that most people had never heard of, I'd definitely include the generic tag.


The only question you need to ask yourself is: Is the tag relevant to the question?

If a question has tags that aren't directly relevant to the question, go ahead and remove them. (Example: Questions tagged with objective-C are often also tagged with xcode even though they have nothing to do with the development environment.) If a question has room for more tags and you think adding a relevant tag will be useful, go ahead and add it.

There's no need to concern yourself with finding the single most relevant tag. If there are multiple tags that work, there's no harm in attaching both even if one tag implies the other(s).

I know these tags are related but they seem to be adding unnecessary noise

I disagree with your premise that adding and to the same post is a problem, and the tag summary for seems to support my position:

This tag can be used to refer to SQL queries against a database (SQL-Server, Oracle, MySQL, etc.) or for filtering and manipulation of memory data structures (jQuery, Linq).

I'm not sure what kind of "noise" you're thinking of. Tags exist mainly to help people find relevant questions and answers. If the question at hand would be useful to someone searching for questions about queries, then by all means use the tag. If it would also be useful to people searching for questions about SQL, add that tag too. There's no "noise" to speak of unless one of the tags does not, in fact, relate to the question.

  • 1
    If the question is about queries, sure. Not if it only contains queries. Apr 13, 2013 at 14:35
  • 4
    Meh, I disagree. The query and sql tags combined on the same question do nothing to help narrow it down. Almost every programming related question involving any RDBMS platform also involves a query. I would much rather see sql-server for example than either or both of those tags because they add no specific value.
    – Aaron Bertrand Staff
    Apr 13, 2013 at 18:40

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .