chatwoot
Open-source live-chat, email support, omni-channel desk. An alternative to Intercom, Zendesk, Salesforce Service Cloud etc. 🔥💬
Top Related Projects
A platform for community discussion. Free, open, simple.
The communications platform that puts data protection first.
Zulip server and web application. Open-source team chat that helps teams stay productive and focused.
Open-source live customer chat
Quick Overview
Chatwoot is an open-source customer engagement platform designed to help businesses manage customer conversations across various channels. It provides a unified inbox for multiple communication channels, including website chat, social media, and messaging apps, allowing teams to collaborate and respond to customer inquiries efficiently.
Pros
- Multi-channel support: Integrates with various platforms like WhatsApp, Facebook, Twitter, and more
- Open-source and self-hostable: Offers flexibility and control over data
- Customizable and extendable: Supports plugins and API integrations
- User-friendly interface: Intuitive design for both agents and administrators
Cons
- Learning curve: May require time to set up and configure for optimal use
- Limited advanced features: Some enterprise-level features may be missing compared to paid alternatives
- Community-driven support: Relies on community forums for assistance, which may not be as responsive as dedicated support
Getting Started
To get started with Chatwoot, follow these steps:
-
Clone the repository:
git clone https://github.com/chatwoot/chatwoot.git
-
Install dependencies:
cd chatwoot bundle install yarn install
-
Set up the database:
rake db:create rake db:schema:load
-
Start the server:
foreman start -f Procfile.dev
-
Visit
http://localhost:3000
to access the Chatwoot dashboard.
For detailed installation instructions and configuration options, refer to the project's documentation on GitHub.
Competitor Comparisons
A platform for community discussion. Free, open, simple.
Pros of Discourse
- More mature and established project with a larger community
- Extensive plugin ecosystem for customization
- Built-in SEO optimization and content discovery features
Cons of Discourse
- Steeper learning curve for setup and customization
- Higher resource requirements for hosting
- Less focused on real-time chat functionality
Code Comparison
Discourse (Ruby):
class Post < ActiveRecord::Base
belongs_to :topic
belongs_to :user
has_many :post_replies
validates :raw, presence: true, unless: :is_special?
end
Chatwoot (Ruby):
class Message < ApplicationRecord
belongs_to :conversation
belongs_to :account
belongs_to :sender, polymorphic: true
validates :content, presence: true
end
Both projects use Ruby on Rails, but Discourse has a more complex data model reflecting its focus on forum-style discussions, while Chatwoot's model is simpler and geared towards real-time messaging.
Discourse is better suited for community forums and knowledge bases, offering powerful moderation tools and content organization. Chatwoot excels in customer support scenarios, providing a more streamlined experience for real-time conversations and ticket management.
The communications platform that puts data protection first.
Pros of Rocket.Chat
- More comprehensive communication platform with features like video conferencing and screen sharing
- Larger community and ecosystem with numerous integrations and plugins
- Supports end-to-end encryption for enhanced security
Cons of Rocket.Chat
- More complex setup and configuration process
- Higher resource requirements for hosting and maintenance
- Steeper learning curve for users and administrators
Code Comparison
Rocket.Chat (JavaScript):
Meteor.startup(() => {
RocketChat.settings.add('Site_Url', '', {
type: 'string',
group: 'General',
public: true
});
});
Chatwoot (Ruby):
class Inbox < ApplicationRecord
validates :name, presence: true
belongs_to :account
belongs_to :channel, polymorphic: true, dependent: :destroy
end
Both projects use different programming languages and frameworks. Rocket.Chat is built with Meteor (JavaScript), while Chatwoot uses Ruby on Rails. This affects the overall architecture and development approach of each project.
Rocket.Chat's code snippet demonstrates the configuration of settings, which is typical for a more complex and feature-rich application. Chatwoot's code shows a simpler model definition, reflecting its focus on customer communication and support workflows.
The code comparison highlights the different scopes and complexities of the two projects, with Rocket.Chat offering a more comprehensive communication platform and Chatwoot focusing on customer support and engagement.
Zulip server and web application. Open-source team chat that helps teams stay productive and focused.
Pros of Zulip
- More comprehensive messaging features, including threaded conversations and topic-based organization
- Stronger focus on open-source collaboration and community-driven development
- Better support for large-scale deployments and enterprise use cases
Cons of Zulip
- Steeper learning curve due to its unique topic-based messaging system
- Less emphasis on customer support and helpdesk functionality
- More complex setup and configuration process
Code Comparison
Zulip (Python):
def get_user_activity(user_profile: UserProfile, query: str) -> List[QuerySet]:
query_filter = Q(user_profile=user_profile)
if query:
query_filter &= Q(content__icontains=query)
return UserActivity.objects.filter(query_filter).order_by("-last_visit")
Chatwoot (Ruby):
def create_conversation
@conversation = @inbox.conversations.new(conversation_params)
@conversation.contact = @contact
@conversation.save!
render json: @conversation
end
Both repositories use different programming languages and frameworks, making direct code comparison challenging. However, these snippets showcase typical operations in each project: Zulip focuses on user activity and messaging, while Chatwoot emphasizes conversation management in a customer support context.
Open-source live customer chat
Pros of Papercups
- Built with Elixir, offering excellent performance and scalability
- Simpler setup process, easier for small teams to get started
- More lightweight and focused on core chat functionality
Cons of Papercups
- Smaller community and fewer integrations compared to Chatwoot
- Less comprehensive feature set, particularly for enterprise users
- Limited customization options for the chat widget
Code Comparison
Papercups (Elixir):
defmodule Papercups.Conversation do
use Ecto.Schema
import Ecto.Changeset
schema "conversations" do
field :status, :string, default: "open"
field :read, :boolean, default: false
timestamps()
end
end
Chatwoot (Ruby):
class Conversation < ApplicationRecord
validates :account_id, presence: true
validates :inbox_id, presence: true
enum status: { open: 0, resolved: 1, pending: 2, snoozed: 3 }
scope :latest, -> { order(last_activity_at: :desc) }
end
Both repositories implement conversation models, but Papercups uses Elixir's Ecto for schema definition, while Chatwoot uses Ruby on Rails' ActiveRecord. Chatwoot's model includes more status options and a scope for sorting, reflecting its more feature-rich nature compared to Papercups' simpler approach.
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME


