I used to tip even if they didn't do a great job until I was dating this waitress. She always told me not to tip if they did a bad job, the food wasn't the best or similiar reasons. That way the server knows that something is wrong. Be it the food in general, the service or how frequently they made their rounds.