Welcome to the official VGC Viability Rankings topic. In this thread, we as a community will rank every single usable Pokemon into "tiers." In this thread, you're encouraged to post your thoughts and opinions on the various Pokemon that are usable in VGC and what tier they should fall under.
The general idea of the topic is to rank each VGC pokemon under "rankings" that go in descending order. Since this is a general tier list, everything is lumped together. There won't be any segregation between offense / defense / support threats. Make sure you take into account the support each Pokemon provides to both the team as a whole and whichever teammate it is immediately on the field with, in addition to how well it deals with opposing threats.
S-Rank: Reserved for Pokemon that perform well on any team, regardless of the opponent's team. Your team will almost always be better if you use one of these Pokemon. You should bring them to almost every match, unless the opponent is completely counter-teaming them.
A-Rank: Reserved for Pokemon that perform well on most every team. They can be counter-teamed easier than the Pokemon in S-rank, but still provide crucial support or offensive presence that other Pokemon cannot. You should bring them to most every match, unless the opponent is over-prepared.
B-Rank: Reserved for Pokemon that perform well on many different teams. These Pokemon are best served as "glue" Pokemon, where they either are supported by other Pokemon or support specific teammates. They are easier for an opponent to handle by using higher-ranked Pokemon, but are still good choices to bring in most matchups.
C-Rank: Reserved for Pokemon that can be effective given a certain situation but otherwise will fall behind compared to higher ranked Pokemon. These Pokemon work well if you can execute your own strategy, but sometimes lose momentum for your team if your opponent has good answers to them. These would be considered "tech" options, where you add them as the 4th/5th/6th option on a team and bring them to some matches.
D-Rank: Reserved for Pokemon that are gimmicky and may have some strategy that will succeed a very small percentage of the time. These Pokemon have a smaller role but are outclassed and require more support than is practical many times. They can throw the opponent off-guard sometimes, but they are prepared for by just preparing for other larger threats.
(Most weather/Trick Room dependent mons go here)
E-Rank: Dont even bother unless you just want to have fun and you have a favorite Pokemon here. In other words, there is next to no chance this thing will carry its weight.
Gonna add pictures later. I consulted with a few VGC players and also looked at the teams of people who top cut regionals / european nationals. The reason there are a bunch of Mega Pokemon in D is because you really really really should be using the Mega Pokemon in S/A rank as your primary and A/B as your secondary (if necessary).