🎬

Video tutorial coming soon.

🤖 Deploy Typebot — Visual Chatbot Builder

Deploy Typebot on Ubuntu — an open-source visual chatbot builder to create interactive forms, surveys, and conversation flows with no-code conditional logic.

⚠️ This script is provided for demo and testing purposes only. Not intended for production use.

📦 Resources & Setup Scripts

Grab the automated bash script from GitHub to follow along with the video.

Automated install script — launch your chatbot builder platform in minutes.
View on GitHub

Quick Install:

wget -O typebot-install.sh https://raw.githubusercontent.com/mhmdali94/Docker/main/tools/typebot/install.sh
chmod +x typebot-install.sh
sudo bash typebot-install.sh

Tutorial Steps

1 Download the Script

wget -O typebot-install.sh https://raw.githubusercontent.com/mhmdali94/Docker/main/tools/typebot/install.sh

2 Make it Executable

chmod +x typebot-install.sh

3 Run the Installer

The script installs Docker if needed, then deploys Typebot Builder and Viewer services.

sudo bash typebot-install.sh

4 Access the Builder UI

Navigate to port 3000 for the Typebot Builder where you design chatbot flows.

http://<your-server-ip>:3000

5 Create Your First Chatbot

In the Builder, create a new typebot, add blocks (text, input, conditional), and use the Share tab to get the embed code for your website.

Ports Used

PortPurpose
3000Typebot Builder UI
3001Typebot Viewer

Overview

Typebot is an open-source chatbot and conversational form builder that lets you create powerful interactive flows — lead capture forms, customer surveys, onboarding sequences — and embed them anywhere. Self-hosting gives you unlimited submissions and full data ownership with no monthly fees.

Why Use It

Typebot replaces expensive SaaS chatbot and form tools like Typeform, Landbot, and Tally with a self-hosted visual builder you fully control. You own the conversation data, can embed typebots on unlimited websites with no per-response pricing, and can integrate with any backend via webhooks. The visual drag-and-drop flow builder requires zero coding, yet supports conditional logic, variables, API calls, and custom JS blocks for power users.

When You Need It

    Who Should Use It

      Real Use Cases

        Main Features

          How to Use After Installation

            Security Best Practices

              Ports and Firewall Notes

              Typebot Builder runs on port 3000 and Typebot Viewer on port 3001. Block both ports from the internet using UFW — expose only your reverse proxy on 80/443. The Viewer serves the public chatbot, so it needs its own domain/subdomain via the proxy.

              Backup and Maintenance

                Common Mistakes

                  Troubleshooting

                    Alternatives

                    n8n is the best alternative when you need full workflow automation beyond chatbots — it can trigger on form submissions and connect to hundreds of services. Formbricks is a better choice for traditional surveys and product feedback collection. Tally is a lightweight cloud option if you don't need self-hosting. Botpress offers more advanced AI-powered chatbot capabilities for complex conversational AI use cases.

                    When Not to Use It

                    Skip Typebot if you need AI-powered natural language understanding — Typebot flows are script-based, not NLP-driven. For complex customer support automation with intent detection, look at Botpress or Rasa. Also skip it if you only need simple static contact forms — a plain HTML form posting to Formspree is far simpler to maintain.

                    PrismaTechWork Professional Help

                    PrismaTechWork provides end-to-end infrastructure services — from initial deployment and security hardening to ongoing monitoring, automated backups, and dedicated support. Whether you need a single-server setup or a multi-site network, our team ensures your infrastructure is built right, secured properly, and maintained reliably.

                      Contact Us

                      Frequently Asked Questions

                      What's the difference between Typebot Builder and Typebot Viewer?

                      Typebot Builder (port 3000) is the admin interface where you design chatbot flows, configure integrations, and view analytics. Typebot Viewer (port 3001) is the public-facing service that renders the chatbot to end users. When you embed a chatbot on a website, users interact with the Viewer. Both services must be running and both need their own public URLs for the system to work correctly.

                      How do I embed a Typebot on my website?

                      In the Typebot Builder, open your typebot and go to the Share tab. You'll find embed code snippets for standard iframe, popup (triggered by a button), bubble (bottom-right chat icon), and full-page options. Copy the snippet and paste it into your website's HTML. The chatbot loads from your Viewer URL, so NEXT_PUBLIC_VIEWER_URL must be publicly accessible from the internet.

                      Can Typebot integrate with OpenAI for AI responses?

                      Yes. Typebot has a built-in OpenAI block that connects to GPT-4, GPT-3.5, or any OpenAI-compatible API. Add an OpenAI block to your flow, provide your API key in the block settings, and write a system prompt. The AI's response is stored in a variable you can use in subsequent blocks. This lets you create chatbots that combine scripted logic with AI-generated answers.

                      How do I collect responses in Google Sheets?

                      Add a Google Sheets block at the end of your chatbot flow. Connect your Google account, select the spreadsheet, and map Typebot variables to spreadsheet columns. Each completed conversation appends a row to the sheet with the collected values. You can also use the Google Sheets block mid-flow to look up existing data and personalize responses based on what's in the sheet.

                      Is there a limit on chatbot responses in the self-hosted version?

                      No limits. The self-hosted Typebot version has no per-response pricing, no monthly caps, and no feature restrictions. You're limited only by your server's storage and processing capacity. This is the primary advantage over Typeform (which charges per response after a limit) and other cloud chatbot tools with usage-based pricing.

                      How do I set up a custom domain for my chatbot?

                      Point a subdomain (e.g., chat.yourdomain.com) to your server and configure Nginx Proxy Manager to proxy to port 3001 (the Viewer). Set NEXT_PUBLIC_VIEWER_URL=https://chat.yourdomain.com in your environment. In Typebot Builder settings, add this custom domain under Workspace Settings → Custom Domain. Chatbot embed URLs will then use your custom domain instead of your server IP.

                      Can multiple users collaborate on chatbots?

                      Yes. Typebot has workspace-level collaboration. Invite team members to your workspace under Workspace Settings → Members. You can assign admin or member roles. All members in a workspace can view and edit typebots. There's no granular per-typebot permission system — it's workspace-wide access. For multiple isolated teams, create separate workspaces with separate accounts.

                      How do I update Typebot to the latest version?

                      Run `docker compose pull && docker compose up -d` in your Typebot directory. Typebot runs database migrations automatically on startup, so updating is generally safe. Before major version updates, read the Typebot GitHub changelog for breaking changes — particularly around environment variable names that sometimes change between versions. Always backup your PostgreSQL database before a major update.