The software is free. The $5 server mostly isn't, and your time definitely isn't. We priced four open-source CRMs over three years at 5 and 20 seats, against the hosted plans you'd buy instead.
A self-hosted CRM has no seat price, and that's the whole pitch. What you pay instead is a server, backups, and somebody's evenings.
We wanted to know what that adds up to. So on 2 October 2026 we read each project's licence, its server requirements and its paid plans, plus the price pages of the hosts you'd rent from. aliteq is a US company, so every figure is in US dollars. Where a vendor only quoted euros or pounds, we converted at the ECB reference rate of 25 Sep 2026 (EUR 1 = USD 1.1403, GBP 1 = USD 1.3252) and say so.
We didn't install or run these CRMs. Everything below comes from the projects' own docs and the providers' own pages. None of them pays us.
If you're still choosing between hosted CRMs, start with our eight-CRM cost comparison. This page is the self-hosted side of that decision.
The four projects at a glance
All four are free to download. They differ in language, database and how much they keep behind a paid tier.
Twenty
Licence
AGPLv3, plus a commercial licence on files marked Enterprise
Stack
Node, PostgreSQL, Redis, Docker
Latest release we saw
v2.44.0, 1 Oct 2026
Paid tier
Organization $19 a seat a month (yearly) for SSO and audit logs
SuiteCRM 8
Licence
AGPLv3
Stack
PHP 8.2 to 8.4, Apache, MariaDB or MySQL
Latest release we saw
v8.10.2, 31 Jul 2026
Paid tier
None for software; paid hosting and support
EspoCRM
Licence
AGPLv3
Stack
PHP 8.3 to 8.5, MySQL, MariaDB or PostgreSQL
Latest release we saw
10.0.9, 29 Sep 2026
Paid tier
Extensions, such as Advanced Pack at €395 a year
Odoo Community
Licence
LGPLv3
Stack
Python, PostgreSQL 13+
Latest release we saw
(repo default branch 20.0)
Paid tier
Odoo Enterprise, priced per user
Licence
Stack
Latest release we saw
Paid tier
Twenty
AGPLv3, plus a commercial licence on files marked Enterprise
Node, PostgreSQL, Redis, Docker
v2.44.0, 1 Oct 2026
Organization $19 a seat a month (yearly) for SSO and audit logs
SuiteCRM 8
AGPLv3
PHP 8.2 to 8.4, Apache, MariaDB or MySQL
v8.10.2, 31 Jul 2026
None for software; paid hosting and support
EspoCRM
AGPLv3
PHP 8.3 to 8.5, MySQL, MariaDB or PostgreSQL
10.0.9, 29 Sep 2026
Extensions, such as Advanced Pack at €395 a year
Odoo Community
LGPLv3
Python, PostgreSQL 13+
(repo default branch 20.0)
Odoo Enterprise, priced per user
Twenty is the newest and the most popular on GitHub, with about 57,800 stars. Odoo is a full business suite where CRM is one app. SuiteCRM descends from SugarCRM's old open-source edition. EspoCRM is a PHP CRM that also offers an official Docker setup.
What the licences mean for a company using one internally
Running an unmodified copy for your own staff carries no licence duty. The AGPL's extra obligation starts when you change the code. This is our summary of the licence text we read, not legal advice.
Twenty, SuiteCRM and EspoCRM ship the GNU Affero General Public License v3. Three passages matter for a company that only uses the CRM itself:
Running is free. Section 2: "You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force."
Staff logging in isn't distribution. The definitions say "Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying."
Modifying the code is the trigger. Section 13: "if you modify the Program, your modified version must prominently offer all users interacting with it remotely through a computer network ... an opportunity to receive the Corresponding Source of your version."
So the conservative reading is this. Run the stock release and you owe nothing. Patch the core code and let your team use the patched copy over the web, and you should be ready to offer those users your modified source. Fields and layouts you build in the admin screens are configuration, not code changes, in our reading. The licence doesn't spell that out.
Twenty adds two twists of its own. Files marked /* @license Enterprise */ fall under "The Twenty.com Commercial License", and that code "may only be used in production" with "a valid Twenty Enterprise Edition subscription". You may still modify it "for development and testing purposes, without requiring a subscription". Twenty also grants an extra permission: an app that talks to Twenty only through its APIs, webhooks or SDKs isn't covered by the AGPL. But "if you modify Twenty, the AGPLv3, including section 13, applies to your modified version in full."
Odoo is different. Its LICENSE file says "Odoo is published under the GNU LESSER GENERAL PUBLIC LICENSE, Version 3 (LGPLv3)". The LGPL has no network clause like the AGPL's section 13, so internal use of a modified Odoo Community doesn't trigger a source offer on that basis. Odoo Enterprise is a separate, licensed product.
None of this is legal advice. If you plan to modify and redistribute any of these, or build a product on top, have a lawyer read the licence with you.
What server each one needs
Only Twenty publishes a RAM minimum: 2GB. SuiteCRM and EspoCRM list software versions but no memory figure. Odoo publishes a sizing formula instead.
What each project's own docs ask for, and what that size of server costs from two hosts. · aliteq research
Twenty. The Docker Compose guide says: "Ensure your environment has at least 2GB of RAM. Insufficient memory can cause processes to crash." The official compose file runs four containers: the server, a background worker, PostgreSQL 16 and Redis. Twenty also says HTTPS "is required for certain browser features to work properly", so budget for a domain and a certificate.
SuiteCRM 8.10. The compatibility matrix lists PHP 8.2, 8.3 or 8.4, Apache 2.4, and MariaDB 10.6 to 11.8 or MySQL 8.0 or 8.4. Node and Angular are listed only for front-end development, "not required for production".
EspoCRM. The server page lists PHP 8.3 to 8.5 and MySQL 8.0+, MariaDB 10.3+ or PostgreSQL 15, on Apache, Nginx or IIS. It says to "Prefer using a VPS or a dedicated server for production" but adds that "Espo can run on shared hosting environments quite smoothly." There's an official Docker setup too.
Odoo 19. The deployment guide gives a rule of thumb: "1 worker ~= 6 concurrent users". It estimates a light worker at about 150MB and a heavy one at about 1GB, with 20% of requests heavy. That works out to roughly 325MB per worker. Two workers, enough for about 12 people clicking at once, need about 650MB before PostgreSQL and the operating system.
For our math we size every project the same way: a 2GB server at 5 seats and a 4GB server at 20. The 2GB floor is Twenty's. The 4GB step is our headroom assumption, and Odoo's formula agrees with it.
Does the $5 server still exist?
Barely. The cheapest box that meets Twenty's 2GB floor in the US costs $12 a month. The famous €5 class is in Europe and showed as unavailable when we checked.
Hetzner's Cost-Optimized CX23 (2 vCPUs, 4GB RAM, 40GB disk) is €5.99 a month. Hetzner lists it at $7.09 in its own US-dollar price; the ECB conversion of €5.99 is $6.83. It runs only in Germany and Finland. On 2 October every row on that page read "This product is currently unavailable. Please check back later." Hetzner's page also warns that "the number of available servers is limited."
In Hetzner's US data centers (Ashburn and Hillsboro), the smallest listed box is CPX11 at $21.09 a month for 2 vCPUs and 2GB. The 4GB CPX21 is $38.09.
DigitalOcean is cheaper in the US and was orderable. Its Basic droplets cost $6 for 1GB, $12 for 2GB and $24 for 4GB of RAM.
DigitalOcean Basic
RAM
1GB
Region
US and others
Per month
$6
Hetzner CX23 (showed unavailable)
RAM
4GB
Region
Germany, Finland
Per month
$7.09 (€5.99)
DigitalOcean Basic
RAM
2GB
Region
US and others
Per month
$12
Hetzner CPX11
RAM
2GB
Region
US
Per month
$21.09
DigitalOcean Basic
RAM
4GB
Region
US and others
Per month
$24
Hetzner CPX21
RAM
4GB
Region
US
Per month
$38.09
RAM
Region
Per month
DigitalOcean Basic
1GB
US and others
$6
Hetzner CX23 (showed unavailable)
4GB
Germany, Finland
$7.09 (€5.99)
DigitalOcean Basic
2GB
US and others
$12
Hetzner CPX11
2GB
US
$21.09
DigitalOcean Basic
4GB
US and others
$24
Hetzner CPX21
4GB
US
$38.09
A $6 droplet with 1GB is below Twenty's stated minimum. A US team that wants its customer data on a US server should budget $12 to $24 a month, not $5.
Backups, updates and your time
The server is the small part of the bill. Our assumption of 2 admin hours a month costs more over three years than any server on this page.
Backups. DigitalOcean charges 30% of the droplet's price for daily backups (seven kept) or 20% for weekly ones. On a $12 droplet, daily backups are $3.60 a month. Twenty's own docs add a nightly database dump and say to "Store backups off-site". A small CRM's dumps fit inside Cloudflare R2's free 10GB, so we count that copy at $0. Why the off-site copy matters is in our guide to backups.
Updates. Each project ships often. Twenty released v2.44.0 on 1 October and EspoCRM 10.0.9 on 29 September. Twenty's upgrade guide starts with "Always back up your database before starting the upgrade process" and has version-specific notes, such as a PostgreSQL 15 minimum from v2.34. SuiteCRM's pricing page puts it plainly for self-hosters: "Your team manages updates and security."
Admin time. Our assumption is 8 hours to set up (server, domain, HTTPS, mail, first backup) and 2 hours a month after that: applying updates, checking that backups ran and testing a restore each quarter. We cost it at $50 an hour, rounded up from the Bureau of Labor Statistics 2025 median pay for systems administrators, $47.66 an hour. That's wages only, with no benefits or overhead.
If you're a founder who already runs servers, your hours may cost less. If nobody on the team has restored a PostgreSQL dump before, budget more.
What each project keeps behind a paid tier
Twenty charges for SSO even when you host it yourself. SuiteCRM and EspoCRM document single sign-on in their free editions. Odoo Community has the CRM app but not Enterprise's upgrades, mobile app or Studio.
Read from each project's pricing page, docs and repository, 27 Sep and 2 Oct 2026. · aliteq research
Twenty. With the self-hosting toggle on, Twenty's pricing page shows Pro at $0 ("Up to 5 workspaces", "Community support"). Organization adds SAML/OIDC SSO, row-level permissions, audit logs and Twenty team support at $19 a seat a month billed yearly, or $25 monthly. That's the same as Twenty's cloud price. Enterprise, "from $50k /year", adds SCIM provisioning, air-gapped deployment and LTS releases.
SuiteCRM. There's no paid software edition. SuiteCRM 8's admin docs include a SAML configuration reference (for 8.7.0 and later) and an LDAP reference. The paid side is services: fully managed hosting "From £50 / month" ($66.26), Standard Support at £1,200 ($1,590.24) for 10 support hours, and SuiteASSURED "From £3,350 / year" ($4,439.42) with warranty and legal indemnities.
EspoCRM. The core supports sign-in through OpenID Connect "As of v7.3", plus LDAP and two-factor login. Reports, workflows and business process management come in the Advanced Pack: €395 ($450.42) for a "1 Year License + Upgrades", "Licensed on a per-instance basis", so the price doesn't grow with seats. The Sales Pack (quotes, invoices, inventory) is €260 ($296.48) on the same terms. EspoCRM's own cloud plans include the Advanced Pack.
Odoo Community. Odoo's editions table marks CRM, Sales, Invoicing, Email Marketing and Website as included in Community. Enterprise-only rows include Version Upgrades, the Android and iOS apps, Studio, Marketing Automation, Helpdesk, VoIP and full Accounting. The Community code ships OAuth2 and LDAP login modules. We found no SAML module in the Community repository. Running Enterprise on your own server needs Odoo's Custom plan: €35.90 a user a month for the first year, then €44.90.
What it costs over three years at 5 and 20 seats
Self-hosting the free edition of any of the four costs about $4,562 over three years at 5 seats and $5,123 at 20, once staff time is counted. Cash alone is $562 and $1,123.
20 seats, 36 months, list prices. Self-hosted rows use our server, backup and admin-hour assumptions. · aliteq research
Here are the assumptions behind the self-hosted rows:
A DigitalOcean US droplet: 2GB at $12 for 5 seats, 4GB at $24 for 20 seats.
Daily backups at 30% of the droplet price, plus an off-site dump copy on R2's free tier.
8 setup hours, then 2 hours a month, at $50 an hour.
SuiteCRM has no licence line; its support hours are optional when you self-host. The Odoo Enterprise row uses the first-year price for year one and the full price after, since Odoo says its discount "is valid for 12 months, for initial users ordered".
Now the hosted plans you'd buy instead. Twenty and Odoo prices come from our CRM comparison; EspoCRM's euros are converted at the ECB rate of 25 Sep 2026.
Odoo Online, One App Free (CRM only)
5 seats
$0
20 seats
$0
Twenty Cloud Pro, $9 a seat yearly
5 seats
$1,620
20 seats
$6,480
Pipedrive Lite, $14 (SAML SSO)
5 seats
$2,520
20 seats
$10,080
EspoCRM Cloud Basic, €12.90
5 seats
$2,647.78
20 seats
$10,591.11
Twenty Cloud Organization, $19 (SSO)
5 seats
$3,420
20 seats
$13,680
EspoCRM Cloud Enterprise, €22
5 seats
$4,515.59
20 seats
$18,062.35
Odoo Standard, €19.90 then €24.90
5 seats
$4,768.73
20 seats
$19,074.94
HubSpot Pro, Front Office seats
5 seats
$20,940
20 seats
$79,260
5 seats
20 seats
Odoo Online, One App Free (CRM only)
$0
$0
Twenty Cloud Pro, $9 a seat yearly
$1,620
$6,480
Pipedrive Lite, $14 (SAML SSO)
$2,520
$10,080
EspoCRM Cloud Basic, €12.90
$2,647.78
$10,591.11
Twenty Cloud Organization, $19 (SSO)
$3,420
$13,680
EspoCRM Cloud Enterprise, €22
$4,515.59
$18,062.35
Odoo Standard, €19.90 then €24.90
$4,768.73
$19,074.94
HubSpot Pro, Front Office seats
$20,940
$79,260
Odoo's free plan is real but narrow: "One App Free… One app, unlimited users", so CRM alone with no invoicing or other apps. SuiteCRM's managed hosting has a worked example on its pricing page of £1,560 a year ($2,067.31), or $6,201.94 over three years, but it's a "from" figure and the page doesn't tie it to a seat count.
Put your own seat count in and compare the hosted CRMs directly:
What your CRM costs, by seat count
Years
Cheapest here
Pipedrive
$5,040 · Lite
Cheapest with SAML listed
Pipedrive
$5,040 · Lite
Priciest here
$70,200
Salesforce · Core
Vendor · plan
Per seat/mo
3-year total
SSO
PipedriveLite · $14/seatSAML SSO on every plan; audit log and sandbox need Ultimate ($79)
$14
$5,040
SAML
TwentyOrganization · $19/seatSAML/OIDC SSO, cloud or self-hosted
$19
$6,840
SAML
Zoho CRMEnterprise · $40/seatSandbox and custom modules; SSO not on the compare page
$40
$14,400
Not listed
FolkPremium · $48/seatPricing page lists Google SSO only
$48
$17,280
Google
AttioPro (SSO needs Enterprise) · $79/seatSSO is on Enterprise, which has no public price
$79
$28,440
Quote
HubSpotPro, Front Office Seat · $108/seatSAML SSO from Professional; 12-month commitment
$108
$38,880+ up to $1,500 onboarding
SAML
CloseScale · $139/seatPricing page lists Google SSO only
$139
$50,040
Google
SalesforceCore · $195/seatAnnual only; SSO tier not on the pricing page
$195
$70,200
Not listed
Enterprise mode uses the cheapest plan whose pricing page lists SAML SSO. Where a vendor doesn't list SAML, it uses the plan an enterprise-selling team would typically need and says so.
List prices in USD from HubSpot (pricing page price data), Salesforce, Pipedrive, Attio, Close, Folk, Zoho and Twenty, all read 27 Sep 2026. Before promotions, startup programmes, negotiation and tax. Onboarding is HubSpot's catalog fee, which its checkout didn't show, so it's “up to”. “Not listed” means the pricing page has no SAML row, not that the vendor can't do it. AI credits past the included allowance aren't counted.
When self-hosting is worth it
At 5 seats, hosted usually wins once your time counts. At 20 seats, self-hosting SuiteCRM or EspoCRM undercuts nearly every per-seat plan, SSO included.
Five people, nobody who likes servers: Twenty Cloud Pro ($1,620 over three years) or Odoo's free one-app plan cost less than our $4,562 self-hosted figure.
You need SSO without a per-seat fee: SuiteCRM documents SAML and EspoCRM documents OpenID Connect in their free editions. Twenty's SSO is $19 a seat whether you host it or not.
Your customer data must stay on a server you control: self-host, and budget $12 to $24 a month for a US box, plus backups and a restore test every quarter.
You plan to change the core code: read the AGPL's section 13 first, or pick Odoo Community (LGPLv3). Admin-screen customization isn't a code change in our reading.
Model three years. The cash is small; the admin hours are most of the bill, and they don't shrink as your team grows.
Yes. Twenty's pricing page, read on 27 September 2026, lists the self-hosted Pro plan at $0 with community support and up to 5 workspaces. SSO, row-level permissions and audit logs need the Organization plan at $19 a seat a month billed yearly, even when you host it yourself.
How much RAM does a self-hosted CRM need?
Twenty's docs ask for at least 2GB. SuiteCRM and EspoCRM publish no RAM figure. Odoo's deployment guide estimates about 150MB for a light worker and 1GB for a heavy one, with one worker per about 6 concurrent users. We sized 2GB for 5 seats and 4GB for 20.
Can a company use an AGPL CRM internally without publishing its code?
The AGPL lets you run an unmodified copy without conditions, and staff using it over a network isn't conveying a copy. Section 13's source offer applies when you modify the program and users interact with your modified version over a network. That's our summary of the licence text, not legal advice.
What does Odoo Community leave out compared with Enterprise?
Odoo's editions table marks CRM, Sales, Invoicing and Email Marketing as included in Community. Version upgrades, functional support, hosting, the mobile apps, Studio, Marketing Automation, Helpdesk, VoIP and full Accounting are Enterprise only.
What does it cost to self-host a CRM for 20 users over three years?
About $1,123 in cash for a 4GB US droplet with daily backups, or $5,123 once you add our assumption of 8 setup hours and 2 admin hours a month at $50 an hour. A licence such as Twenty Organization at $19 a seat adds $13,680.
Where can I get a $5 server for a CRM?
Hetzner's CX23, 4GB for €5.99 ($7.09 in Hetzner's US-dollar price), runs only in Germany and Finland and showed as unavailable on 2 October 2026. In the US, DigitalOcean's 2GB droplet at $12 a month was the cheapest box we found that meets Twenty's 2GB minimum.
Use this in your own page
Teaching this? Paste the live version into your course, blog or answer. Free, no sign-up; the credit line links back here.