Intercom cost vs self-hosted Chatwoot and Zammad

Self-hosted Chatwoot Community and Zammad carry no license fee, so the comparison turns on hosting, AI model use, support contracts, implementation and migration. This page shows how to model each for your own volumes.

On this page

Where Intercom cost and self-hosted alternatives really diverge

A buyer facing an Intercom renewal, per-seat charges and per-outcome Fin charges should know that self-hosted Chatwoot Community and Zammad carry no license fee. The cost does not disappear, though. It moves into infrastructure, the people who run the platform, and the migration itself. Intercom prices are not stated in this section, so the baseline must come from your own contract, including seat counts, add-ons and any Fin usage line items. On the Chatwoot side, the Community Edition is free, but the paid tiers are priced per agent. The Premium Support plan is listed at $19 per agent per month and adds Captain AI, voice calls, custom branding, agent capacity, roles and permissions and priority support. The Enterprise Edition is listed at $99 per agent per month and adds SSO with SAML and SLA policies. Multiply those figures by your agent count and compare them with what your Intercom seats cost, since the feature gap decides which tier you actually need. Zammad has no license fee for self-hosted installations. Its optional support subscriptions are Business at 2,999 EUR per year, Enterprise at 5,999 EUR per year and Corporation at 9,999 EUR per year, as listed on its pricing page. Chatwoot's hardware guidance is at least 4 CPU cores and 4 GB of RAM for up to 10,000 conversations a day, and 8 cores and 8 GB for up to 20,000, plus at least 1 GB of swap. Price that infrastructure in your own cloud or data center, then add the staff time for upgrades, backups and monitoring.

Which cost components move when you self-host

This table lists the cost components that change when a support team moves from Intercom to self-hosted Chatwoot or Zammad, who is paid for each one, and whether it is one-time or recurring. Read the Intercom column against your own order form, because this page does not publish Intercom rates. The main takeaway is that software fees can fall to zero, while hosting, AI model use, history migration and staff time remain and need a written scope.

Cost componentIntercom (per-seat and per-outcome)Self-hosted Chatwoot or ZammadOne-time or recurring
Software license or subscriptionPer-seat plans billed per agent, plus Fin charges per resolved outcome. Confirm current rates in your contract.Chatwoot Community is $0 and free forever. Zammad has no license fee. Paid tiers are optional.Recurring on Intercom. Zero on the Community or Zammad path.
Vendor support contractBundled in the Intercom plan, with scope varying by plan. Confirm what your tier covers in writing.Chatwoot Premium Support is $19 per agent per month and Enterprise is $99. Zammad Business is 2,999 EUR per year.Recurring and optional. Buy only if you need it.
Hosting compute and storageNone on your side. Intercom runs the platform and stores your data.Your cloud or data center bills. Chatwoot suggests at least 4 cores and 4 GB RAM for up to 10,000 conversations a day.Recurring. Grows with conversation volume and retention.
AI model hosting or API useFin is charged per resolved outcome on top of seats.Captain AI sits on Chatwoot's Premium plan. Model hosting and API fees are yours. Confirm them with your model provider.Recurring. Driven by resolution volume and model choice.
Implementation and configurationSetup of messenger, inboxes, teams and automation happens mostly in the admin console.Your team or a partner installs, configures channels, login and email. Fixed-scope work should be agreed in writing.One-time, with later changes recurring.
Conversation history migrationSome export routes omit full transcripts, so complete history needs the Conversations API.Zammad's built-in migrators do not include Intercom. Confirm the import route for each target and budget scripting and checks.One-time. Scales with the volume of history.
Upgrades and patchingHandled by Intercom as part of the service.Your team applies Chatwoot and Zammad releases, including security releases, and tests them before production.Recurring. Driven by release frequency and change control.
Backups and restore testingHandled by Intercom. Confirm retention and export terms in your contract.Your team backs up the PostgreSQL database and attachment storage and tests restores on a schedule.Setup is one-time. Running backups and tests recur.
Internal skillsAdmins need Intercom product knowledge but no server operations.Staff or a partner need Linux, PostgreSQL, Redis and Rails or Zammad administration skills.Recurring. Keep it current through training or a support retainer.

