Here is my normal procedure.
#1 Go and drive all the cars that I'm interested in but promise myself that I won't buy anything.
#2 Do a ton of research on the model that I like. Is there known problems with the car, what are the best deals people are getting, etc
#3 Go to all the dealer web sites and see if they have the make, model, package, color, etc that I want.
#4 Come up with an educated guess of the best price for that particular model. Come up with what I think trade in value should be on my trade in.
#5 Email the furthest dealership and saying something like this.
" I wanted to check with your dealership before I made a purchase from my local dealer. My local dealer has a 2010 **** ****(include package and color here) with an MSRP of 21,999 and I'm trading in a 2005 Honda Accord. He is offering me an OTD price of $8,450 after trade in before TTL. I noticed that you had the same model. Can you beat the price? I usually include pictures and condition of the trade in.
#6 I usually get back a response that they can beat that price by a few hundred.
#7 I then send that salesman's response to another dealership to see if they can beat the price. I wipe out my previous message and just include the salesman's response. This lets the salespeople know that you are serious and are actually working with another dealership.
I usually do this until someone says they can't beat the deal and then buy it from that dealership. You'd be surprised how much difference there is between some dealerships. I had a dealer in KC that offered me a $2,000 better deal on a $20,000 car than what the local Honda dealer was offering me. Usually it's just a few hundred and then it mostly comes down to who treated me better.