Skip to main content
DoneThat

AI Adoption GuideSalesQualify

AI inbound chat qualifier

An adaptive bot replaces static forms and qualifies website visitors in real time, using tools like Qualified or Drift.

Sales processProspectQualifyDiscoverProposeNegotiateCloseHandoffRenew

By Don, DoneThat’s AI coach · updated

The job is a named AE on the calendar, or a clean stop

The useful output is a qualified meeting on a named AE's calendar, or a handoff to a person who is actually available. If you cannot do either, stop and write why. A transcript is not the outcome.

A static form takes a name, an email, and a company, then the visitor leaves. The bot stays in the conversation, asks what an SDR would ask, and either books, routes, or records a no. Do not count conversations started. Count qualified meetings booked, and count disqualifications that carry a reason you can audit.

Do not publish a booking rate for this page. Yours depends on who lands on the site, whether a human is on shift, and how willing you are to refuse a meeting. Vendor decks will imply a number. It is not yours.

Conversational inbound tools in this class include Qualified, Drift, and Intercom. Records, ownership, and routing often live in Salesforce. This page does not rank those products. None of them qualifies a visitor if you never wrote the ICP questions, never named the AE, and never defined the stop.

Ask the ICP questions, then decide in the same session

Write the questions an SDR would ask on a first pass. Stop asking when you can book, hand off, or refuse.

Use this order:

  • Role and job. Buyer, user, student, journalist, existing customer. A title with no job to be done is not enough to book.
  • Company fit. Size, segment, geography, or the gates you already use. If website visitor de-anonymization already named the account, treat that as a hint. Confirm it. Wrong matches happen. Do not skip the questions because a graph guessed a logo.
  • Use case and current setup. Enough to pick the right AE, not a full discovery call.
  • Timing. In-market, researching, or not buying. "Just looking" is a stop, not a courtesy meeting.

Branch. A good-fit VP does not fill fifteen fields. A student does not see an AE calendar after two polite answers.

Keep pricing and documentation public. Hiding them behind the widget sends technical buyers away.

If they mention other people ("I need to bring our CTO"), note the names. That is not buying-committee mapping. A short website chat is not a committee. Do not invent an economic buyer from a pronoun.

Write answers into CRM fields, not only a chat log nobody reads. Those fields can later feed predictive SQL conversion score. The live booking decision is still the ICP answers plus who is on shift. A score is not a calendar hold.

Route to a named calendar or a human who is actually on shift

"Talk to sales" is not a route. Name the person.

Write routing a stranger could follow:

  • Named AE by segment, territory, or account ownership. The calendar they see is that AE's, with real open slots.
  • Inbound SDR when fit looks real but the answers are thin, or when the AE is the wrong first meeting.
  • Live human when they ask for a person, when the bot is stuck, or when confidence is low. The control has to be visible and fast.

If nobody is on shift, say nobody is on shift. Offer the named AE's next open slot, or take a callback. Do not keep typing as if a colleague is reading along.

Do not pretend to be a person. Label the bot as a bot. When a human joins, say that a human joined. Fake first names, fake typing pauses, and "let me check with my manager" from a model are how high-intent visitors leave.

Do not book every visitor. Students, competitors, and people who wanted a password reset will take the slot if you offer it. AEs then ignore inbound, including the meetings that were real. Fit has to clear your ICP bar before a time is offered.

Pass the captured answers with the meeting: role, company, use case, timing, and the page they were on. The AE should not re-ask the four questions in the first five minutes.

Store every no with a reason you can filter

A no is a result. Write it.

When the bot does not book, store a disqualification reason the CRM can filter: outside ICP, not a buying role, no timing, existing customer, support intent, competitor, education or research, spam. Free-text "not a fit" is useless a week later.

You use that log to tighten questions and to defend meeting quality. You do not use it to auto-close an opportunity. Most of these people never became opportunities. For deals that already exist, disqualification recommender is a later, cited recommendation a manager still decides. The website widget does not close pipeline.

If the message is a ticket (login, invoice, outage, data deletion), get them out of the sales bot. Send them to support, or give the support path and stop selling. Intercom-class tools often sit on both sales and support. Split the tree. Trapping tickets delays the customer and fills the SDR queue with password resets.

Do not run MEDDIC auto-extraction on this chat. MEDDIC belongs on calls. Empty qualification fields are honest. Champion and Metrics stamped from a pricing widget are not.

Worked example: a pricing visitor who needed SSO, not a demo

The walk-through is illustrative, not a measured result.

A visitor is on pricing. De-anonymization suggests a logistics company already in the CRM. They type that SSO is failing for two new users, and they want to know whether the mid-market tier includes SSO.

Split the jobs.

SSO for people who already pay you is support. Route the ticket. Do not hold it inside a sales script while you ask company size.

The tier question is qualification. Ask role (admin vs buyer), whether this is an expansion or a trial, and whether they want a meeting about SSO on that tier. If they own the account and want to expand, book the named AE who owns it, and put the ticket ID in the notes. If they are an end user with no buying role, log not a buying role, give the support path, and do not offer the AE calendar.

The failure version greets them as "Hi, I'm Alex from the sales team," keeps the SSO problem in the sales tree, and books a demo because they were on pricing. You then have a fake human, a meeting that should have been a ticket, and an AE who stops trusting inbound.

Same page, different visitor: a student wants a demo for a class. Ask role. Log education / not a buyer. Point at public docs. Stop. Do not book them on the theory that a no-show is cheap.

Do not fake a person, book everyone, or trap tickets

Pretending to be a person. First names, typing indicators, "I'll ask my manager." Buyers notice. Say it is a bot. Offer a human. When the human is there, say so.

Booking every visitor. Calendar volume is not pipeline. If the only gate is that they asked for time, you rebuilt the form with extra steps. ICP questions exist to produce a no. Use them.

Trapping support in a sales bot. Login, billing, outages, and data requests are not qualify-stage work. Detect that intent, route out, log the reason.

Coverage hours are part of the design. A bot that cannot reach a human during your buyers' working hours is a form with more sentences. Put the widget on high-intent pages (pricing, comparison, demo) only after the route to a named AE or a live person actually works. Sitewide chat with no coverage is how tickets get stuck.

Before you add more pages, sit with an SDR and an AE and replay recent transcripts. Check three things: did it ask ICP questions, did the calendar belong to a named person, and did every stop have a reason you would defend. If a transcript faked a human, booked a student, or sat on a password reset, fix the tree before you scale.

Is this worth automating for you?

Whether this pays back depends on how much time it takes your team today. Most teams estimate that from memory, and the estimate is usually wrong in one direction or the other.

DoneThat reconstructs where the time actually went, with no timers to forget, so you can measure the baseline before committing to a project and check the gain afterward.

Measure the baseline first