Many chatbots frustrate customers. They loop through menus, misunderstand simple questions and hide the way to reach a person. Yet a well-planned bot can answer common questions instantly at any hour and free staff for harder cases. The difference is rarely the technology. It is planning.
Step 1: study real customer questions
Before choosing a tool, collect 100 to 300 real messages from email, phone notes, chat and social media. Group them into topics and count how often each appears. You will usually find that a small number of topics, such as order status, prices, opening hours, delivery areas, returns and payment methods, cover most of the volume.
Your first bot should handle only the top five to ten topics very well.
Step 2: define scope and limits
Write down:
- What the bot will do: answer FAQs, check order status, collect details for a callback, book appointments.
- What it will not do: give medical or legal advice, change payments, handle angry complaints, decide refunds.
- When it hands over to a human: after two failed attempts, when the customer asks for a person, when keywords like "complaint" or "fraud" appear, or when the topic is out of scope.
Clear limits protect customers and your reputation.
Step 3: choose the approach
| Approach | How it works | Best for |
|---|---|---|
| Menu or button bot | Fixed paths and quick replies | Simple, predictable tasks |
| Rule and keyword bot | Matches phrases to prepared answers | Small FAQ sets |
| AI with retrieval (RAG) | Language model answers from your documents | Larger or changing knowledge |
| AI with tools | Looks up orders or bookings through your systems | Personalised answers |
| Hybrid | Buttons plus AI for free text, with human handoff | Most real businesses |
A hybrid design is often the most reliable: buttons for common actions, AI for open questions and a human for exceptions.
Step 4: write the knowledge
The bot is only as good as its content. Prepare short, accurate, up-to-date answers.
- Write each answer once, in plain language.
- Include prices, hours and policies with the date last checked.
- Use the words customers use, not internal jargon.
- Cover both Nepali and English if your customers use both.
- Assign an owner who updates the content when policies change.
If you use a language model, supply these documents as the only source of truth and instruct the bot to say it does not know when the answer is missing.
Step 5: design the conversation
- Introduce the bot honestly: "I am an automated assistant. I can help with orders, delivery and returns."
- Keep replies short. Customers read on phones.
- Ask one question at a time.
- Offer quick options such as "Track my order" and "Talk to a person".
- Confirm before acting: "You want to cancel order 4521, correct?"
- Allow escape at any time. "Talk to a person" should always work.
- Match your brand tone without trying too hard to be funny.
Step 6: plan the human handoff
The handoff is where trust is won or lost.
- Pass the full conversation to the agent so the customer does not repeat themselves.
- Show expected waiting time and working hours.
- Offer a callback or email option outside hours.
- Make sure someone actually monitors the inbox.
Step 7: protect privacy and safety
- Do not ask for passwords, card numbers or one-time codes.
- Explain what data is collected and why.
- Limit access to order details with proper verification, such as an order number plus phone number.
- Log conversations securely and set a retention period.
- Test for prompt injection if you use a language model: users may try to make the bot ignore its rules.
Step 8: test before launch
Create a test list of 50 to 100 questions, including:
- Typical questions in different wordings
- Spelling mistakes and Roman-Nepali text
- Out-of-scope requests
- Angry or abusive messages
- Attempts to trick the bot
Have colleagues and a few friendly customers try it. Fix gaps in content and rules, then repeat.
Step 9: measure and improve
Track these indicators:
- Resolution rate: share of conversations solved without a human
- Handoff rate and reasons
- Customer satisfaction (a quick thumbs up or down)
- Unanswered questions: the most valuable list for improving content
- Average response time
Review a sample of real conversations weekly during the first months. Watch for confident wrong answers, which are worse than "I do not know".
A simple retrieval-based answer function
The following sketch shows the core of an FAQ bot that refuses to answer when it has no good match:
import numpy as np
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("paraphrase-multilingual-MiniLM-L12-v2")
faqs = {
"How long does delivery take?": "Inside Kathmandu valley delivery takes 1 to 2 days.",
"What is your return policy?": "You can return items within 7 days with the receipt.",
"What are your opening hours?": "We are open 9 am to 6 pm, Sunday to Friday.",
}
questions = list(faqs)
vectors = model.encode(questions, normalize_embeddings=True)
def reply(user_message: str, threshold: float = 0.55) -> str:
q = model.encode([user_message], normalize_embeddings=True)[0]
scores = vectors @ q
best = int(np.argmax(scores))
if scores[best] < threshold:
return "I am not sure. Let me connect you with a team member."
return faqs[questions[best]]
print(reply("when will my parcel arrive?"))
The threshold is the key safety feature. Tune it using your test questions.
Frequently Asked Questions
How much does a support chatbot cost?
Costs range from free or low monthly plans for simple bots to larger budgets for custom AI systems. Start small and measure value before expanding.
Will customers accept talking to a bot?
Many do for quick questions, if the bot is honest, fast and easy to escape. Forced bots with no human option annoy people.
Should the bot pretend to be human?
No. Be transparent. It builds trust and may be required by regulation in some places.
How often should I update the content?
Whenever prices, policies or products change, and review it at least monthly.
Conclusion
A helpful chatbot comes from studying real questions, limiting scope, writing good content, planning human handoff and testing honestly. Launch small, learn from unanswered questions and improve steadily.