Chatwoot
The modern customer support platform, an open-source alternative to Intercom, Zendesk, Salesforce Service Cloud etc.


Chatwoot is the modern, open-source, and self-hosted customer support platform designed to help businesses deliver exceptional customer support experience. Built for scale and flexibility, Chatwoot gives you full control over your customer data while providing powerful tools to manage conversations across channels.
⨠Captain â AI Agent for Support
Supercharge your support with Captain, Chatwootâs AI agent. Captain helps automate responses, handle common queries, and reduce agent workloadâensuring customers get instant, accurate answers. With Captain, your team can focus on complex conversations while routine questions are resolved automatically. Read more about Captain here.
ð¬ Omnichannel Support Desk
Chatwoot centralizes all customer conversations into one powerful inbox, no matter where your customers reach out from. It supports live chat on your website, email, Facebook, Instagram, Twitter, WhatsApp, Telegram, Line, SMS etc.
ð Help center portal
Publish help articles, FAQs, and guides through the built-in Help Center Portal. Enable customers to find answers on their own, reduce repetitive queries, and keep your support team focused on more complex issues.
ðï¸ Other features
Collaboration & Productivity
- Private Notes and @mentions for internal team discussions.
- Labels to organize and categorize conversations.
- Keyboard Shortcuts and a Command Bar for quick navigation.
- Canned Responses to reply faster to frequently asked questions.
- Auto-Assignment to route conversations based on agent availability.
- Multi-lingual Support to serve customers in multiple languages.
- Custom Views and Filters for better inbox organization.
- Business Hours and Auto-Responders to manage response expectations.
- Teams and Automation tools for scaling support workflows.
- Agent Capacity Management to balance workload across the team.
Customer Data & Segmentation
- Contact Management with profiles and interaction history.
- Contact Segments and Notes for targeted communication.
- Campaigns to proactively engage customers.
- Custom Attributes for storing additional customer data.
- Pre-Chat Forms to collect user information before starting conversations.
Integrations
- Slack Integration to manage conversations directly from Slack.
- Dialogflow Integration for chatbot automation.
- Dashboard Apps to embed internal tools within Chatwoot.
- Shopify Integration to view and manage customer orders right within Chatwoot.
- Use Google Translate to translate messages from your customers in realtime.
- Create and manage Linear tickets within Chatwoot.
Reports & Insights
- Live View of ongoing conversations for real-time monitoring.
- Conversation, Agent, Inbox, Label, and Team Reports for operational visibility.
- CSAT Reports to measure customer satisfaction.
- Downloadable Reports for offline analysis and reporting.
Documentation
Detailed documentation is available at chatwoot.com/help-center.
Translation process
The translation process for Chatwoot web and mobile app is managed at https://translate.chatwoot.com using Crowdin. Please read the translation guide for contributing to Chatwoot.
Branching model
We use the git-flow branching model. The base branch is develop
.
If you are looking for a stable version, please use the master
or tags labelled as v1.x.x
.
Deployment
Heroku one-click deploy
Deploying Chatwoot to Heroku is a breeze. It's as simple as clicking this button:
Follow this link to understand setting the correct environment variables for the app to work with all the features. There might be breakages if you do not set the relevant environment variables.
DigitalOcean 1-Click Kubernetes deployment
Chatwoot now supports 1-Click deployment to DigitalOcean as a kubernetes app.
Other deployment options
For other supported options, checkout our deployment page.
Security
Looking to report a vulnerability? Please refer our SECURITY.md file.
Community
If you need help or just want to hang out, come, say hi on our Discord server.
Contributors
Thanks goes to all these wonderful people:
Chatwoot © 2017-2025, Chatwoot Inc - Released under the MIT License.
Top Related Projects
A platform for community discussion. Free, open, simple.
The communications platform that puts data protection first.
Zulip server and web application. Open-source team chat that helps teams stay productive and focused.
Open-source live customer chat
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot