Brief & Hire
Acceptance and handover

What to check at each chatbot milestone before you pay

The short answer

A milestone payment is the only point in a longer chatbot project where you have leverage. Release it when that milestone’s test passes, not when the demo looks good. Split the project by what you can test, write the pass mark for each milestone before the work starts, and run every test yourself from outside the system, the way a customer would meet the bot.

Four milestones cover most support bots: answers, limits and handoff, channel and actions, and a short live pilot. The table below gives the test and the pass mark for each.

Why milestones need their own tests

Chatbot work runs longer than most automation work. In the 252 chatbot developer reviews I read, about one order in five took 15 days or more, and about a quarter cost over $1,000. Those are the projects that get paid in parts.

The risk with parts is simple: each milestone is built on the one before. If the bot’s answers are weak at milestone one and you accept them anyway, milestone two adds the handoff on top of weak answers, and milestone three connects weak answers to your website. By the end, a problem that was one fix early is spread across everything, and it is no longer clear whether fixing it is part of the order or new work.

A chatbot also makes “done” fuzzier than a workflow does. A workflow either put the row in the sheet or it did not. A bot can answer every question in the demo and still get your customers’ questions wrong. That is why each milestone needs a test you wrote, not one the builder picked.

I have paid for work both ways. With a fixed price, payments went out at set points in time; with milestones, I released each one after checking what that stage had delivered. That check is the only thing a milestone gives you that a date does not.

A four-milestone plan

Questions people ask

How should I split a chatbot project into milestones?

By what you can test, not by what the developer builds. A common split is: answers from your documents, limits and handoff to a person, the real channel and any actions, then a short live pilot. Each milestone ends with a test you run yourself and a pass mark agreed in advance.

Should I release a milestone payment if a few things are still broken?

Not unless the open items are written down with a date and do not affect the next milestone. Later work is built on top of earlier work, so an accepted problem tends to become harder to fix, and harder to call a fix rather than a change.

Who should run the milestone tests, me or the developer?

Both. The developer should run them before telling you a milestone is ready, and you should run them again yourself, on the real channel, from an account that is not theirs. Their test proves it can work; yours proves it works for you.