Depends on how much time you have. Generally speaking, you should level the team you wish to run as once you hit 120, because leveling takes so long you may be burnt out and not want to level anymore.

I don't think I play like most people do, but for me I do not worry about all tanks on one account, all healers on another, etc. All accounts have all things.

I leveled like:
5 death knights
5 paladins
5 priests
5 demon hunters
5 rogues
5 shamans
etc

Now I can create teams by mix/matching from any account. This has a big plus with the constantly changing dungeon meta, I can field any class.

But that way does take a lot of leveling and most people don't have that much time. You mentioned transmog so having a plate/mail/leather/cloth each on your team will get you the most drops.

I would also recommend the pro system if not using already.