Payment for a specific result seems to me the most honest and correct. This encourages the performer to do everything on time and efficiently. Freelancers are usually very good workers.
In fact, if you order a service from a freelancer is much cheaper than a regular company, you can save money.