Why not just have 1 tag or 3 tags? Or have 10, 20 or 30?
I think it was to prevent under-categorizing and over-categorizing. With fewer than 5 tags you're hurting the visibility for the subject. I can ask a question that encompasses
[best-practice] and have those all be legitimate tags for the subject that I'm asking about. It's helpful for people searching/subscribing to a tag and for other generic searches. Limiting it would hurt searchability of a question.
More than 5 and most questions end up being shotgun tagged to abuse its visibility. Many times on SO I see questions tagged with the top 5 most discussed languages when they really only vaguely talk about them (and a
[language-agnostic] tag would be better or don't even talk about them at all). Expanding it would only lead to abuse.
So why 5? Because it strikes a nice balance.
The real answer here is obvious: it's a limitation. Either cost-savings or otherwise. I don't believe the SQL back-end handles these very well.
There are certainly a lot of cases where this matters, take for instance on dba.stackexchange.com. Because we don't have hierarchical tags we tag versions. Something like PgAdmin is a tool that itself has a version. PgAdmin 4 was a total rewrite of PgAdmin 3. PgAdmin itself connects to PostgreSQL. PostgreSQL has its own version.
- So we have
[pgadmin-4]. Both of which could be applicable.
- And, we have
[postgresql-9.2]. Both of which could be applicable.
Let's say now you're working on a problem that involves spatial clustering. Well now you pick,