Register your interest: Tag @Cody, get an agent
BlogResources

Booking conversations: asking in an order people can answer

The conversation design that decides whether booking completes. Slot presentation, order of questions, reschedules, and the abandonment problem.

Rebecca PearsonRebecca Pearson11 min read

Summarize with AI

Booking conversations: asking in an order people can answer
On this page

Two booking systems with identical availability can complete very different proportions of the conversations they start. The difference is not the diary logic. It is the order the questions come in, how the options are presented, and what happens when somebody does not answer the way the flow expected.

That is a design problem with a small number of decisions in it, and most of them are settled by watching how people actually answer rather than by reasoning about what is tidy.

What we'll cover

Order the questions by what eliminates most

Every question should narrow the remaining possibilities as much as it can, and ask early about anything that could make the rest pointless.

For most service businesses that means the service first. What somebody needs determines how long it takes, who can do it and what else has to be free, so asking it first makes every subsequent answer meaningful. Asking for a preferred date first means potentially discarding it once you discover the job needs two hours with a specialist.

Ask about the constraint that disqualifies next. Whether they need a specific person, whether they can come during the day, whether there is a deadline. One question here saves a whole exchange later.

Contact details last. Somebody who has chosen a time is committed enough to give you a name. Somebody asked for a name and number before they know you can help feels like they are being captured, and a share of them leave.

Asking for a date is the wrong first move

"When would you like to come in?" seems friendly and is the single most common cause of a stalled booking conversation.

It asks the customer to guess. They do not know your availability, so they name a time, and then you tell them it is unavailable and ask again. Two or three rounds of that and the conversation dies without either side saying anything unhelpful.

Offering is better than asking. Give genuine options and let them pick. The exception is when a customer has stated a hard constraint, in which case work from their constraint and say plainly if nothing fits.

Presenting slots people can choose from

The presentation decides the completion rate more than the availability does.

Three or four options. Two feels like you are busy. Eight is a wall of text nobody parses on a phone.

Spread them. A morning, an afternoon, a different day. Four consecutive times on the same morning is really one option.

Make them tappable where the channel supports it. Typing a time invites free text you then have to interpret, and interpreting "the second one" or "thursday pm" correctly is work you can avoid.

Use plain dates. "Thursday 2nd, 10am" rather than "02/10 10:00". People misread numeric dates, particularly across formats.

Say what it is for. Repeating the service and duration in the offer prevents the arrival where somebody expected something else.

Offer a way out. "None of these work" needs to be one tap, not a thing somebody has to compose.

Handling three answers in one message

People do not answer one question at a time. A first message is frequently "hi can I get my car in thursday for a service, it's a Golf, I'm free after 2".

That is the service, the date, the vehicle and a constraint, all at once, and a flow that responds by asking what service they need has told the customer it is not listening. The share of people who abandon at that point is high and entirely avoidable.

Take everything the message contains, acknowledge it, and ask only for what is genuinely missing. Where something is ambiguous, ask about that one thing rather than starting again. This is the single largest improvement available to most booking flows.

Building it with CodeWords

CodeWords connects to more than 3,000 integrations, and the connection is made once and reused.

  1. Open CodeWords and start a new automation.
  2. Describe what should happen in plain language to Cody, the automation builder: the order of questions, how slots are offered, and what happens when somebody answers several things at once.
  3. Authorize the connections to your diary system and your WhatsApp Business Platform account.
  4. Describe the exceptions: somebody returning days later, changing an earlier answer, asking for a person, or saying none of the options work.
  5. Build the flow from twenty real first messages rather than from an imagined one, since real openings look nothing like the tidy version.

You describe the outcome; Cody builds it, connects it, and deploys it. The free plan covers light use, with Pro at $39 per month and Business at $100 per month as usage grows; details are on the pricing page.

Abandonment, which is most of your traffic

A meaningful share of booking conversations stop partway. Somebody gets interrupted, wants to check with a partner, or is not ready to commit.

Three things make this recoverable.

Keep what they gave you. Somebody returning three days later should not start again. Nothing loses a booking faster than re-asking what was already answered.

Recheck before resuming. The slot they were looking at has probably gone. Acknowledge that rather than confirming something unavailable.

One prompt, then stop. A single message a day or so later, offering to pick up where they left off. Repeated chasing for an appointment nobody asked for reads badly.

Be aware of the channel's timing rules here: outside the 24-hour window after their last message, resuming requires an approved template, so the follow-up has to be written and approved in advance.

The confirmation, and what it must contain

The confirmation is the most-read message in the whole flow and often the least considered.

