On last night's Free Talk Live, there's a fun discussion about tipping at restaurants. One of the hosts (Ian) has a pretty sound attitude about tipping. The two others (that were on last night) have problems.
Mark finds the whole idea of tipping confusing, not understanding why or how much he should tip in any given instance. He'd rather just know a price up front (as opposed to employers paying their workers less than minimum wage and tippers being implicitly expected to make up the difference).
Melanie is convinced that there's a knowledge problem. That is, she thinks of tipping as paying some owed amount, and thinks she needs to know how much the restaurant worker is making in wages and how much the restaurant worker "should be" (according to the government) making in wages in order to tip the appropriate amount to make up the difference. Mark has a bit of that outlook on things, too.
Geez, guys ... it doesn't have to be that complicated. And why in the name of all that's holy would an anarchist like Melanie let government policy dictate to you how much service staff "should be" making?
First thing: The only amount you actually owe at a restaurant is the price advertised on the menu (and some menus may specify that a "gratuity" -- actually a price increase -- is automatically levied on large parties, etc.). In general, no, you don't "have to" tip. You agreed to pay a price for such and such, you got such and such, that's the price you "have to" pay.
Second thing: Tips are a service bonus from the customer to the service staff. The restaurant owner is paying wait staff to be there, to process orders, and to deliver food, and how much he pays them is between him, them, and (unfortunately) the government. You are paying the restaurant owner to cover that. A tip is extra value returned for extra value received from staff in the opinion of the customer. You do not have to know how much the workers are making, or how much they "should be" making, from sources other than tips in order to decide to tip or not tip, or in order to decide how much to tip. You just have to know how happy you are with the service -- how much value added you perceive yourself as having received -- above and beyond the fact that you got what you ordered.
There are certainly social conventions. The "standard" tip is 15%. The average tip is 18-20%. If you consider yourself especially well-served, you might go higher. If you're at a repeat service place (like a bar), you might just drop a buck in the tip jar for every drink you order and are served.
Personally, I try to tip well (20%-ish) if the service is reasonably good or if there's a non-service-staff excuse for it not being that great (e.g. a sudden rush at a time when the owner doesn't have enough people working to handle it -- I notice that staff are busting their asses and giving me the best service they can give me and tip accordingly). If the service feels "above and beyond the call of duty" to me, I up the tip some.
Your mileage may vary, and that's fine. Tipping is a situation in which you get to decide how much what you got is worth, if anything.
Side note: If you're at a strip club, usually the value the dancers deliver is ALL value received above and beyond your cover charge (which goes to the bar owner) and drink spending (the price goes to the owner, any tip goes to the bartender). The dancers generally dance for tips only (and pay the owner a percentage of their tips). You still don't have to tip. But if you do, you'll generally get some value added (closer looks at, and more attention from, the dancers). And you should. A good exotic dancer is working hard both physically and, essentially, as an actor. Whatever value you get from that is value you are ONLY paying for if you tip. Just sayin' ...