Now that I'm older and more callous I have simplified the process. I look at the receipt to check if there is a tip already included. If it is, we're done. Sure, I had discussions with waiters who insisted this is the bare minimum and I have to give something extra on top of that but now I simply leave and never go to that place again. If the tip isn't on the receipt, they get 10-20% depending on the quality of service. So far, this works well in every country.
I believe foreigners get a lot of abuse and are sometimes scammed by obnoxious staff who like to take advantage of the cultural insecurities of visitors. In my opinion, a good strategy is to always be friendly, but don't let yourself get bullied.
I'm a native, but don't think it's so obvious for us either. One time I got a stern talking to by my barber. I now tip every time I get a haircut.
I used to work installing audio and video equipment as a kid and got tipped all the time.
If somebody renders any kind of service, tips are frequently expected.
What gets me every time is all the other places where you are expected to tip, and where I have absolutely no idea of how much I'm expected to tip or that I'm supposed to tip in the first place. Pizza delivery? What? Cab drivers? Seriously? The omelet chef in a hotel's breakfast restaurant? Are you kidding me?!?
The weirdest one yet was when me and some friends were leaving the US, we got to the airport, and passed some sort of exterior baggage drop. We went to that, but there was a guy there in an airport uniform who took our bags and put them on the conveyer belt when we tried to do it ourselves. So we said "thanks" and walked away.
And he got so angry at us for not tipping him. So confusing.