Skip to main content
LpReply

Lead Qualification Chatbot That Converts

LoopReply Team12 min read
lead qualification chatbotlead generation botlead scoringsales chatbotchatbot for leads

Your website gets traffic. Some of those visitors are ready to buy. Most aren't. The expensive question is: which ones are which?

Traditionally, you'd either gate everything behind forms (killing conversion rates) or let sales reps manually qualify every inbound lead (burning expensive human time on low-quality prospects). A lead qualification chatbot solves both problems. It engages visitors in a natural conversation, asks the right questions, scores their readiness, and routes them appropriately — all without a human lifting a finger until it actually matters.

This tutorial walks you through building a complete lead qualification chatbot in LoopReply using the visual workflow builder. No coding required. By the end, you'll have a bot that qualifies leads using the BANT framework, scores them automatically, and routes hot prospects directly to your sales team.

Table of Contents

What We're Building

Here's the complete lead qualification flow:

TriggerWelcome MessageIntent Detection (is this a sales inquiry?) → Qualifying Questions (4 questions using BANT) → Lead Scoring (Condition nodes calculate score) → Routing:

  • Hot leads (score 8-10): Instant sales team notification + meeting booking link + personalized follow-up
  • Warm leads (score 4-7): Send relevant resources + add to nurture email sequence
  • Cold leads (score 0-3): Offer self-service content + stay helpful without pushing sales

Each path is designed to match the prospect's buying readiness. Hot leads get human attention fast. Warm leads get nurtured. Cold leads aren't ignored — they're educated.

The BANT Framework for Chatbots

BANT has been a sales qualification standard for decades, and it adapts perfectly to chatbot conversations:

LetterStands ForWhat You're AssessingChatbot Question
BBudgetCan they afford your solution?"What's your approximate budget for this type of solution?"
AAuthorityAre they the decision-maker?"Will you be the one making the final decision, or will others be involved?"
NNeedDo they have a genuine problem you solve?"What challenge are you looking to solve?"
TTimelineHow soon do they need a solution?"When are you looking to have something in place?"

The key difference between BANT in a chatbot vs. a sales call is tone. In a chat conversation, the questions need to feel natural and conversational, not like an interrogation. We'll handle this in the question design.

Step 1: Create Your Lead Qualification Bot

From your LoopReply dashboard, click Create Bot.

  • Name: "Lead Qualifier" (or "Sales Assistant" — whatever fits your brand)
  • AI Model: GPT-5 or Claude Opus 4.6. Both excel at natural conversational flow and understanding nuanced responses.
  • System Prompt:

You are a friendly, conversational sales assistant for [Your Company]. Your goal is to understand visitors' needs and determine if our product is a good fit. Be warm and helpful — never pushy. Ask questions naturally as part of a conversation, not as a survey. If a visitor isn't ready to buy, that's perfectly fine — help them with whatever they need. Never pressure or manipulate.

Click Create, then navigate to the Workflow tab.

Step 2: Design the Welcome and Engagement

The first few seconds determine whether the visitor engages with your bot or closes the widget. Your welcome message needs to be friendly, value-oriented, and non-threatening.

Add the Trigger and Welcome Message

  1. The Trigger node is already on your canvas.
  2. Drag a Message node and connect it to the Trigger.
  3. Set the welcome message:

Hey there! Welcome to [Your Company]. I'm here if you have any questions about our platform, need help finding the right plan, or just want to explore what we can do for you. What brings you here today?

This message works because it:

  • Doesn't immediately try to sell anything
  • Offers multiple reasons to engage (questions, help, exploration)
  • Ends with an open question that invites conversation

Add Intent Detection

Not every visitor opening the chat widget is a potential lead. Some want support, some are just browsing, and some have sales questions. Use an Intent Router to separate them:

  1. Drag an Intent Router after the welcome Message.
  2. Configure intents:
    • Sales Interest"Visitor is asking about pricing, plans, features, wants a demo, is comparing solutions, or mentions a specific business need."
    • Support"Visitor has a question about an existing product, needs technical help, or has an issue."
    • General — Default fallback for everything else.

