Ditto. I can count on hand hand I've had to withhold part of most of a tip. But to act like wait staff get a pass on delivering unacceptable service is absurd. No one is obligated to pay for any unacceptable goods or services. If I fail to live up to my end in a custom software project, then I wont get paid. This is not usual. Tipping is payment for a service.