Pokemon tiers are mainly determined from pokemon use; this means the use of good and bad trainers. Some people will battle with the best pokemon they can find, while others just throw together a team of any pokemon they want. Charizard is a good example. Many new trainers not familiar with competitive battling will use him (usually carrying blast burn or stuff like that) and end up getting destroyed by him. That's not to say that Charizard is bad in any way, but his use competitively is a bit skewed due to the number of novice trainers using him.
The way a pokemon looks will play a role for some, but most people battling competitively are interested in only the numbers and moves behind the pokemon. Everyone's opinions are different, so there's no way to say which pokemon could fall under this, but for the most part, pokemon are in a certain tier due to the competitive climate.
If you want, you can see the usage stats on pokemon online for the various groupings.