What moves the Intercom comparison most

The total cost of moving off Intercom depends on a handful of drivers that change together: how many agents you seat, how many conversations you handle, how many channels you run, and how much AI resolution you need. Each driver also sets how large the self-hosted stack must be and what in-house skills you need to run it.

Agent count and seat tiers

Chatwoot's Community Edition has no license fee, but paid self-hosted tiers are priced per agent. Premium Support is listed at $19 per agent per month, and Enterprise at $99 per agent per month, so the seat tier you need changes the license line more than the server does. Zammad has no license fee for self-hosted use, but its support subscriptions are priced by tier per year. Ask each vendor which features sit in each tier before you count seats.

Daily conversation volume

Volume sets the size of the Chatwoot server. The requirements list at least 4 CPU cores and 4 GB of RAM for up to 10,000 conversations a day, and 8 cores and 8 GB for up to 20,000. If you expect to grow past those figures, plan the next tier and the Kubernetes option now, not after launch. Ask your team to measure peak daily volume, not the monthly average.

Channels and inboxes

Each channel you connect adds integration work, credentials to rotate and a support path to confirm. Chatwoot's README lists a website widget, email, Facebook, Instagram, Twitter, WhatsApp, Telegram, Line and SMS in one inbox, but each channel's setup and its vendor-side approval must be checked against your own accounts. Zammad is strongest where support runs through email and tickets, so a chat-heavy operation should test its channel coverage early.

SSO and SLA policy requirements

If your identity provider must enforce SAML sign-in and your service levels need SLA policies, the Chatwoot Enterprise tier is the one that lists both. Zammad supports SAML and OpenID Connect without a paid tier, according to its admin documentation. Confirm which login protocol your identity provider uses and whether your SLA targets need tracked policies or only reporting, because that answer can decide the tier and the cost.

AI resolution volume

Intercom bills its Fin agent per resolved outcome, so cost rises with every automated resolution. Self-hosted AI shifts that cost to model hosting, token usage or API fees from a model provider, and to the people who maintain the knowledge sources. Chatwoot's Captain AI sits on the Premium tier. Estimate resolutions per month from your current Intercom reports and ask each model provider for pricing in writing before comparing totals.

In-house platform skills and availability

Chatwoot needs Ruby 3.2 or later, Node.js 20.x, PostgreSQL and Redis 7.0 or higher, and it supports only PostgreSQL as its database. Zammad needs PostgreSQL 15 or newer, Redis 7 or newer and Elasticsearch for search and reporting, with Memcached for multi-instance deployments. Staff who can operate these components, plus on-call coverage for your availability target, are a recurring cost that often exceeds the license line. If those skills are missing, price an implementation partner or managed support.

How to build the comparison with your own numbers

