What do you guys think of pay by milestone? Client and seller both agree to a milestone with a checklist that, when complete, signifies the milestone is complete. This provides clarity, transparency, and predictability. As a buyer, I prefer milestones.
As a contractor, I avoid milestones like the plague. They're appealing to buyers because, on average, buyers use them to extort additional work out of the contractor or as an excuse to defer payment (because the contractor's only recourse is court). I used to make an exception and do milestone projects for clients I trusted, but I even got screwed by them. It's just too hard to estimate software projects for both sides to come out of a milestone project on top.
EDIT: Note that I'm not claiming that people who use milestones are evil. The problem is that milestone billing for software creates lots of incentives on the client side to underestimate and underspecify work, because the contractor eats most (if not all) of the cost of identifying those problems and negotiating to get the milestone revised to include them.
That's sort of difficult to compare, because you're paying by milestones, but you probably didn't get estimated by milestone, e.g. "if we make it to the 3rd milestone you owe us this much." Your vendor is probably assuming you want all milestones completed.
Not sure what you mean? I'm saying the buyer has a project, and either the buyer or freelancer chops it up into milestones (in my case, I'm an engineer as well as a buyer so I can do this). Each milestone has a set price paid after completion. If the freelancer completes 3 milestones, he gets paid for each. If he completes 4, he gets paid for each. etc.
Depends whether your milestones are measured in time, features, business outcomes. First would still be t&m - just be a larger unit than days; second would be classic fixed price billing (which incentivises low quality hackily bolted together solutions which will be a pain to maintain and extend); third would be value-based consultancy.