What is the recommended way of dealing with retagging many questions?

For example, if there are only 6 questions that use the when they should be using , it's easy enough to manually retag them, although you get the captcha every two edits, which it rather tedious.

This doesn't scale very well though - for example, something that bothered me is there are about 300 questions tagged as and about 1,500 tagged as .

Obviously mass-retagging could really break things, so it shouldn't be a one-click oops-all-.net-questions-are-now-tagged-subjective.

Perhaps it could be based on voting (in the Tools menu), with a moderators final approval?


Good news

This is now available as a moderator-only function, thanks (as always) to Jeff and the team.

So; if you have a need to merge two (or more) tags, please propose it here on "meta" (so it can be discussed etc), stating:

  • which site
  • which master tag (the one to keep)
  • which tag or tags to migrate and delete

and if appropriate it will enacted by a moderator

To reduce the scope for error, I would anticipate:

  • a grace period (to allow discussion/disagreement along the "no they're very different" lines)
  • a question back on the affected site (tagged with all the tags involved) along the lines of "tag-merge proposed [link]: are these the same thing?", so that the people who know those areas have visibility (the moderators can't necessarily be expected to know the area(s) well enough to directly approve/veto the merge)
  • Great \o/ First request, meta.stackexchange.com/questions/2601/… – dbr Jul 5 '09 at 20:31
  • It's pretty cool that this is now available, but I'm slightly disappointed that some of the other proposed methods for merging/associating tags didn't make it. Specifically, I really liked Bevan's suggestion of tag synonyms: meta.stackexchange.com/questions/623/… – Kyle Cronin Jul 5 '09 at 21:04
  • I can assume it boils down to ROI. Besides which... who said that it will never evolve? It is a pretty good first step, though. I'd rather have the basic offering right now than something more sophisticated "when we have available time/resources" (i.e. maybe never). – Marc Gravell Jul 5 '09 at 21:59
  • Which tag(s) should we use here on the meta site to bring these requests to the attention of the appropriate people? – Joel Coehoorn Jul 6 '09 at 14:51
  • Joel: retag-request is used by three questions just now, then perhaps the appropriate site's tag (stackoverflow/serverfault)? – dbr Jul 6 '09 at 14:54

I'd like to see a way that you could nominate a tag for elimination or merging into another tag. Then it would show up in the 10K tools section where those users could vote for or against the nomination, and hopefully also post comments or concerns. Enough votes and it all happens at once over night.

There are some issues with this, though:

  • It's tough to automate tag elimination, because sometimes the tag you want to eliminate is the only tag on a question. We need to know what to do in that scenario.
  • Do we want to restrict the future use of eliminated/merged tags?
  • When merging tags, we need to add the merged tag to the job that automatically updates tag synonyms.
  • When merging tags, how do you handle multiple distinct synonyms. For example, correcting 'access' to become 'ms-access', what about questions pertaining to "disk access"? Obviously those latter questions are tagged poorly as well, but that doesn't mean they won't exist. Perhaps that becomes part of the discussion, where the "disk access" questions are identified and corrected manually first.
  • 2
    Nomination + votes seems fairly robust. Placing such power into a single mods hands is dangerous – Robert Gould Jun 28 '09 at 23:44
  • I like this solution. However we have to be careful of the wildcard filtering now. If someone has set up their filter for say vs* and retag all vs2010 to visualstudio2010, they may lose their desired highlighting – Nathan Koop Jun 29 '09 at 15:08
  • I hope no one uses vs* now, because the visualstudio* tags greatly outnumber vs* tags. But the point is valid: what if we suddenly decided to reverse that? – Joel Coehoorn Jun 29 '09 at 16:29
  • @Nathan Koop The solution is meta-tags. – Piotr Dobrogost Jul 1 '09 at 21:30

Another issue with the 1-by-1 approach (if you take the time) is that you swamp the front page... suggest that batch retags shouldn't set the "last updated" (or whatever) that triggers the front page.

  • I thought if you only changed the tag that the question doesn't get sent to the top of the Active list. – Bill the Lizard Jun 30 '09 at 18:17
  • 1
    I've seen tag edits regularly hit the front page. – Marc Gravell Jun 30 '09 at 23:13
  • the current moderator-only tag rename function does not touch any fields, it literally rewrites history in place -- and there's no undo short of a database restore (!) so be careful. – Jeff Atwood Jul 6 '09 at 2:55

I set the # of questions per page to 15, open the first page worth of questions in browser tabs, retag each one (closing the tabs as i go), refresh the tag query page, and repeat.

I don't do this very often. It's a huge PitA. And as Marc notes, anyone doing it this way pretty much owns the front page 'till they're done.

A system where you could propose a tag merger, comment on it and vote for or against it... would be great. Heck, we could actually use this Meta-SO site (via questions with a retag-proposal tag) for that purpose, if the admins were willing and able to process the results...

  • 1
    If the tools were there, I think this could work; but it would depend on the volumes... – Marc Gravell Jun 28 '09 at 21:34
  • 1
    @Marc: yeah... i think we'd want to decide on a threshold for mergers; maybe 5 up-votes or something. Ultimately, i don't think it should be a completely automatic process though; if someone points out a good reason not to merge two tags, then leaving it up to the discretion of a moderator / administrator could help to avoid unintentional problems. – Shog9 Jun 28 '09 at 21:51

The problem with this is it won't always work, I for example moved from rosetta to rosetta-stone, because there already exists something with that name, that has nothing to do with a question that asks for examples in other languages. Which means the tag should still exist, but many thing that were tagged rosetta had nothing to do with that technology/module whatever.


I think that rather than attempting tag mergers there could maybe be a way of creating tag synonyms.

For example 't-sql' and 'transact-sql' are made to be synonyms for 'tsql'.

Otherwise you'll have about as much luck as King Canute...


Automatic changing of tags can be very problematic. I think that re-tagging really needs to be a manual effort because you have to read the post to figure out what the tags should be.

However, the re-tagging process needs some serious streamlining. I occassionally try to do some re-tagging because I have slight OCD when it comes to organization of things, but it becomes incredibly tedious in a short amount of time.

What we need is system that will support re-tagging in batches:

Step 1: Select Source tag Step 2: Select Target tag Step 3: System shows you posts with the Source tag one at a time. For each post you say "Source", "Target", "Other", or "Remove" to choose whether to leave the Source tag alone, convert it to the Target tag, convert it to some other tag, or remove the tag entirely.

This would make it very easy to convert tags but allow manual confirmation that the tag should be converted. I don't think that it's possible to fully automate this process but the process described above would make things as easy as possible to correct.

You must log in to answer this question.

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