This sequence turns Intercom's list price and the self-hosted options into a comparison built from your own seat counts, channel volumes, infrastructure rates and staff time, so the result reflects your organization rather than a generic estimate.

  1. Export your current Intercom seat and plan details

    Your Intercom account owner or finance contact pulls the current contract: the number of paid seats by role, the plan and add-ons in use, and any per-outcome charges for the Fin AI agent over the last full billing period. Ask for the invoice lines, not a summary, so each charge is traceable. You know this step is done when every seat type and every outcome charge in the invoices is matched to a line in a single spreadsheet.

  2. Inventory channels, inboxes and conversation volume

    Support or operations leads list every channel that feeds Intercom today, such as website chat, email, social messaging or SMS, along with the inboxes, teams and average monthly conversations per channel. Pull these counts from Intercom reporting and mark which channels you would keep on a self-hosted tool. You know this step is done when each channel has a monthly volume figure and an owner who confirmed it.

  3. Choose the Chatwoot edition or Zammad support tier

    Your team compares the features it actually uses against the Chatwoot Community Edition, Premium Support and Enterprise Edition, and against Zammad's self-hosted model with its optional Business, Enterprise and Corporation support contracts. Confirm current prices with the vendor, since these change. Note which requirements, such as SAML single sign-on or SLA policies, force a paid tier. You know this step is done when each required feature maps to a named edition or to the free self-hosted build.

  4. Price hosting from your own infrastructure rates

    Your infrastructure team costs the servers, database, Redis, storage and backups from your own cloud account or data center rates, using the sizing guidance in Chatwoot's and Zammad's requirements pages for your expected volume. Include a high-availability setup if you need one, and add staging and disaster recovery copies. You know this step is done when hosting has a monthly figure per environment, sourced from internal rate cards or your cloud bill.

  5. Estimate one-time migration and parallel running

    Your team or your implementation partner estimates the one-time work: extracting full conversation history from Intercom through its API, moving contacts, rebuilding the widget, inboxes and automation rules, and running both systems during cutover. Ask any partner for a fixed-scope quote with written deliverables before you accept a figure. Confirm whether your Intercom contract allows continued access during the overlap. You know this step is done when each migration task has an owner, an estimate in staff days, and a quote or internal figure attached.

  6. Add recurring staff time for upgrades and operations

    Your platform or IT team estimates the recurring hours for applying Chatwoot or Zammad releases, including security releases, patching the operating system, PostgreSQL and Redis, monitoring, backups and restore tests. Decide whether this sits with internal staff or a retainer with a partner, and ask for the retainer scope in writing. You know this step is done when the monthly hours are written down with a named owner and a backup owner.

  7. Assemble the side-by-side model and test it

    Combine the Intercom invoice lines with the self-hosted hosting, support, migration and staff figures into one model, with one-time and recurring costs in separate columns. Run it at your current volume and at a higher volume to see which costs rise with conversations, seats or AI usage. Have finance and the infrastructure lead review each input. You know this step is done when the reviewers have signed off on every input source and the model shows a clear break-even point for your organization.

What migrating conversation history costs in time and risk

Intercom history will not come across through Zammad's built-in migrator. Zammad's migrators cover Freshdesk, Kayako, OTRS and Zendesk only, so an Intercom move means either pulling conversations through the Intercom API and mapping them into Zammad with the Zammad API, or paying for custom development. That extraction and mapping work is the largest one-time cost in the project, and it is driven by how much history you keep, how many attachments and transcripts you carry, and how cleanly your Intercom contacts, teams and tags map onto Zammad objects. Ask any implementation partner to price the extraction script, the field mapping and a test run as separate line items, and to state who owns the script afterward. Chatwoot has no built-in Intercom migrator in the sources we reviewed, so confirm the same question for it before you compare the two options on migration effort.

Zammad migrations are all or nothing, run only on a new instance and accept one source system per migration. That shapes the cutover plan directly: you cannot load a first batch of history, go live, and add the rest later in the same instance, and you cannot merge a second source into the first. Plan the target instance, the full import and the verification window as one block, and schedule the business cutover around it. The Zendesk path adds further limits: the migration needs an API token created by a full administrator, user passwords are not migrated so agents and customers must reset or re-authenticate, differential migrations are not supported, and rate limits depend on your Zendesk plan. Those points belong in your risk register, with a named owner for each. If your Intercom data is partly in another system, such as a Zendesk or Freshdesk archive, treat that as a separate migration, because one source per run applies.

Build a rollback and parallel-running budget into the plan before you commit. Because the import cannot be repeated incrementally, the safe pattern is to keep Intercom live until the new instance has passed review of transcripts, attachments, contact links and reporting, and to confirm in writing how long the Intercom subscription will run during that overlap. Ask your provider how many full import rehearsals are included in the fixed scope, what happens if a rehearsal fails on rate limits, and what the retention position is for the original Intercom data after cutover. Those answers set the recurring cost of the overlap period more accurately than any per-agent price comparison.

Costs teams forget on each side

