If in fact they did everything by the book, especially that crucial "check in after 3 minutes / 3 bites following food delivery," and still got less than 15%, then "really mad" is probably warranted given the current situation of a sub-minimum-wage base.
I typically map it out as follows:
Less than 15% = You were nowhere to be found while my food was getting cold and I needed something for the food.
15% = Nothing terrible happened, but maybe we sat there for a loooooong time with menus closed or empty plates.
18% = Normal / everything as expected.
Greater than 18% = You rock. I asked for suggestions and you had great ones, you comped something not related to a bad screwup, etc.
Notice that all of the variation is in a pretty tight range. We could easily normalize it down about 10 points (and reinstate minimum wage) and remap the 4 levels above to <5%, 5%, 8%, >8%.
Do people really say "you suck so I'm going to give you 15% more than the list price"?