I was in Ho, Ghana in December of 2010, there are these wonderful collective taxis that roam around the city and cost 35 pesos.
You flag one down, say,
The driver says yes or no, maybe he is going the opposite direction with the group.
The other day, I said "by the sea." a friend asked me to stop by her neighborhood. There was nobody in the taxi, the driver was trying to be clever. He took me to the neighborhood and pointed at it, I gave him the correct amount, the 35 pesos.
He looked at me and said,
Sorry, I know the price, hehehe.
Taxi drivers know foreigners are foolish and Will often pay whatever they ask, on the other hand, the locals pay what they know or think the ride is worth. In the end, the best way is to know the cost before you enter a taxi, give the driver what it is worth and get out of the taxi, do not worry, they will not chase you down.
I will often ask a local, how much it cost for a taxi to this location, i then ask about five, eventually you know the proper fare or what is just.
But if you enter a taxi with a big bill, do not expect the taxi to give you change, if he does not have the change, just get out of the taxi, and wait for him to find the change.
It is a fun and tough business, you need to be strict, or learn to hate taxis.
Very true about paying with bills over your fare. They will try to keep it. I usually show it to them, ask or make a hand motion asking if they have change, wait for the change to be dug out, and only then make the exchange. If the driver says that they do not have change, I just stare at them for a while. 9 times out of 10 change suddenly appears.
Though I try to make sure that I have small enough bills to pay close to the correct amount prior to getting in a taxi -- this just makes life easier.
Also, if you have bags in the trunk, wait until you have all of your possessions and are ready to go before paying. Don't let your stuff be held for a ransom.
Knowing the price of a taxi ride, stating it to the driver before getting in, and then paying with exact change when at a destination is the best way to avoid problems with taxi drivers.