A subscription line item rarely shows the work that follows a move. The cards below cover what your team must run and staff on self-hosted Chatwoot or Zammad, and what Intercom restricts or what cutover requires on the commercial side.

Search, cache and memory headroom

Zammad uses Elasticsearch for faster search, reporting and attachment content. It is optional but strongly recommended, so the node becomes one more component you size, patch and back up. Multi-instance Zammad deployments, such as containers or cluster nodes, also need Memcached. On the Chatwoot side, the requirements page sizes a host with 4 CPU cores and 4 GB of RAM for up to 10,000 conversations a day, and advises at least 1 GB of swap because Sidekiq can use more than 1 GB on a very active server. Measure your peak conversation volume before you size hosts.

Backups and restore tests

Your team now owns the database, file storage and configuration that Intercom held for you. Chatwoot supports only PostgreSQL, and Zammad stores its content in PostgreSQL 15 or newer, so one database backup policy covers the core records. Attachments and search indexes need their own handling, and you should confirm which indexes can be rebuilt from the database. Schedule restore tests in a separate environment, time them and record who runs them. Ask your partner to document recovery targets in writing before cutover.

Patch cycles and on-call cover

Zammad published security fixes on its 6.5 and 7.x lines in the same period, so you may need to patch two release tracks at once. Chatwoot releases need the same watch. Assign an owner to read release notes, test each patch in staging and book a maintenance window. Security fixes that arrive outside business hours need an on-call rota with a named escalation path. That rota consumes staff time every month, even when nothing breaks, and it should appear in your cost model.

AI model hosting costs

Chatwoot's Captain AI is part of its paid self-hosted Premium plan, which is priced per agent, but the model that answers customers is a separate cost. If you host models yourself, you need inference capacity, a serving stack and staff to tune and monitor it. If you call a hosted model API, the bill follows conversation volume, and you must confirm where customer data is processed. Ask the implementer to price both paths side by side, including the on-call effort a model incident would create.

Export and add-on restrictions

Before you cancel, confirm in writing what Intercom will export, in which formats, and whether transcripts, attachments and metadata are included. Export routes often differ in what they carry, so a complete history may require API work on your side. Check whether Fin, extra seats, workspaces or other add-ons you use are billed separately, and whether any of them restrict a clean handoff of data. These terms set the migration effort you need to budget, so ask for them before signing a new plan.

Cutover overlap and rebuild work

Running Intercom beside Chatwoot or Zammad keeps both subscriptions active for as long as the overlap lasts, and that period depends on how quickly conversations, contacts and contracts can move. Plan also for rebuilding the chat widget on your sites, inboxes, teams, automation rules, canned responses and integrations such as Slack or Shopify, which usually do not move with conversation history. List each automation and integration, then ask for a line-by-line quote within an agreed written scope.

Chatwoot or Zammad: how the cost profile differs

Chatwoot's Community Edition has no license fee to run. Its code is licensed under the MIT Expat license, except content in the enterprise/ directory, which is covered by its own license in enterprise/LICENSE. The paid tiers on the Chatwoot self-hosted plans page are priced per agent per month, so your spend grows with the number of agents who need those features, not with conversation volume alone.

  • Community Edition: $0, listed as free forever. It covers the omnichannel inbox, help center portal, automation, teams, canned responses and reporting.
  • Premium Support: $19 per agent per month. It adds Captain AI, voice calls, custom branding, agent capacity, roles and permissions, and priority support.
  • Enterprise Edition: $99 per agent per month. It adds SSO with SAML and SLA policies, so price it only for the agents who need those controls.
  • Database and cache: PostgreSQL is the only supported database, and Redis 7.0 or higher is recommended. Your database team must own PostgreSQL backups, upgrades and monitoring from day one.
  • Runtime: Ruby 3.2 or later and Node.js 20.x are required, and Ubuntu 20.04 is the only officially supported Linux distribution. Confirm the OS lifecycle with your platform team before you choose a base image.

