At the start of every session, I have all the players dice to become leader. This involves all of them rolling a d20 with the player with the highest roll becoming the leader. This is similar to what happens when we find treasure that more than one player wants that cannot be divided between them, in that circumstance, the players who want the item dice for it. A tied top result leads to a reroll for the players who are tied as they dice against just each other.
Party leader gets final say on any decision that needs to be made, but because of the nature of the cycling, the players tend to ask for input from others. The last thing they want is to cause trouble for the other players as it won't be long until they are subject to another's leadership - perhaps even the player in question.
So when does the leader get cycled? Simple. After every combat, cycle the party leader by moving either clockwise, or anticlockwise, away from the current party leader. We always rotate anticlockwise in our game sessions, but so long as you pick one direction and stick to it, it will not matter which way you go.
As an aside, we also use a house rule that means the monsters will always go for the party leader in battle (if they can) which leads to interesting tactical situations. The party scramble to protect their leader (whoever it is). Particularly dangerous for the party mage (although now he's fourth level and has mirror image he has some room to breathe now) but on the plus side it encourages team work and helps the group gel as a whole.