We have a refinishing division that does onsite Electrostatic painting. They have an incentive program. They are given budgeted hours for a job, and know that if they can finish by or before the budget then they get a percentage of the profit of the job. So if we give them an 8 hour budget and they finish in 8, they get a percentage of the profit. If they finish in 6 they get a bigger percentage, but they lose 2 hours of work. (Hence the Profit being bigger.) So it comes down to them calculating out what makes them the most money. They don't get paid on their next paycheck because if there is a callback, it will eat into their incentive. Our guy that has been doing this for 20+ years can calculate what will make him the most money instantly, and he always makes his incentive.
Trying to do it with Commercial work is hard. You can do the same thing if your schedule of values is solid and you trust your Foremen. They can be inclined to cut corners if they are trying to rush the job. And if you pay them a bonus then something fails 6 months later, you have problems on your hand. We have given bonuses for doing well on Projects though, Lots of times tied to Changes that they catch and we get paid for.
In Tract Houses it used to be piecework. You would pay a set amount for a house. If they could finish in half the time, they made the same money but could do another house and make double.
With us being Union, we can't really do anything like this on the commercial side. But it may be possible for Non-Union shops. You just need to know what you've budgeted for the job and you can track against it to incentivize doing it faster. You just have to make sure Quality remains the same.