Free No per-seatNotion-style UIGraphQL API

Twenty CRM

A CRM that looks like a 2025 product, not a 2008 enterprise tool. Open source, self-hosted, no per-seat pricing.

45 min setup ◆◆◇ Some copy-pasting Reversible

What it does

Track companies, contacts, and deals in a customizable interface. Build your own pipeline views, automate workflows, and connect it to anything via GraphQL. No 'contact us for pricing' wall.

Why we like it

HubSpot's free CRM limits you to 1,000 contacts and locks features behind a $90/month seat. Twenty gives you unlimited contacts, full API access, and a UI that doesn't make you sad. The trade-off: you manage your own database backups.

What it replaces

HubSpot, Pipedrive, Close, Salesforce Starter

Setup guide

Here's the setup, step by step. Track companies, contacts, and deals in a customizable interface. Build your own pipeline views, automate workflows, and connect it to anything via GraphQL. No 'contact us for pricing' wall.

Steps

  1. Install Docker and Docker Compose
  2. Clone the Twenty repository
  3. Copy .env.example to .env and configure your domain
  4. Run docker-compose up -d
  5. Visit your domain and create your admin account

The code

This is the actual configuration you'll use. Lines you need to edit are highlighted.

What this doesThe key environment variables. Clone the repo for the full compose file.
.env
CORE_URL=https://crm.yourdomain.com  ← your domainPORT=3000PG_DATABASE_URL=postgres://twenty:pass@db:5432/twenty  ← set a passwordREDIS_URL=redis://redis:6379IS_BEHIND_FIREWALL=true
⚠ Before you run thisBeing AGPL-3.0, any modifications you ship externally must be open-sourced. Most self-hosters are unaffected.

Resource cost

Needs a $12/month VPS (2GB RAM). Runs Postgres + Redis + the app.

Next

More tools like this