Open-source customer engagement suite, an alternative to Intercom, Zendesk, Salesforce Service Cloud etc. 🔥💬
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Pranav Raj S 1215f37dda
fix: Remove translated keys from locale files (#4748)
12 hours ago
.circleci chore: Update cache name in Circle CI builds (#4738) 1 day ago
.dependabot Add Dependabot config (#217) 3 years ago
.devcontainer chore: Upgrade rails and ruby versions (#2400) 10 months ago
.github fix: ce spec action for PRs from forks (#4587) 4 weeks ago
.husky chore: Fix pre-commit hooks (#3525) 6 months ago
.storybook chore: Add multiselect support in stories (#2427) 11 months ago
__mocks__ Feature: Agent Profile Update with avatar (#449) 2 years ago
app fix: Remove translated keys from locale files (#4748) 12 hours ago
bin feat: IP lookup (#1315) 2 years ago
clevercloud feat: Add support for Clever cloud deployments (#1703) 1 year ago
config chore: Add Assignable Agents API (#4722) 2 days ago
db Add first_reply_created event in conversation (#4576) 7 days ago
deployment feat: Improve Linux installation experience (#4713) 16 hours ago
docker fix: nokogiri gem build failure in docker (#4060) 3 months ago
enterprise feat: Add the ability for a super admin to define account limits (#3946) 3 months ago
lib chore: Split Inbox Settings Page Component (#4664) 2 weeks ago
log Initial Commit 3 years ago
public chore: Use different files for widget and dashboard audio alert (#4637) 3 weeks ago
spec fix: Revert changes to fix name updation from pre-chat form (#4741) 16 hours ago
stories/Sections chore: Refactor button styles (#2259) 1 year ago
swagger chore: Update the documentation for configuring webhooks in the account (#4703) 6 days ago
tmp Initial Commit 3 years ago
vendor feat: IP lookup (#1315) 2 years ago
.all-contributorsrc [docs] Move contributors section to docs (#120) 3 years ago
.browserslistrc Initial Commit 3 years ago
.bundler-audit.yml chore: mitigate CVE-2021-41098 (#3101) 8 months ago
.codeclimate.yml fix: Update survey locale based on the account (#4207) 2 months ago
.dockerignore Reduce docker image size (#394) 2 years ago
.editorconfig Introduce .editorconfig (#149) 3 years ago
.env.example chore: update newrelic gem to support log forwarding (#4626) 3 weeks ago
.eslintrc.js fix: Update survey locale based on the account (#4207) 2 months ago
.gitignore feat: installation config in super admin console (#1641) 1 year ago
.nvmrc fix: Broken Docker Builds (#2755) 10 months ago
.prettierrc chore: Execute campaigns based on matching URL (#2254) 1 year ago
.rspec Fix url in emails, add frontendURL helper (#19) 3 years ago
.rubocop.yml fix: Referer URL validation (#4309) 2 months ago
.rubocop_todo.yml feat: Add Platform APIs (#1456) 1 year ago
.ruby-version chore: Upgrade rails and ruby versions (#2400) 10 months ago
.scss-lint.yml fix: Add a check for 24 hour window before sending a message (#1084) 2 years ago General updates and add CODEOWNERS (#3685) 5 months ago General updates and add CODEOWNERS (#3685) 5 months ago
Capfile 🚨Fix Rubocop lint errors 3 years ago
Gemfile chore: Upgrade Exception tracking (#4638) 2 weeks ago
Gemfile.lock chore(deps): bump nokogiri from 1.13.5 to 1.13.6 (#4734) 2 days ago
LICENSE chore: Introduce enterprise edition license (#3209) 6 months ago
Procfile chore: Fix db:prepare error in deployments (#1668) 1 year ago Feature: Add Sidekiq docker (#443) 2 years ago
Procfile.test Chore: Initialize Cypress tests (#1078) 2 years ago General updates and add CODEOWNERS (#3685) 5 months ago
Rakefile Initial Commit 3 years ago docs: update chatwoot VDP guidelines (#2740) 10 months ago
app.json fix: Redis 6 on Heroku breaks ActionCable config (#4269) 2 months ago
babel.config.js Chore: Upgrade babel packages (#736) 2 years ago Initial Commit 3 years ago
crowdin.yml chore: Add i18n survey transaltion in crowdin (#3496) 6 months ago
docker-compose.production.yaml fix: Limit rails, postgres and redis container access to localhost (#3354) 7 months ago
docker-compose.test.yaml Chore: modify docker-compose for prod and local setups (#1090) 2 years ago
docker-compose.yaml fix: pg pass printed by docker container (#1382) 2 years ago
jest.config.js feat: Dedicated tab for campaigns (#2741) 10 months ago
jest.setup.js feat: Show date along with time in messages (#1748) 1 year ago
package.json fix: Render links with target attribute (#4685) 1 week ago
postcss.config.js feat: Display reply time in widget (#1349) 2 years ago
semantic.yml Chore: Update copy on Signup page (#1023) 2 years ago
tailwind.config.js feat: Support Dark mode for the widget (#4137) 2 months ago
workbox-config.js [Feature] Add PWA support (#157) 3 years ago
yarn.lock fix: Render links with target attribute (#4685) 1 week ago


Customer engagement suite, an open-source alternative to Intercom, Zendesk, Salesforce Service Cloud etc.

Deploy Deploy to DO

Maintainability CircleCI Badge Docker Pull Badge Docker Build Badge Commits-per-month Discord Huntr uptime response time

Chat dashboard

Chatwoot is an open-source, self-hosted customer engagement suite. Chatwoot lets you view and manage your customer data, communicate with them irrespective of which medium they use, and re-engage them based on their profile.


Chatwoot supports the following conversation channels:

  • Website: Talk to your customers using our live chat widget and make use of our SDK to identify a user and provide contextual support.
  • Facebook: Connect your Facebook pages and start replying to the direct messages to your page.
  • Instagram: Connect your Instagram profile and start replying to the direct messages.
  • Twitter: Connect your Twitter profiles and reply to direct messages or the tweets where you are mentioned.
  • Telegram: Connect your Telegram bot and reply to your customers right from a single dashboard.
  • WhatsApp: Connect your WhatsApp business account and manage the conversation in Chatwoot.
  • Line: Connect your Line account and manage the conversations in Chatwoot.
  • SMS: Connect your Twilio SMS account and reply to the SMS queries in Chatwoot.
  • API Channel: Build custom communication channels using our API channel.
  • Email: Forward all your email queries to Chatwoot and view it in our integrated dashboard.

And more.

Other features include:

  • CRM: Save all your customer information right inside Chatwoot, use contact notes to log emails, phone calls, or meeting notes.
  • Custom Attributes: Define custom attribute attributes to store information about a contact or a conversation and extend the product to match your workflow.
  • Shared multi-brand inboxes: Manage multiple brands or pages using a shared inbox.
  • Private notes: Use @mentions and private notes to communicate internally about a conversation.
  • Canned responses (Saved replies): Improve the response rate by adding saved replies for frequently asked questions.
  • Conversation Labels: Use conversation labels to create custom workflows.
  • Auto assignment: Chatwoot intelligently assigns a ticket to the agents who have access to the inbox depending on their availability and load.
  • Conversation continuity: If the user has provided an email address through the chat widget, Chatwoot will send an email to the customer under the agent name so that the user can continue the conversation over the email.
  • Multi-lingual support: Chatwoot supports 10+ languages.
  • Powerful API & Webhooks: Extend the capability of the software using Chatwoot’s webhooks and APIs.
  • Integrations: Chatwoot natively integrates with Slack right now. Manage your conversations in Slack without logging into the dashboard.


Detailed documentation is available at

Translation process

The translation process for Chatwoot web and mobile app is managed at 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.


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.

Deploy to DO

Other deployment options

For other supported options, checkout our deployment page.


Looking to report a vulnerability? Please refer our file.

Community? Questions? Support ?

If you need help or just want to hang out, come, say hi on our Discord server.


Thanks goes to all these wonderful people:

Chatwoot © 2017-2022, Chatwoot Inc - Released under the MIT License.