Date and day together, since "Thursday 2nd" catches an error that "02/10" hides. The time. What the appointment is for. How long to allow, which people consistently underestimate. Where to go, including the parking detail somebody in the business considers obvious. What to bring or do beforehand. How to change it.

That last one matters more than it looks. A customer who cannot easily change an appointment becomes a no-show rather than a cancellation, and a cancellation with notice is a slot you can refill.

Rescheduling and cancelling

Make both as easy as booking. This feels counterproductive and is not.

The alternative to an easy cancellation is not attendance. It is somebody who does not turn up and does not tell you, leaving a slot that could have been refilled and a person you now have to chase.

Take the cancellation gracefully, with no friction and no guilt-inducing wording.

Offer to rebook in the same message, since a good share will.

Apply your notice policy plainly, if you have one, and state it at booking rather than at cancellation.

Free the slot immediately and offer it to anybody waiting for something earlier.

Language that costs you bookings

Jargon for services. Customers ask for what they experience rather than what you call it on the price list. Accept both.

Numeric dates, which get misread across formats.

Asking them to call to complete. A booking conversation that ends in a phone number has failed at the thing it was for.

Unexplained delay. Where something needs a person, say so and say when.

Anything implying a price that has not been confirmed, since a customer who thinks they were quoted will arrive expecting that number.

The general test is whether a sentence would make sense to somebody who has never dealt with your trade. Booking flows are usually written by people who know the answers, and the vocabulary that feels precise from the inside is frequently the part that stalls the conversation.

Making it survive

Read twenty real conversations monthly, particularly the abandoned ones.

Measure completion, not messages handled.

Keep partial bookings for long enough to be resumable.

Recheck availability at confirmation, never at offer.

Re-run your awkward openings after any change to the flow.

Limits worth knowing about

A good conversation cannot fix a bad diary model. If availability is wrong, better wording just gets people to the disappointment faster.

Some customers will only ring, and the flow needs a clean route to a person.

Free text is unavoidable, so buttons reduce interpretation work rather than removing it.

The 24-hour window constrains follow-up, so resuming later needs an approved template.

Completion rate is not the only goal. Booking somebody into the wrong appointment completes and costs more than the abandonment would have.

What to fix first

Handling a first message that contains several answers at once. Take everything it gives you, acknowledge it, and ask only for what is missing. It is the commonest opening, it is where most abandonment happens, and fixing it improves every conversation rather than one branch.

Two habits make the difference. Offer times rather than asking for them, because the customer cannot see your diary and guessing wrong twice ends the conversation. And make cancelling as easy as booking, since the alternative to a cancellation is not attendance, it is a no-show and an empty slot nobody could refill.

Frequently asked questions

What order should booking questions come in?

Service first, since it determines duration and resources. Then any disqualifying constraint. Contact details last, once somebody has chosen a time and is committed enough to give them.

Why is asking for a preferred date a mistake?

It asks the customer to guess at availability they cannot see. They name a time, you decline it, and two rounds of that ends the conversation. Offer genuine options instead.

How many slots should be offered?

Three or four, spread across different parts of the day and different days, tappable where possible, with plain dates and a one-tap way to say none of them work.

What if someone answers several questions at once?

Take everything the message contains, acknowledge it, and ask only for what is genuinely missing. Responding by asking for something they already gave is the largest avoidable cause of abandonment.

How should abandoned bookings be handled?

Keep what they gave you so they need not start again, recheck availability before resuming, and send one prompt rather than several. Outside the 24-hour window that prompt must be an approved template.

What should a confirmation contain?

Day and date together, the time, what it is for, how long to allow, where to go including parking, anything to bring, and how to change it.

Should cancelling be made easy?

Yes. The alternative to an easy cancellation is a no-show, which leaves a slot nobody could refill and a customer you have to chase. Offer to rebook in the same message.

What language costs bookings?

Internal service jargon, numeric dates, asking people to ring to finish, unexplained delays, and anything that implies a price nobody confirmed.

What should be measured?

Completion rate rather than messages handled, plus where conversations stop. Reading twenty real conversations a month tells you more than any dashboard.

Can good conversation design fix a bad diary?

No. If the availability model is wrong, better wording only reaches the disappointment sooner. The resource model has to be right first.

Is a higher completion rate always better?

No. Booking somebody into the wrong appointment counts as a completion and costs more than the abandonment would have, so it is worth checking what the completed bookings actually were.

Get started today

Your first workflow is free to build.

Describe what you need. Cody handles the build, the connections, and the deployment.