My brother and I had this debate the other night and it led to a fight.
I always tip 20% at least, generally round up to 25%, and I'll go higher depending on service and bill (if it's a small bill at say, Steak & Shake, but the server was great, I've left a 50% and even a 100% tip once, but that was great service on a small bill).
There was ONE time I didn't. I left a penny tip on a credit card because the waitress who's name was on the receipt got us water. She didn't take our order, get our drinks, bring our food, when a friend spilled his shake and was willing to pay for a new one, just needed something to clean it up, she was nowhere to be found, and she literally ignored our table outside of bringing us water. The whole time she was outside smoking. My brother said I should have left her a 15% tip so she'd believe that college students would tip her and she'd try harder in the future and she probably only gave bad service because she expected a bad tip from younger people. Um, f*** that. She did nothing whatsoever to earn a dime of money from me.
Then he said what if she's having a bad day...so? That gives her the right to completely ignore my table? I have bad days working at Mizzou's student TV station or when interviewing people for the newspaper and I put on a fake smile to get the job done. And her job is to serve all tables equally, not just ones she tips well.