For me, the reason I would change rate based on cost is, for example, a friend and I go get a piece of pie and coffee. Say it comes to $7.50. If we stay for an hour and I tipped 15% ($1.13) I feel like we occupied a table by which he could have earned more tip, and he still had to keep an eye on us and refill coffee. I'm fine to give him $2 or $3. Again, if I didn't want to pay a tip for coffee and dessert, I'd go to Starbucks or something.Wow. I can't conceive of the notion of higher costs meals lowering tip percentages. Typically in a higher cost restaurant you are going to get much more experienced wait staff and better service. Plus they are taking much more time with you and therefore getting fewer tables to serve on the night. Standard tipping rules still apply.
And regarding the whole "they know the pay when they get the job, so they shouldn't complain about tips" discussion - I see that, but it's comparable, IMO, to a business owner who provides a service for a customer, and the customer either doesn't pay or pays half of what the service was worth. 10-15% is usually the "accepted" range for a tip. If a waiter provides the service of waiting, then doesn't get a tip, that's what he was counting on for income, just like a business owner depends on his customers to pay him for his work.
Yeah, it's different, but in both situations, you are depending on customers to pay you directly, and if they don't pay you directly, you are not receiving the income you expected. Granted, if the work is not done, the customer is well within his right not to pay. And, if the work was poorly done, you should expect less.
But, I still believe that an appropriate tip should be considered a cost of eating out.
I just know so many people who look for reasons not to tip their waiter, and it just seems so petty. They'll pay $70-80 to a restaurant for food they complain about, then not even want to pay their waiter $5 because fifty seconds after getting their coke, it is already half gone and the waiter has been taking an order for a table of 10 so he can't fill it right away.
Again, I just always try to err on the side of tipping too much.