If your company is paying Salesforce's $175/user/month Unlimited tier, or HubSpot's $150/user/month paid sales tier, for a sales team of 20 people, that's a $35,000 to $42,000 annual line item just to store contact records and log calls. Twenty is the argument that it does not have to cost that much.
Twenty is an open-source CRM (customer relationship manager — the tool sales teams use to track contacts, deals, and follow-ups) that you can run on your own server for free, with no seat limits. The cloud version starts at $9/user/month. The same 20-person team example above would cost $2,160 a year instead of $35,000. That's the pitch, and it's a straightforward one.
The project launched out of Y Combinator (the startup accelerator behind Airbnb, Stripe, and Dropbox) in its Summer 2023 batch, has shipped over 11,000 commits, and hit 53,000+ GitHub stars as of July 2026. It is actively maintained: the latest release shipped on July 24, 2026.
| Fact | Value |
|---|---|
| What it is | Open-source CRM for contacts, deals, and follow-ups |
| Built by | Twenty HQ (YC S23) |
| License | AGPL-3.0 (free and open-source; modifications to the server code must also be open-sourced) |
| Platforms | Web browser; self-hosted on any Linux server or local machine |
| Requires | Docker (software that packages the app so it runs on any server without manual setup) with at least 2 GB of RAM |
| Install method | One-line Docker Compose script or manual Docker setup |
| Verdict | Install if you are paying $50+/user/month for a CRM and do not need Salesforce's ecosystem of add-ons |
What Twenty actually is
Twenty is a full CRM. That means contact records, company profiles, deal pipelines, email and calendar sync, tasks, notes, and reports. It is not a minimal toy — the feature set covers what most mid-market sales teams actually use day-to-day.
What makes it different from Salesforce or HubSpot is not the feature list. It is the ownership model. With a hosted CRM, your customer data lives in someone else's database, governed by their terms of service, accessible at a price they set. With Twenty, the data lives in a PostgreSQL database (an open-source relational database, the industry standard for structured data) on hardware you control. If you stop using Twenty, you export the data and leave. There is no lock-in.
Beyond standard CRM features, Twenty includes:
- Custom objects and fields — add any data model your business needs from a settings panel, no code required. If you track equipment alongside contacts, or manage properties instead of companies, you configure that in the UI.
- No-code workflow builder — set up automations like "when a deal moves to Closed Won, send a Slack notification and create a follow-up task." Triggers, conditions, and actions through a form, not code.
- Native MCP server — MCP (Model Context Protocol) is an open standard that lets AI agents connect to external tools. Twenty ships a native MCP server, which means Claude, ChatGPT, Cursor, and compatible agents can query and update your CRM records directly, without a third-party bridge.
- Webhooks and API — webhooks are automatic notifications Twenty sends to other tools when something changes (a new contact created, a deal updated). The API (a connection point that lets other tools plug into Twenty) uses GraphQL, which is modern and well-documented.
- Kanban and list views — kanban is a board-style view where deal cards move across columns. Twenty supports both kanban boards and list tables for the same data, toggled from the toolbar.
The license is AGPL-3.0 (open-source license that lets anyone use, modify, and redistribute the code, with the condition that modifications to the server must also remain open-source). That is the standard condition for a project that also runs a paid cloud service alongside the open-source version.
What you get after installing it
On first login you get a workspace that already has People, Companies, Opportunities, and Tasks configured as the default objects. It looks and behaves like a modern CRM: left sidebar navigation, a search bar that actually works, and record pages that show related data in sidebar panels.
The data model editor in Settings lets you add custom objects in a few clicks. Each object gets a name, an icon, and a set of fields. Field types include text, numbers, dates, currencies, relations to other objects, and file attachments. This is the feature that separates Twenty from a lot of open-source CRM attempts: the data model is genuinely flexible without requiring you to write code or touch a database directly.
Email sync connects to Google Workspace or Outlook via OAuth (a standard login-permission protocol that lets Twenty read your inbox without storing your password) and pulls conversation history into contact records automatically. Calendar sync does the same for meetings. Both work on the cloud version and on self-hosted, though self-hosted requires registering your own OAuth app in Google or Microsoft's developer console first — a 15-minute task the docs walk through step by step.
The workflow builder handles the most common sales automation patterns: notify on stage changes, auto-assign records based on region, send follow-up reminders after inactivity. For teams moving from HubSpot Workflows, this covers about 80% of what they were using.
Where Twenty is thinner than Salesforce: no native phone dialer, no built-in email sequence automation (the kind that sends a series of follow-up emails at intervals without human action), and a smaller ecosystem of certified integrations. The API and webhooks cover these gaps if you are comfortable wiring tools together, but it requires more setup than clicking "Install" in a Salesforce AppExchange listing.
The install experience
The fastest path is the one-line install script:
bash <(curl -sL https://raw.githubusercontent.com/twentyhq/twenty/main/packages/twenty-docker/scripts/install.sh)
This pulls the Docker Compose configuration, generates a random encryption key, and prompts you for a database password. Five minutes later you have Twenty running at http://localhost:3000. For a production server with a real domain, you point your domain at the server, set SERVER_URL in the .env file to your domain with HTTPS, and restart the containers.
The manual path gives you more control. Download the .env example file, generate your own encryption key with openssl rand -base64 32, fetch the docker-compose.yml, and run docker compose up -d. The compose file brings up the Twenty app server, a PostgreSQL database container, and a Redis cache (a fast in-memory store used for real-time features). All three services are defined in the single compose file.
Minimum hardware is 2 GB of RAM. For a team of under 50 people, a $12/month VPS (virtual private server — a rented Linux server in a data center) handles it comfortably. The app itself is not resource-heavy; the database grows with your record volume, not with your user count.
What the install script does not handle automatically: OAuth setup for email and calendar sync, custom domain SSL certificates, and backup automation. The docs cover all three, and the commands are straightforward (the docs include a cron-based backup command — cron is the built-in Linux task scheduler — that dumps the PostgreSQL database daily), but a first-time server administrator should set aside an hour for production hardening beyond the basic install.
The cloud version at twenty.com skips all of this. Sign up, invite your team, start adding contacts. The 30-day trial requires no credit card.
Where it fits and what to compare it to
Twenty is aimed at companies that have outgrown a spreadsheet but do not want to pay Salesforce prices, and that have at least one person comfortable running a Docker container on a server. That profile fits a lot of companies in the 10 to 200 person range.
Two honest comparisons:
Salesforce — The enterprise standard. Its advantage is ecosystem: thousands of integrations, a large certified-consultant market, and a platform built for companies with dedicated Salesforce admins and deep customization requirements. Its disadvantage is cost and complexity. If you are a 15-person sales team paying $175/user/month and using maybe 20% of what Salesforce offers, Twenty covers your actual usage at a fraction of the cost.
HubSpot — The free CRM tier is genuinely good and covers basic contact and deal management. The catch is that the features most growing teams actually want (email sequences, advanced automation, reporting) are behind Sales Hub Professional at $100+ per seat per month. Twenty's self-hosted version includes workflow automation with no per-seat fee. If your HubSpot bill is climbing as your team grows, Twenty is worth the evaluation.
Two open-source alternatives worth knowing:
SuiteCRM — the longest-standing open-source Salesforce alternative, built as a fork of the original SugarCRM. It has a larger legacy feature set and a bigger partner ecosystem than Twenty, but the interface is older and the architecture is harder to customize. Better choice if you need a large certified-implementer market; Twenty is the better choice if you prioritize a modern UI and a flexible data model.
Odoo CRM — not just a CRM but a full business suite covering accounting, inventory, HR, and more. If you are evaluating a broad ERP (enterprise resource planning — software that manages multiple business functions in one place), Odoo is a serious option. If you only need a CRM, Odoo is more than you need.
Verdict
Install if: you are paying more than $50/user/month for a CRM, you have someone on the team who can run a Docker container, and you do not depend on a Salesforce-specific ecosystem of add-ons or certified integrations.
The Y Combinator backing and the active commit cadence (v2.24.0 shipped July 24, 2026, with 52 pull requests merged) are evidence of a well-funded, professionally run project. The AGPL license means the code stays open and modifications cannot be quietly relicensed. The self-hosted path is genuinely free with no seat limits.
The honest caveats: email and calendar sync require more setup than a hosted CRM, the integration ecosystem is smaller than Salesforce's, and the AGPL license means if you build proprietary features on top of the server code, you would need to open-source them or run the cloud version instead. For most teams evaluating a Salesforce or HubSpot replacement, none of those caveats are disqualifying.
The cost case for a 20-person team is clear: $0/month self-hosted, or $180/month on Twenty Cloud, versus $3,500/month on Salesforce Unlimited. That math does most of the work.