Before you compare totals, ask Chatwoot how agents are counted for billing, which features apply to your version, and whether Captain AI model usage carries separate charges in your setup.

Questions buyers ask before comparing Intercom with self-hosting

What does a self-hosted Chatwoot or Zammad license cost?

The software itself has no license fee. Chatwoot's Community Edition is listed at $0 and free forever on its self-hosted plans page, and Zammad has no license fee for self-hosted installations. Chatwoot's paid self-hosted tiers are Premium Support at $19 per agent per month and Enterprise Edition at $99 per agent per month, which add features such as Captain AI, SSO with SAML and SLA policies. Zammad sells optional self-hosted support subscriptions named Business at 2,999 EUR per year, Enterprise at 5,999 EUR per year and Corporation at 9,999 EUR per year. The recurring costs you still carry are servers, database and cache hosting, storage, backups, operating staff and any support contract you choose. Ask for the per-year total for your agent count, not the license line alone.

What drives Intercom's total cost for a support team?

Intercom's cost is driven by the seats you buy, the plan features you need and usage-based charges such as Fin AI agent outcomes. Each of these scales with team size and conversation volume, so the bill can change without a change in headcount. To compare fairly, list every seat type, every add-on, the number of resolved outcomes you expect per month and any compliance tier you require, then price those items against your self-hosted components. Use your last twelve months of invoices as the baseline, since renewal quotes often bundle items that were previously billed separately.

How long does a migration from Intercom take, and what drives the time?

The timeline depends mainly on how much conversation history you must bring across, how many channels and inboxes you run, and how much automation you need to rebuild. Pulling full transcripts requires the Intercom Conversations API, because CSV and S3 exports omit message content, so the extraction work and rate limits matter. Rebuilding the chat widget, inboxes, teams, business hours and automation rules is usually the longest manual step. Running both systems in parallel during cutover adds time but reduces risk. Ask any implementation partner for a written scope and timeline that lists each data type and integration before work starts.

Can an internal team run self-hosted Chatwoot or Zammad?

A capable platform team can run either product, but the work is ongoing, not a one-time install. Chatwoot requires Ruby 3.2 or later, Node.js 20.x, PostgreSQL as its only supported database and Redis 7.0 or higher, and its documentation lists Ubuntu 20.04 as the only officially supported Linux distribution. Zammad requires PostgreSQL 15 or newer and Redis 7 or newer, and multi-instance deployments need Memcached. Security patches arrive as releases on both product lines, so someone must apply upgrades, watch vulnerabilities and test backups. Assess your team's skills in these areas before deciding whether to run it in-house or contract the operations.

What do self-hosted support contracts add to the cost?

Support contracts add a predictable recurring line item that covers vendor help when something breaks. Zammad's published Business, Enterprise and Corporation subscriptions are priced per year, and Chatwoot's paid self-hosted tiers are priced per agent per month. A separate implementation or operations partner, if you use one, is priced from a written, fixed scope rather than from a published list. Decide which parts of the stack need vendor backing, such as the application, and which you will run yourself, such as the operating system and database, then request quotes that name each item.

How do AI model costs change as conversation volume grows?

Self-hosted AI costs have two parts: the AI features in the product and the model that answers. Chatwoot's Captain AI agent is included in its Premium Support tier at $19 per agent per month, but the model provider or hosting you choose for answers is a separate cost. Hosted model APIs usually bill by tokens processed, so cost rises with the number of automated conversations and the length of the knowledge sources sent with each request. Self-hosted models shift that cost to GPUs and staff. Ask for model pricing per thousand conversations at your projected volume, and ask how knowledge retrieval is priced.

What should a buyer request in a self-hosting quote?

Ask for a written scope with a line for each component: installation, data migration, integrations, testing, backup configuration, upgrades and ongoing support. Require the quote to state what is fixed and what is billed on time and materials, and what happens if conversation volume or agent count grows. Request the sizing assumptions behind the infrastructure estimate, including CPU cores, memory and swap for your conversation volume, and the backup and retention approach. Also ask which items are one-time and which recur each year, and what the exit path looks like if you change providers later.

