I usually leave 20%, so 20 bucks on a $100 dinner. A good server can really make a restaurant experience great, so it's worth it. And they usually aren't paid enough in wages to make it.

If the kitchen makes a mistake, or if things are running slow, then I expect the server to correct the error or compensate by adjusting the bill or bringing something special. If the service is bad, then the tip will be smaller. But usually the server should already know I'm not happy and should understand why the tip is small. I almost never have to leave a small tip, and I never walk out without leaving something. I think if you leave a small tip, it says more than leaving nothing. It let's you keep your dignity and still sends a message.

If you are at a bar and going to be there awhile, It's worthwhile to tip well on the first drink. You'll get better service the whole night.