Help new customers get set up and succeed
An onboarding and success bot is for software products, platforms and membership services where customers need to set something up before they get value. It sits inside your app or customer portal, knows who the customer is and which page they're on, and walks them through the next step: connecting an integration, importing data, inviting their team. When someone is stuck or at risk of giving up, it books a call with your success team or hands the conversation over.
This is the support bot's close relative. The difference is context: instead of answering a stranger on your website, the bot knows the customer's name, plan and setup progress, so answers can be specific from the first message.
Plans
The widget, identifyUser and page context work on every plan. Handoff and booking power-ups need Basic or above. Scheduled tasks and human takeover need Standard or above (1 task per bot on Standard, 3 on Pro, 5 on Enterprise). Topic analysis and common questions need Pro or Enterprise. See Compare plans.
Who can do this: team owners and admins set this up.
What you'll set up
- Knowledge sources. Add your help centre and getting-started guides as a website data source, tutorial videos from YouTube (answers come from their English captions), and your release notes through RSS so the bot knows about new features. Turn on automatic syncing.
- Instructions. Write the Prompt using the example below. See Write your bot's instructions.
- Channel: the widget in your app. Install the chat widget in your signed-in app, then use the JavaScript SDK:
- Call
identifyUser()with the customer's id, name and email, so they never have to introduce themselves and the details appear on the conversation and in webhooks. - Turn on Advanced SDK features in the web channel settings, then call
extendContext()with facts such as plan, account age and setup progress, for examplecustom: { plan: "Trial", daysLeft: 9, integrationConnected: false }. - Optionally open the chat with a relevant prompt on key pages using
showPreview()orsendMessage().
- Call
- Power-ups. Add Book meetings with Cal.com for an onboarding call, and Talk to a human to reach your success team. On Standard and above, turn on human takeover so they can reply in the chat.
- Scheduled tasks. Use a scheduled task for routine success work, for example a weekly post to your team's Slack summarising new release notes with the Slack power-ups.
- Analytics. On Pro and Enterprise, Analytics shows the topics and questions that come up most. Repeated setup questions point to steps in your product that need fixing, not just documenting.
Example instructions
You are the onboarding assistant inside Acme, an invoicing app for small businesses.
You're talking to signed-in customers. Use their name, plan and setup progress from the context you're given.
Your goals:
1. Help them reach their first sent invoice. The setup steps are: add business details, connect a bank account, add a client, send an invoice.
2. If context shows a step isn't done, suggest it as the next step when relevant, with the exact menu path.
3. Answer "how do I" questions from the help centre, with numbered steps.
Rules:
- Only describe features and menus that appear in the information provided.
- If they're on a trial with fewer than 5 days left and haven't sent an invoice, offer a 20-minute setup call using the booking power-up.
- If they mention cancelling, a bug, or data that looks wrong, offer to pass them to the success team.
- Keep replies short. Customers are in the middle of doing something.
More starting points: onboarding and success prompts in the prompt library.
Example conversations
(context: name Jo, plan Trial, bankConnected false)
Customer: How do I get paid by card?
Bot: Hi Jo. Card payments go to your connected bank account, and you haven't connected one yet. Go to Settings > Payments > Connect bank, which takes about two minutes. Once that's done, every invoice you send gets a Pay by card button.
Customer: Honestly this is taking ages, I might just go back to spreadsheets.
Bot: Sorry it's been slow going. Would a 20-minute call with our onboarding team help? They can set up your first invoice with you. Here are this week's free times.
Pitfalls
- Treating
identifyUseras security. It isn't verified: any script on the page can call it with any details. Use it for personalisation, never to decide what someone may see or do, and don't put private account data in knowledge the bot can read. - Advanced SDK features on pages you don't control. With them on, code on any page that embeds the widget can change the bot's instructions. Only turn them on if you control every page the widget appears on.
- Context the bot doesn't understand. Name custom fields plainly (
integrationConnected, notic_flag) and mention them in the Prompt. - Documenting around a broken step. If analytics show the same setup question every week, fix the product, then update the knowledge.
- Too many nudges. An assistant that opens itself on every page gets ignored. Pick the two or three moments where people get stuck.
Related
- JavaScript SDK
Control the Chat Thing website widget with window.chatThing - open it, send messages, identify users, add page context and client-side power-ups.
- Schedule tasks for your bot
Have your bot carry out a task on a schedule, such as a weekly summary or a daily check, using its knowledge and power-ups.
- See what customers ask with analytics
Use your bot's Overview tab to see usage, conversation topics, customer sentiment, engagement, the most common questions and AI recommendations.
Last updated