Whenever I can, I tip BEFORE the job begins so I can help insure a 'better job' gets done BEFORE any work begins. I've realized over the years, that tipping AFTER the job has little to no impact unless you end up hiring that person back for another job at another time. (Then, he/she'll remember you ...)
Just 2 weeks ago, I gave 3 'kids' an $8 tip (each=$24) for 1 hour's work at my 5 year old's birtday party BEFORE they had to do any entertaining. They did a great job of keeping the kids entertained! And would you know, a week later when I took my daughter to her weekly gym class (which is where she had her Gym Party), they were still talking about the 'guy' who tipped BEFORE the party. Yup, it was me they were talking about. It seemed to impress a lot of people. (Now I'm rambling ...)
I tipped 3 carpeting installers $15 before they did a 1200 sq. ft. install in our home (about 6 years ago), and the Sup. was just beside himself. For 3 days, back at the store, he couldn't/wouldn't shut up about this 'guy' that gave tip money BEFORE the job. The owner told us (much after the fact) that the Sup. never talks. Well, that week, the Sup. said MORE than he ever said in the 35 years he's been laying carpet for the owner! And no one EVER tipped before a job. That's what blew him away ...
We also tipped a concrete and asphalt crew $35 and gave them a cooler of sodas over a 3-day period before they started working for us. They bought themselves lunch and had enough to drink in the hot weather. The Sup. on that job said he never saw 2 'kids' as thankful for such a gesture. And you know, they did do an outstanding job. It still shows today.
I have a few more stories but I'll spare ya. I guess what I'm also saying (as as John McElwee is saying), is DON'T wait until the end of the job to tip. (THey're not your waiter/waitress at the local Eatery.) Go ahead and tip them before or during the job. And I'll tell ya what, if after the job you AREN'T satisfied with the work, you have EVERY right to complain since you 'paid' for that part of the bill ahead of time! ;-)