Botpress Tutorial
Last updated: April 2026
What you'll achieve
After this tutorial, you'll have a fully functional, basic AI chatbot deployed on a website. You'll understand how to create a Botpress workspace, build a simple conversation flow using the visual editor, train the bot with your own Q&A, and embed it on a demo webpage. I'll guide you through creating a bot that can answer FAQs about your service or product. You'll gain hands-on experience with the core interface and leave with a shareable, working prototype, giving you the confidence to explore more complex features.
Prerequisites
- •A free Botpress Cloud account (use the free tier)
- •A web browser (Chrome, Firefox, or Edge recommended)
- •A text snippet (like a company FAQ) to use as training data
Step-by-Step Guide
Step 1: Sign Up and Create Your First Bot
Head to cloud.botpress.com and click 'Sign Up'. Use your email or a GitHub account. What surprised me was how quickly you get to the action. After verifying your email, you'll land on the dashboard. Click the big '+ Create Bot' button. Here's my honest take: don't get overwhelmed by the template options. For your first bot, select 'Blank Bot'. Give it a clear name like 'My_Support_Bot' and a description. Click 'Create Bot'. Botpress will now provision your bot, which takes about 30 seconds. You'll be automatically redirected to the Bot Studio, which is your main workspace. Don't worry about any other settings for now.
Use a descriptive bot name; it helps later when managing multiple projects.
Step 2: Navigate the Bot Studio Dashboard
The Bot Studio is your command center. On the left, you'll see the main navigation sidebar. 'Flows' is where you visually build conversations—this is your most important tab. 'Content' is for storing reusable messages. 'Q&A' is a fantastic beginner-friendly feature where you can dump questions and answers to train your bot instantly. 'NLU' (Natural Language Understanding) is for more advanced intent training. The large central canvas is where you'll build your flow. On the right, you'll see a properties panel that changes based on what you select. I tested this interface daily, and while it's developer-centric, the Q&A section is the perfect on-ramp for non-coders. Ignore the 'Code' and 'Actions' tabs for now.
Spend 2 minutes just clicking each main menu item to see what panel opens.
Step 3: Train Your Bot with Simple Q&A
This is the fastest way to make a useful bot. Click 'Q&A' in the left menu. Click '+ New Q&A'. In my experience, this is Botpress's secret weapon for beginners. In the 'Questions' field, type variations of a user query, each on a new line. For example: "What are your opening hours?", "When are you open?", "What time do you open?". In the 'Answer' field, write the single, clear response: "We are open from 9 AM to 6 PM, Monday through Friday." Click 'Save & Train'. A notification will say the NLU model is training. Wait 20 seconds. Now, see the magic! Click the 'Emulator' tab (the speech bubble icon in the bottom right). Type "When do you open?" and hit enter. Your bot should respond correctly! This proves the core AI is working.
Add at least 3-5 different phrasings for each question to make the bot robust.
Step 4: Build Your First Visual Conversation Flow
Now let's make a guided conversation. Click 'Flows'. You'll see a default 'main.flow' with a green 'Start' node. Click on the canvas background and drag to pan. Scroll your mouse wheel to zoom. Click on the 'Start' node, then look for the small '+' icon on its right side. Click it to create a new node. A menu appears—select 'Send a Message'. Click on this new node. On the right-side panel, in the 'Message' text box, type a greeting like "Hello! I'm your assistant. How can I help you today?" The flow now has a start and a message. Click the 'Play' button (Test) in the top bar. The emulator opens. You'll see your greeting! This is the foundational skill: connecting nodes to create a dialog path.
Use the keyboard shortcut 'T' to quickly create a new 'Send a Message' node.
Step 5: Embed Your Bot on a Demo Website
A bot in the studio is useless. Let's put it live. Click the 'Integrations' icon (a puzzle piece) in the left sidebar. Find and click on 'Webchat'. Toggle the 'Enabled' switch to ON. This activates the web channel. Scroll down to the 'Embed Code' section. Click 'Copy Code'. This snippet is all you need. Now, open a new browser tab and go to codepen.io. Create a new 'Pen'. Click on the 'HTML' box and paste the copied code. Click 'Run' or 'Update'. What surprised me was the instant gratification—your fully functional AI chatbot will appear in the bottom right corner of the CodePen preview! You can now chat with it. This proves you can embed this anywhere.
In the Webchat settings, customize the bot name and colors under 'Theme' to match your brand.
Step 6: Connect Q&A to Your Flow
Your Q&A and Flow are currently separate. Let's connect them. Go back to your 'main.flow' in the Flows tab. From the left sidebar, under 'Elements', find and drag the 'Q&A' element onto the canvas, placing it after your greeting node. Connect the nodes by dragging from the greeting node's output (right side) to the input (left side) of the Q&A node. Now click on the Q&A node. In the properties panel, you can leave the default settings. This node acts as a router—it will check any user message against your Q&A database. If there's a match, it replies. If not, it can flow to a default 'Not Understood' node. Test it in the Emulator: your greeting appears, and then your Q&A answers should work seamlessly within the flow.
Always add a node after Q&A to handle unanswered questions, like a fallback message.
Common Mistakes to Avoid
Not training after Q&A changes. Always click 'Save & Train' and wait for the confirmation, or your bot won't learn.
Creating spaghetti flows. Keep your first flow linear and simple. Avoid dozens of crisscrossing lines.
Ignoring the Emulator. Test every single change immediately. Assumptions about bot behavior are often wrong.
Using one question variation. Users phrase things unpredictably. 5+ variations per intent is a minimum for reliability.