For the Support intent, route to your support workflow (or a message offering to connect them with support). For General, route to an AI Response node for open-ended conversation.

The Sales Interest path is where the qualification begins.

Step 3: Build the Qualifying Questions

This is the core of the flow. You'll ask four questions — one for each BANT dimension — using Collect Input nodes. The trick is making them feel conversational, not clinical.

Question 1: Need (N)

  1. Drag a Collect Input node and connect it to the Intent Router's Sales Interest output.
  2. Message: "Great! To make sure I point you in the right direction — what's the main challenge or goal you're hoping to address? For example, are you looking to automate customer support, generate more leads, improve response times, or something else?"
  3. Variable name: lead_need

Starting with Need is strategic. It's the most natural question to ask after someone expresses interest, and the answer tells you a lot about whether they're a real prospect.

Question 2: Timeline (T)

  1. Add another Collect Input node after the first.
  2. Message: "That makes sense. Timing-wise, is this something you're looking to get set up soon, or are you more in the research phase right now?"
  3. Variable name: lead_timeline

Phrasing it as "research phase" vs. "soon" normalizes both answers. The visitor doesn't feel judged for not being ready to buy today.

Question 3: Authority (A)

  1. Add another Collect Input node.
  2. Message: "Are you evaluating this for yourself, or are you part of a team that would be making this decision together?"
  3. Variable name: lead_authority

This is a softer version of "are you the decision-maker?" — it gets the same information without sounding transactional.

Question 4: Budget (B)

  1. Add the final Collect Input node.
  2. Message: "Last question — do you have a budget range in mind? It's totally fine if you don't yet — it just helps me recommend the right plan. We have options starting from free all the way to custom enterprise pricing."
  3. Variable name: lead_budget

Budget is last because it's the most sensitive question. By this point, you've built conversational rapport and the visitor is invested in the interaction.

Collect Contact Information

After the four qualifying questions, add two more Collect Input nodes:

  • "Thanks for sharing all that! So I can have someone follow up with personalized recommendations — what's your name?" → Variable: lead_name
  • "And what's the best email to reach you at?" → Variable: lead_email

Step 4: Implement Lead Scoring

Now comes the scoring logic. You'll use Condition nodes and Set Variable nodes to calculate a score from 0-10 based on the visitor's responses.

Initialize the Score

Add a Set Variable node after the last Collect Input.

  • Variable: lead_score
  • Value: 0

Score Each BANT Dimension

After the initialization, add a series of Condition nodes — one per BANT dimension.

Scoring the Need (0-3 points):

  1. Add a Condition node that evaluates lead_need.
  2. Use the AI classification feature to assess the response:
    • High need (3 points) — Visitor describes a specific, urgent problem your product solves directly. Keywords: "currently struggling with," "losing customers because," "need to automate."
    • Medium need (2 points) — Visitor has a general need that your product addresses. Keywords: "looking to improve," "interested in," "want to explore."
    • Low need (1 point) — Vague or unclear need. Keywords: "just curious," "researching options," "my boss asked me to look."
    • No clear need (0 points) — No identifiable need expressed.
  3. After each condition branch, add a Set Variable node to update the score: lead_score = lead_score + [points].

Scoring the Timeline (0-3 points):

  • This month (3 points) — "ASAP," "right away," "this week," "immediately"
  • This quarter (2 points) — "next month," "soon," "in a few weeks"
  • No timeline (1 point) — "no rush," "researching," "not sure yet"
  • Far out (0 points) — "next year," "eventually," "no timeline"

Scoring the Authority (0-2 points):

  • Decision-maker (2 points) — "I'm the one deciding," "it's my call," "I manage the team"
  • Part of the process (1 point) — "I'll recommend it to my team," "I'm evaluating options for my manager"
  • No authority (0 points) — "I'm just looking for someone else"

