The client is a prepared-meal delivery service offering subscriptions and on-demand orders: tens of thousands of orders a month, with peak load on weekday evenings. Support relied on a call centre and chats, with waits of up to 40 minutes at peak times. Hiring operators ate into margin, and 70% of requests followed the same scenarios: “Where is my order?”, “How do I change the address?”, “What’s in the meal?” and “How do I move the delivery?” Almost all customers used Telegram, so it made sense to move support there too.
Automate common requests without losing service quality:
a bot that responds in natural language, sees the specific order’s data, can change a delivery and pay for a subscription right in chat, and smoothly hands complex cases to an operator. The quality threshold was strict: if the bot “pretends to support” instead of solving the issue, the project is a failure.
We designed the bot not as a “menu chatbot”, but as a full support employee: it can access order data and perform routine operations, with clear boundaries for escalation.
- Analysed three months of support requests: identified 50 common scenarios, their shares, customers’ actual wording and operators’ typical mistakes.
- Compiled the service’s knowledge base: delivery rules, meal ingredients, subscription rates and refund procedures, structured as facts for the model’s responses.
- Developed the dialogue core: a language model with retrieval from the knowledge base (RAG), a ban on answering beyond the service’s facts, and a consistent brand voice.
- Connected the bot to operational systems through APIs: order status and history, delivery address and time changes, and subscription pauses and payments.
- Designed escalation: complex and emotionally charged requests go to an operator with the dialogue context, so customers do not have to repeat themselves.
- Set up dialogue analytics: escalation reasons, unanswered scenarios and knowledge-base updates, allowing the bot to improve from real conversations.
The project’s main principle was that automation should not feel like automation. The bot responds in seconds, solves an issue in one or two messages and never gets stuck in a loop: for an unusual scenario, a person joins immediately with full context. That is why the support rating rose from 3.4 to 4.7—customers rate the speed and result, not “a robot or a person”. This discipline distinguishes a bot that works from one that irritates people.
The project’s economics: request volume tripled in a year as the service grew, but the operator team stayed the same—the bot handled all the increase. Operators’ freed-up hours shifted to complex, high-value scenarios and customer retention, work that previously would not fit into a shift. The bot also became a sales channel: subscription reminders and in-dialogue upsells bring in a noticeable share of revenue, turning support from a cost centre into a growth channel.
| Metric | Result |
|---|---|
| Requests handled without an operator | 0% → 78% |
| First response time | Up to 40 minutes at peak → 3–5 seconds |
| Cost per request | ≈90 ₽ → ≈7 ₽ |
| Support CSAT | 3.4 → 4.7 |
Metrics are transcribed from the original case materials. A period is stated where it is recorded in the source.
- of requests resolved without an operator
- 78%
- first response (was up to 40 minutes at peak)
- 3–5 s
- cost per request (was ≈90 ₽)
- ≈7 ₽
- support CSAT (was 3.4)
- 4.7
First response: 40 minutes = 2400 s against the upper bound of 5 s. CSAT is on a 5-point scale.
UserWhere is my order?
BotYour order is on its way. Would you like to change the delivery time?
UserYes, move it to the evening
BotDone, the delivery time is updated.
- 01Request in Telegram
- 02AI + knowledge baseand order data via API
- 03Typical — solved in chat
- 04Complex — operatorwith dialogue context
Where the bot can go next:
- Omnichannel support: the same scenarios in WhatsApp and VK on a shared knowledge base and core.
- Proactive notifications to warn about delays before customers have to ask.
- A voice assistant for ordering and managing subscriptions by voice in the service’s mobile app.
The bot responds faster than any operator and never takes a day off. Most importantly, it solves the issue instead of pretending to provide support: customers don’t notice and give us “five stars”.
— Head of the Food Delivery Service