What is a self-hosted CRM?
A self-hosted CRM is customer relationship software that runs on a server you control instead of the vendor’s cloud. Most self-hosted CRMs are open source: the code is public, free to use, and you pay only for hosting and upkeep.
Decide
Run the cost comparison and name a maintenance owner
Set up
Server, domain, daily backups, one restore test
Move
Export, import, compare record counts
Switch
Point forms and ad leads to the new CRM
The software takes a day; the process takes a month.
Why founders self-host
- No per-seat fee. Adding a teammate does not add a CRM subscription.
- Data ownership. You have direct database access and full exports, with no vendor lock-in.
- AI access on your terms. Your agents can read and write through your own API or MCP server.
- Customization. Custom objects and fields without upgrading a plan.
Who should not self-host
Self-hosting is not for everyone. Stay with a hosted CRM if:
- Nobody on your team is comfortable with servers, and you have no partner to run it.
- You need marketing email, landing pages and a CRM in one tool today.
- You will stay at one or two users for the foreseeable future.
- You can’t name the person responsible for backups.
There is no shame in renting. But if you rent, choose a vendor with a clean export, so you can move later.
The real cost
Self-hosting is not free. It moves the cost from a subscription to hosting and time.
| Cost line | What it covers |
|---|---|
| Hosting | A small VPS or a platform like Railway; many teams start on a low-cost server (check current provider prices) |
| Backups | Daily database backups stored somewhere else |
| Updates | New versions and security patches |
| Monitoring | Knowing when it is down before your team does |
| Your time | Or the time of whoever maintains it |
At one or two users, a hosted CRM is often simpler. But at five or more, or when you want AI agents working across your data, the math and the control start to favor self-hosting.
How to compare the two, with your own numbers
Use this simple formula. Fill in current prices from vendor pages and your hosting provider.
| Cost item | Hosted CRM | Self-hosted CRM |
|---|---|---|
| Software | Price per user × users | $0 (open-source core) |
| Add-ons | Automation, calling, extra objects | Usually included in the core; check each CRM’s docs |
| Hosting | Included | Monthly server cost |
| Backups | Included | Backup storage cost |
| Maintenance | Included | Hours per month × hourly cost |
| Total at 1, 5 and 10 users | Grows with users | Mostly flat |
Run the table for one, five and ten users. The point where the lines cross is your answer.
Six open-source CRMs compared
| CRM | License | Best for | Watch out for |
|---|---|---|---|
| Twenty | AGPL-3.0 | Modern UI, startups, API and AI access | Younger product; fewer built-in marketing tools |
| EspoCRM | AGPL-3.0 | Mature features with no-code customization | Older-feeling interface |
| SuiteCRM | AGPL-3.0 | Salesforce-style depth | Heavy to run and customize |
| Krayin | MIT | Laravel/PHP teams | Smaller community |
| Odoo CRM | LGPL (community) | Teams that also want ERP | Many modules to manage |
| Corteza | Apache 2.0 | Low-code platform with a CRM app | More platform than CRM |
Licenses from vendor sites and Techsy’s comparison; check before you commit, especially if you plan to resell.
How to choose between them
- You want the most modern interface and plan to connect AI agents: Twenty.
- You want a mature product with lots of no-code settings: EspoCRM.
- You are replacing a Salesforce-style setup: SuiteCRM.
- Your team writes PHP and Laravel: Krayin.
- You also need inventory, invoicing or HR: Odoo.
- You want to build custom business apps around the CRM: Corteza.
Whichever you pick, install it on a test server first. Import 50 real contacts and run your pipeline for a week before you commit.
Setting it up with Docker, in brief
Most of these CRMs ship a Docker setup. You will need a server with enough memory, a domain, a database (usually Postgres or MySQL) and, for Twenty, Redis. Follow the official docs for your chosen CRM rather than a copied guide; setups change between versions.
Your first week running a self-hosted CRM
- Install on a server with a domain and HTTPS.
- Set up automatic daily database backups to separate storage.
- Restore one backup to a test server. A backup you never restored is a hope, not a backup.
- Create user accounts with the right permissions; no shared admin login.
- Connect your website form so new inquiries arrive automatically.
- Set up uptime monitoring that alerts you by email or phone.
- Write down who updates the software, and how often.
Backups that actually work
Three rules cover most of it. Keep backups somewhere other than the CRM server. Keep more than one day of history. Test a restore every few months. But most teams skip the third rule. So put the restore test on the calendar, like any other recurring task.
Mistakes that kill self-hosted CRMs
- No backups. The day the server fails is the day you learn this.
- No owner. If nobody is responsible for updates, nobody does them.
- No connections. A CRM that does not receive web forms, ad leads and calls becomes a second spreadsheet.
- No process. Stages, owners and follow-up rules matter more than the software.
Moving from a hosted CRM
- Export everything. Contacts, companies, deals, notes and activities, as CSV or through the API.
- Map the fields. Decide where each old field lands in the new CRM. Drop fields nobody uses.
- Import into a test copy. Check record counts and a sample of records by hand.
- Run both for a short period. New inquiries go to the new CRM; the old one is read-only.
- Switch the integrations. Forms, ad-platform leads, calendar and email.
- Close the old account only after a full week with nothing missing.
Workflows and email sequences don’t move. Rebuild only the ones you actually used.
Self-hosted, but implemented
Stretch Tent, a tent business in Southern California operated by Yaro Korets, runs self-hosted Twenty in production. Website inquiries, Meta lead forms, calls and quotes all land in one record. One person handles 20+ leads a day there, including individually prepared quotes (first-party, October 2026).
The software was the easy part. The work was in the adapters, backups and the process around it. That is what Growth Control implements for founders: a self-hosted Twenty core, connected to your ads, forms, phone and payments, with the maintenance agreed before launch.
Scenario: a three-person team moves to self-hosted
This example is illustrative. It shows how the decision and the move usually play out.
A founder has hired two people. The hosted CRM bill now grows with each seat, and the team wants an AI agent to read and write deals. Their API access sits on a higher plan.
Week 1: decide. They run the cost comparison from this guide for three users today and six next year. The numbers lean toward self-hosting, but only if someone owns maintenance. So they name an owner before choosing software.
Week 2: set up. They deploy the CRM on a small server, add a domain, and set daily backups to a separate storage service. They restore one backup to a test copy to prove it works.
Week 3: move. They export contacts, companies, deals and notes from the old CRM. They import into the new one and compare record counts. Both systems run side by side for a week.
Week 4: switch. Website forms and ad-platform leads now point to the new CRM. The agent connects through the API with read-only access first. The old subscription is cancelled only after the counts match and the team has worked a full week in the new system.
The software took a day. The process took a month. That is normal, and planning for it is what makes the move stick.
Glossary for self-hosting
| Term | Plain meaning |
|---|---|
| VPS | A rented virtual server you control |
| Docker | A way to package and run software the same way on any server |
| Postgres | A popular open-source database many CRMs use |
| AGPL-3.0 | An open-source license; changes you offer as a service may need to be shared |
| Backup | A copy of your data stored somewhere else |
| Restore test | Actually loading a backup to prove it works |
| Uptime monitoring | A service that alerts you when the CRM is down |
| Reverse proxy | Software that handles your domain and HTTPS in front of the CRM |
What to do this week
- Write down your user count today and in 12 months.
- Run the cost comparison with real hosting and vendor prices.
- Name the person who will own updates and backups.
- Shortlist two open-source CRMs from the table above and try their demos.
- If you go ahead, plan the move as four weeks: decide, set up, move, switch.
- Schedule your first restore test before you import a single customer.
Questions and answers
Can I build my own CRM for free?
You can run an open-source CRM for free, apart from hosting. Building one from scratch is possible but rarely worth it.
Can ChatGPT create a CRM for me?
It can help you build a simple app. But you would still own backups, security and integrations.
Is Twenty a good CRM?
For startups that want a modern UI, an API and data ownership, yes. It is younger than Salesforce or HubSpot, so check the features you need.
What does self-hosting cost per month?
Hosting is usually the smallest part. Budget for backups and someone’s time for updates.
Is a self-hosted CRM more secure?
It can be, because you control access and where the data lives. But it is only as secure as your updates, backups and passwords. A neglected server is less secure than a well-run cloud service.
What happens if the server goes down?
Your team can’t reach the CRM until it is back. Uptime monitoring, backups and a written recovery step keep that window short.
Can I move to a cloud plan later?
With open-source CRMs that also offer cloud hosting, often yes. Check the vendor’s current migration options before you commit.
Sources and further reading
Put the process into practice
Growth Control implements the tools, workflow and team handoff around an agreed business result.
Explore six tools. One customer record.