Chatwoot - Customer Support Platform
Chatwoot is an open source customer engagement platform. It centralizes all your communication channels (web chat, WhatsApp, email, social media) in a single inbox.
What is it for?
- Live chat - Chat widget for your website
- Unified inbox - All messages from all channels in one place
- Multichannel - WhatsApp, Facebook, Instagram, Twitter, Email, Telegram
- Support team - Assign conversations to agents, use predefined responses
Open Source Alternative to
- Intercom
- Zendesk Chat
- Freshdesk
- Crisp
- Drift
- LiveChat
- Tidio
Why choose Chatwoot over SaaS alternatives?
| Feature | Chatwoot | SaaS Alternatives |
|---|---|---|
| Cost | Fixed monthly price | Per user/usage |
| Data | On your server | On external servers |
| Limits | No limits | Plan-based limits |
| Customization | 100% customizable | Limited |
| Code | Open source | Proprietary |
Use case examples
- E-commerce - Real-time customer service
- SaaS - Technical support via chat
- Agencies - Manage clients from multiple companies
- Services - Answer inquiries from potential customers
- IT Support - Tickets and issue tracking
Minimum requirements
| Resource | Minimum | Recommended |
|---|---|---|
| CPU | 2 vCPU | 4 vCPU |
| RAM | 2 GB | 4 GB |
| Storage | 25 GB | 50 GB |
Initial setup
When deploying Chatwoot, you configure:
- Admin email - Your email for the administrator account
- Password - Access password
Getting started
1. Access Chatwoot
After deployment, click "Open App" and log in with your credentials.
2. Set up your first inbox
An inbox is a communication channel. For the web chat widget:
- Go to Settings > Inboxes
- Click Add Inbox
- Select Website
- Configure the widget name and color
- Copy the JavaScript code it gives you
3. Install the widget on your site
Paste the code before </body> on your site:
<script>
(function(d,t) {
var BASE_URL="https://yourapp.deployalo.com";
var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=BASE_URL+"/packs/js/sdk.js";
g.defer = true;
g.async = true;
s.parentNode.insertBefore(g,s);
g.onload=function(){
window.chatwootSDK.run({
websiteToken: 'YOUR_TOKEN_HERE',
baseUrl: BASE_URL
})
}
})(document,"script");
</script>
4. Test the chat
- Visit your website
- You'll see the chat button in the corner
- Send a test message
- The message will appear in your Chatwoot inbox
Available channels
Website (Chat Widget)
The chat widget that appears on your site.
Email
Connect email accounts to receive and respond from Chatwoot:
- Go to Settings > Inboxes > Add Inbox > Email
- Configure IMAP and SMTP
WhatsApp
Connect WhatsApp Business API:
- Go to Settings > Inboxes > Add Inbox > WhatsApp
- Configure your WhatsApp Business number
- Requires Meta Business account
Facebook & Instagram
Connect your Facebook and Instagram pages:
- Go to Settings > Inboxes > Add Inbox > Facebook
- Connect with your Facebook account
- Select the pages to connect
Telegram
Connect a Telegram bot:
- Create a bot with @BotFather on Telegram
- Go to Settings > Inboxes > Add Inbox > Telegram
- Enter your bot token
Key features
Canned Responses
Create saved responses for frequently asked questions:
- Go to Settings > Canned Responses
- Click Add Canned Response
- Define a shortcode (e.g.,
/greeting) - In the chat, type the shortcode to insert the response
Labels
Organize conversations with labels:
- Go to Settings > Labels
- Create labels like "Urgent", "Sale", "Support"
- Apply labels to conversations from the inbox
Teams
Organize agents into teams:
- Go to Settings > Teams
- Create teams (e.g., "Sales", "Technical Support")
- Assign agents to each team
- Conversations can be assigned to teams
Automations
Create automatic rules:
- Go to Settings > Automations
- Create rules like "If message contains 'price', assign label 'Sale'"
Agents and permissions
Adding agents
- Go to Settings > Agents
- Click Add Agent
- Enter email and name
- The agent will receive an invitation by email
Roles
- Administrator - Full control
- Agent - Can respond to assigned conversations
Additional resources
Troubleshooting
The widget doesn't appear
- Verify the JavaScript code is properly installed
- Check the browser console for errors
- Make sure the
websiteTokenis correct
I'm not receiving notifications
- Go to Settings > Account Settings > Notifications
- Enable email or push notifications
Messages are not being sent
Check the Chatwoot logs:
docker logs chatwoot_app --tail=50