Scoring the Budget (0-2 points):

  • Has budget (2 points) — Mentions a specific range, says "budget is approved," or indicates willingness to pay
  • Flexible (1 point) — "Depends on features," "need to see pricing," "open to it"
  • No budget (0 points) — "Looking for something free," "no budget yet," "need to get approval"

The maximum score is 10 (3+3+2+2). This distribution weights Need and Timeline more heavily than Authority and Budget, which reflects the reality that urgency and problem-solution fit are the strongest buying signals.

Step 5: Route by Lead Score

After all scoring Condition nodes have run, add a final Condition node that checks the lead_score value and routes to three paths:

  • Hot lead: lead_score >= 8 — High intent, clear need, ready to act
  • Warm lead: lead_score >= 4 AND lead_score < 8 — Interested but not ready, or missing some qualification criteria
  • Cold lead: lead_score < 4 — Early stage, no urgency, or poor fit

Step 6: Configure the Hot Lead Path

Hot leads are your money. These visitors have a clear need, an urgent timeline, authority to decide, and budget to spend. Don't make them wait.

Notify Sales Immediately

  1. Add a Send Email node.
  2. Configure:
    • To: sales@yourcompany.com (or your sales team's Slack channel via webhook)
    • Subject: Hot Lead from Website Chat: {{lead_name}} (Score: {{lead_score}}/10)
    • Body:
Name: {{lead_name}}
Email: {{lead_email}}
Score: {{lead_score}}/10

Need: {{lead_need}}
Timeline: {{lead_timeline}}
Authority: {{lead_authority}}
Budget: {{lead_budget}}

This lead scored 8+ and is ready for immediate outreach.

Offer a Meeting

After the email notification, add a Message node:

"Based on what you've shared, I think our [relevant plan] would be a great fit. I'd love to connect you directly with someone on our team who can give you a personalized walkthrough and answer any specific questions. Would you like to schedule a quick call?"

If your team uses Calendly or a similar scheduling tool, include the booking link directly in the message. Hot leads who can self-schedule convert at higher rates than those who have to wait for someone to email them.

Optional: Human Handover

For the highest-value leads, consider adding a Human Handover node that connects them with a sales rep in real time. If a rep is online, this creates an immediate handoff — the visitor goes from bot to human within the same chat window. See our human handover setup guide for configuration details.

Step 7: Configure the Warm Lead Path

Warm leads are interested but not ready. They need nurturing, not a hard sell.

Acknowledge and Educate

Add a Message node:

"Thanks for sharing all that! Based on what you're looking for, I think you'd find these resources really helpful:"

Send Relevant Resources

Add a Card Message node with 2-3 resource cards. For example:

  • Card 1: "How Our Workflow Builder Works" — Link to your workflow builder feature page
  • Card 2: "Customer Success Stories" — Link to case studies relevant to their stated need
  • Card 3: "Pricing Plans" — Link to your pricing page

Card Messages display as rich, tappable cards with images and CTAs — much more engaging than a plain list of links.

Add to Email Nurture

Add a Send Email node (or API Call to your email marketing tool) that adds the lead to a nurture sequence:

  • To: Your email marketing system (via API) or your marketing team
  • Data to pass: lead_name, lead_email, lead_need, lead_score

Closing Message

Add a final Message node:

"I'll make sure our team has your info in case you have questions down the road. In the meantime, feel free to chat with me anytime — I'm here to help!"

Step 8: Configure the Cold Lead Path

Cold leads aren't bad leads — they're just early stage. The goal is to be helpful without wasting sales resources.

Offer Self-Service Value

Add a Message node:

"Thanks for stopping by! It sounds like you're still in the exploration phase — totally fine. Here are some resources that might help as you're evaluating options:"

Provide Educational Content

Add a Card Message node with helpful, non-salesy content:

  • Card 1: "What is an AI Chatbot?" — Link to your educational blog post
  • Card 2: "Free Tier — Try It Out" — Link to sign-up page with a note about the free plan
  • Card 3: "Compare Solutions" — Link to your comparison pages

Collect Email for Newsletter

Add a Collect Input node:

"Would you like to stay in the loop? I can add you to our newsletter — we share tips on customer engagement and AI trends. No spam, promise."

Variable: newsletter_opt_in

If they say yes (detected by a Condition node), add their email to your newsletter list via a Send Email or API Call node.

Keep the Door Open

Final Message node:

"Whenever you're ready to explore further, I'm here. Just come back and say hi. Have a great day!"

Step 9: Test and Refine

Test each path thoroughly before going live:

Test the Hot Lead Path

Use the test chat and give answers that would score 8+:

  • Need: "We're losing 30% of support tickets because we can't respond fast enough"
  • Timeline: "We need something this month"
  • Authority: "I'm the VP of Customer Success, it's my decision"
  • Budget: "We've allocated $200/month for this"

Verify: Sales email arrives with correct variables, meeting link is offered, score shows 8+.

Test the Warm Lead Path

Give moderate answers:

  • Need: "We're exploring ways to improve our support"
  • Timeline: "Sometime this quarter"
  • Authority: "I'm evaluating for my team"
  • Budget: "Need to check with finance"

Verify: Resource cards display correctly, nurture sequence triggers, score shows 4-7.

Test the Cold Lead Path

Give early-stage answers:

  • Need: "Just curious about chatbots"
  • Timeline: "No timeline really"
  • Authority: "My boss asked me to look around"
  • Budget: "Looking for something free"

Verify: Educational content appears, newsletter opt-in works, score shows 0-3.

Refine Based on Real Data

After deploying, review actual conversations in your dashboard:

  • Are leads being scored accurately? If hot leads are landing in the warm bucket (or vice versa), adjust your scoring conditions.
  • Where do visitors drop off? If many visitors abandon during the budget question, consider rephrasing or making it optional.
  • Are sales follow-ups converting? If hot leads aren't converting after handoff, the qualification criteria might be too loose.

Advanced: CRM Integration

For teams using a CRM (HubSpot, Salesforce, Pipedrive, etc.), you can push qualified leads directly into your pipeline using API Call nodes.

Example: Pushing to HubSpot

After lead scoring, add an API Call node:

  • Method: POST
  • URL: https://api.hubapi.com/crm/v3/objects/contacts
  • Headers: Authorization: Bearer YOUR_HUBSPOT_TOKEN
  • Body:
{
  "properties": {
    "firstname": "{{lead_name}}",
    "email": "{{lead_email}}",
    "lead_score": "{{lead_score}}",
    "lead_source": "website_chatbot",
    "notes": "Need: {{lead_need}} | Timeline: {{lead_timeline}}"
  }
}

This creates a contact in HubSpot with all the qualification data pre-filled. Your sales team sees the lead in their CRM pipeline with full context, ready for outreach.

The same pattern works for Salesforce, Pipedrive, or any CRM with a REST API.

Choosing the Right Qualifying Questions

BANT is a framework, not a rigid script. Adapt the questions to your business:

For SaaS Companies

  • Need: "What process or workflow are you hoping to improve?"
  • Timeline: "Is this tied to a specific project or deadline?"
  • Authority: "Who else would be involved in evaluating this?"
  • Budget: "Have you set aside a budget for tools like this?"

For E-Commerce

  • Need: "Are you looking for help with customer support, sales, or something else?"
  • Volume: "How many customer conversations does your store handle per month?" (replaces Authority)
  • Timeline: "When are you looking to get this running?"
  • Budget: "What's your monthly budget for customer service tools?"

For more on e-commerce chatbot strategies, see our guide on AI chatbots for e-commerce.

For Service Businesses

  • Need: "What type of service are you looking for?"
  • Scope: "Can you give me a rough idea of the project scope?" (replaces Budget initially)
  • Timeline: "When would you need this completed by?"
  • Authority: "Are you the person coordinating this project?"

Questions to Avoid

  • Don't ask too many questions. 4-6 is the sweet spot. More than that and visitors drop off.
  • Don't ask binary yes/no questions. Open-ended responses give you richer data for scoring.
  • Don't ask for information you don't need. Every question is friction. Only ask what directly informs qualification.
  • Don't front-load sensitive questions. Budget and authority should come after you've established rapport.

Frequently Asked Questions

How many leads can the chatbot qualify per month?

On LoopReply's free tier, you can handle 1,000 messages per month. A typical qualification conversation uses 10-15 messages, so roughly 65-100 leads. The Pro plan ($49/month) and Scale plan ($149/month) support significantly higher volumes. There are no per-lead or per-conversation fees.

Will the chatbot feel impersonal or robotic?

Not if you design the questions well. The conversational framing we use in this tutorial — open-ended questions, empathetic language, natural transitions — makes the interaction feel like a helpful conversation, not a survey. The AI model also adapts its tone based on the visitor's responses.

Can I use this alongside my existing lead forms?

Absolutely. The chatbot and your lead forms can coexist. Some visitors prefer forms, others prefer chat. Having both maximizes capture rate. You can even use the chatbot as a fallback when a visitor looks at a form page but doesn't fill it out — trigger the chat widget proactively with a message like "Need help deciding?"

How accurate is the lead scoring?

The scoring is only as good as your conditions. Start with the BANT framework we've outlined, deploy it, and refine based on real conversion data. Within 2-4 weeks of iteration, most teams reach 80%+ accuracy on distinguishing hot leads from cold ones. The key is continuous refinement.

Can the chatbot handle objections?

Yes. You can add Condition nodes that detect objections (price concerns, timing hesitation, comparison shopping) and respond with targeted content. For example, if a visitor mentions a competitor, the bot can share a relevant comparison page. Check out our comparison posts for examples.

What if a lead doesn't answer a question?

Design your flow with optional paths. If a visitor skips the budget question, assign a neutral score (1 point) rather than penalizing them with zero. Some high-quality leads are cautious about sharing budget information early. Use a Condition node to check if the variable is empty and branch accordingly.

Can I A/B test different qualification flows?

Not natively within a single bot, but you can create two bots with different qualification flows, embed them on different pages, and compare conversion rates. This is an effective way to test whether different question orders or phrasings perform better.

Next Steps

You've built a lead qualification chatbot. Here's how to maximize its impact:

  1. Train it on your product data — Add your product documentation, pricing page, and competitor comparisons to the knowledge base so the bot can answer product questions during qualification. Follow our guide to training your chatbot on custom data.
  2. Set up human handover for hot leads — Real-time handoff to sales reps can dramatically increase conversion for high-scoring leads. See our human handover best practices guide.
  3. Deploy to your website — Get the chatbot live with our installation guide.
  4. Connect your CRM — Push qualified leads directly into your sales pipeline using API Call nodes.
  5. Review and iterate weekly — Check lead scores against actual conversions. Adjust scoring weights and qualification questions based on what's actually closing deals.

The best lead qualification chatbots aren't built once — they're refined continuously. Start with the BANT framework, watch how real visitors respond, and evolve the flow based on what drives revenue.


LpReply

Ready to build your AI chatbot?

Start for free with LoopReply's visual workflow builder. No credit card required.

AICPASOC 2

SOC-2 Type II

Excellence from design to operation: data privacy, processing integrity, and confidentiality stay top of mind.

ISO27001:2022

ISO/IEC 27001:2022

The highest organizational standards for information security management, ensuring your data stays private.

GDPR

GDPR Compliant

Personal data remains personal. Advanced user permissions let users define handling procedures.

HIPAA

HIPAA Compliant

Safeguarded systems designed to keep protected health information (PHI) secure.