When self-hosting does and does not lower total cost

Self-hosting lowers total cost most clearly when agent seats are numerous, conversation volume is steady, and the team already runs PostgreSQL, Redis and Kubernetes for other services. Chatwoot's Community Edition has no license fee. Its Premium Support plan lists $19 per agent per month and its Enterprise Edition lists $99 per agent per month, so the license line still grows with headcount if you need the paid features such as SSO with SAML or SLA policies. Illustratively, 50 agents on Premium would cost $950 per month before hosting. Zammad has no license fee for self-hosted use, and its optional Business support contract is 2,999 EUR per year, so its recurring cost is mostly infrastructure and staff time.

The trade-off reverses in two situations. The first is scarce platform staff. Someone must own upgrades, database backups, Redis availability, mail ingestion and after-hours response, and a team with one part-time administrator may spend more hours than the seat savings return. Chatwoot officially supports only Ubuntu 20.04 among Linux distributions and only PostgreSQL as its database, so existing operating system standards in your estate may add work. The second is large AI resolution volume. Captain AI runs on a model you choose, so model usage is billed by that provider, while Intercom's Fin is charged per resolved outcome. Compare both at your projected monthly volume, and confirm with each vendor exactly what counts as a billable unit.

Build the comparison from components, not from the license line alone. Size infrastructure against Chatwoot's published guidance, which recommends 4 CPU cores and 4 GB of RAM for up to 10,000 conversations a day, 8 cores and 8 GB for up to 20,000, and at least 1 GB of swap, with Sidekiq able to exceed 1 GB on a very active server (Chatwoot deployment requirements). Add Redis 7.0 or higher, and for Zammad add PostgreSQL 15 or newer, Elasticsearch if you want full search and reporting, and Memcached for multi-instance deployments. Then add staff hours, any support contract, model fees and one-time migration work. Ask each vendor for a written quote covering these lines and for the exact billable unit of AI usage.

How DeployOpen scopes a fixed-price Chatwoot or Zammad implementation

DeployOpen plans, implements, customizes, integrates, hardens, backs up and documents self-hosted Chatwoot or Zammad inside your own cloud account, data center or air-gapped network. Engagements are fixed-scope, with scope, deliverables and timelines agreed in writing before work starts, so the cost comparison on this page turns into a concrete quote.

How we scope

  • We inventory your current Intercom seats, Fin volume, inboxes, channels and automation rules before choosing Chatwoot or Zammad.
  • We confirm which conversation history, contacts and attachments must migrate, and which content can be archived instead.
  • The written scope names hosting targets, AI model choices, support tier and migration boundaries, and it is agreed before work starts.

How we build

  • We deploy Chatwoot or Zammad with PostgreSQL, Redis and the reverse proxy in your environment, sized to your conversation volume.
  • We configure channels, teams, business hours, SSO and roles, then test email, widget and webhook flows end to end.
  • Where the scope includes migration, we run a test import from Intercom, reconcile counts and sample transcripts, then plan cutover.

How we hand over

  • You receive architecture notes, runbooks for upgrades and backups, and a list of the configuration choices made during the build.
  • We document which costs remain yours after handover, including hosting, storage, any AI model usage and any vendor support plan you choose.
  • We walk your operations and support staff through daily administration, so the team can run the platform without us.

How we support

  • Ongoing support, upgrades and continuous testing are available as a retainer, scoped separately from the build.
  • Retainer scope can cover security patches for both the Chatwoot or Zammad release line you run, with the scope agreed in writing.
  • We prepare documentation and evidence that your own auditors may review, but DeployOpen does not issue audit reports or certifications.

Sources and further reading

Talk to our team.

Tell us what you're working on, whether it's a deployment, an audit, a security test or a cyber range. You'll speak with an engineer who can help you scope it.

  • 30-minute call: free, with no obligation.
  • NDA on request: we can sign before you share details.
  • Clear next steps: a scope and plan after the call.