When I was growing up it was always 10% - now 15% is average and 20% is for perfect service.
I would never tip 25% unless it was for a dollar cup of coffee.
I am all for tipping, but lets be realistic. I think it is wrong for people in service to act as if what they do for you is worth 25% of what you are eating.
In a nice restaurant a waitress could easily be making $200/hour if everyone is tipping 25% - that $25/table. I am sorry, but waiting tables is not worth the same as what I pay my accountant, dentist or lawyer.
The cruise lines charge about 15% at $10 to $12 per passenger per day, if you figure you probably spend $70 to 100/day to cruise.
I only tip the recommended amount, and some people I do not tip.
For example. I despise the trick at the port where the bus driver says "I have to keep you on the bus until I get all the bags off." That is just so he can stand there and ask for a tip. If he wants a tip, let me OFF the bus. I do not tip them for that trick.
I also despise the steveadores saying "I'll make sure your bag gets to your room" - that's why you are making union wages, and I know the ship's crew gets the bags to the rooms, not you. All they do is get them to the x-ray machine.