Twenty CRM logo

Deploy Twenty CRM

The CRM your team works in

ProductivityWorkTwenty CRM + Worker + PostgreSQL + Valkey + Email

People, companies, opportunities, tasks, and notes in one workspace — on your instance. You pay for compute, not per seat.

Twenty companies list with Google, Microsoft, Meta, and hundreds of other accounts

What you get with Twenty CRM

  • People and companiesKeep people and company records together so the team works from shared customer context.
  • Opportunity trackingTrack opportunities through the sales process, with the company and contact on the same record.
  • Tasks and notesRecord follow-ups and notes next to the CRM records they support.
  • Flexible workspaceConfigure fields and views around how your team works, instead of a fixed spreadsheet.
  • Your own instanceRun Twenty on your instance. Records stay here — not in a shared vendor-managed account.
  • HTTPS web accessOpen Twenty on a public HTTPS hostname. Attach your own domain when you want a branded URL.

After you deploy Twenty CRM

  1. 1Open the public URLThe hostname is on the app page after deploy. First boot runs migrations — that can take up to 15 minutes, not a login form.
  2. 2Create the workspaceEmail, password, and a workspace name. That account owns the instance until you invite others.
  3. 3Use the recordsCompanies, people, deals, tasks, and notes are in the sidebar. Dashboards and workflows are there too.

How Twenty CRM is wired

Twenty, Postgres, and Valkey ship together. The public hostname is the app; the worker runs background jobs.

Postgres holds the records
Companies, people, deals, and notes live in the attached database. Restart the app and the workspace is still there.
Valkey is the cache
The app reads cache from Valkey. It speaks the Redis protocol. You do not add a second cache. Jobs use Postgres (pg-boss), not the cache.
A worker sits beside the web app
Background jobs run on the worker so a heavy run does not stall the UI. Scale the worker when jobs back up.
Add CPU when first boot is slow
Migrations run on first start and need headroom. Raise RAM and CPU on the web app from the dashboard. Postgres and Valkey scale on their own.

Why run Twenty CRM on StackBlaze

  • Scale your appChange CPU, RAM, and replicas without a rebuild, or let autoscaling add replicas when CPU climbs.
  • Git-based CI/CDPush to GitHub and it builds and ships. Pull requests get their own preview URL on Pro and Business.
  • One-click rollbackA deploy went wrong? Go back to any previous successful deploy.
  • Environments built inProduction, staging, and dev as separate environments in one project, each with its own URL.
  • Built-in observabilityCPU, memory, and response time per app, live logs with search, and alerts to Slack, Discord, or a webhook.
  • Developer-first toolsA CLI and Stack MCP: deploy, read logs, and wire services from your terminal or your AI assistant.
  • Built for teamsInvite teammates with roles. An audit log records who changed what.
  • Managed Postgres with HAPostgres is run for you. Turn on high availability for a three-node cluster when the app needs it.

Common questions about Twenty CRM

How do I sign in after deploy?

Open the public URL. First boot can take up to 15 minutes while migrations run. The first person to open it creates the workspace and becomes the admin. If the page stays blank, wait for the web pod to pass its startup probe, then reload.

Where are companies and deals stored?

In the attached Postgres. APP_SECRET is set at deploy. Back up the database if the workspace matters. Valkey is a cache, not a backup target. Uploads live on the shared volume.

What is already in the sidebar?

Companies, people, opportunities, tasks, notes, dashboards, and workflows. The first account is empty until you add records.

Can I use my own domain?

Yes. Attach a custom domain from the dashboard. FRONT_BASE_URL and SERVER_URL follow the public hostname. Custom domains

Do I need Redis?

This template includes it. Valkey speaks Redis protocol and is the cache. You do not add Redis yourself.

Why is first boot so slow?

Twenty runs database migrations in the web and worker on first start. That can take 10–15 minutes at the default size. The startup probe waits up to 25 minutes so the pod is not killed mid-migration.

What does it cost?

You pay for the web app, the worker, Postgres, and Valkey — compute, storage, and bandwidth — not per seat. Developer is $10/mo with $10 of included usage; a small instance usually stays in that range. Pricing

Is this the right setup for a team CRM?

Yes — this is the web-plus-worker stack. The UI stays on the web app; background jobs run on the worker. Scale the worker when jobs back up.

More Productivity templates