Odoo
ERP with CRM and inventory
CRM / WorkspaceFree
Odoo and Twenty on your own server: deals, inventory and invoices, with customer data staying with you
Six steps from small to large, with resources and price matched to the job.
$3.29/mo
$0.12 for 24 hours
$4.48/mo
$0.16 for 24 hours
$2.99/mo
$0.11 for 24 hours
$3.89/mo
$0.14 for 24 hours
$5.16/mo
$0.18 for 24 hours
$6.50/mo
$0.23 for 24 hours
$4.63/mo
$0.17 for 24 hours
$5.83/mo
$0.21 for 24 hours
$8.35/mo
$0.30 for 24 hours
$11.39/mo
$0.41 for 24 hours
$7.59/mo
$0.27 for 24 hours
$9.87/mo
$0.35 for 24 hours
Sales, inventory, purchasing and a website for a growing team
Why these resources$13.15/mo
$0.47 for 24 hours
$17.94/mo
$0.64 for 24 hours
$11.96/mo
$0.43 for 24 hours
$15.54/mo
$0.56 for 24 hours
$20.90/mo
$0.75 for 24 hours
$28.50/mo
$1.02 for 24 hours
$19.00/mo
$0.68 for 24 hours
$24.70/mo
$0.88 for 24 hours
$36.44/mo
$1.30 for 24 hours
$49.70/mo
$1.78 for 24 hours
$33.13/mo
$1.18 for 24 hours
$43.07/mo
$1.54 for 24 hours
Need a different size? Build a configuration or pick a ready-made plan.
Minimums come from the apps' official requirements; our estimates are marked.
Twenty requires at least 2 GB of memory: processes may crash when memory runs short.
Odoo advises workers = 2 × CPU + 1: on 2 cores that's 5 workers, about 1.6 GB by the formula from the docs. Plus PostgreSQL and the OS.
The same 5 workers, plus spare memory for the PostgreSQL cache and disk for attachments: product photos and documents.
On 4 cores Odoo advises 9 workers, about 3 GB; that's the example from the docs. PostgreSQL takes about 2 GB more, the rest is the OS and cache.
On 6 cores, 13 workers: about 4 GB by the same Odoo formula. PostgreSQL takes about 4 GB more.
On 12 cores, 25 workers: about 8 GB by the Odoo formula; the rest of the memory goes to PostgreSQL and cache. This matches a ready plan exactly, so that plan is what gets ordered.
Tick the ones you need when ordering, and they are installed together with the server.
root@vps:~# command -v docker >/dev/null || curl -fsSL https://get.docker.com | sh; P=$(openssl rand -hex 16); docker network create odoo && docker run -d --name odoo-db --network odoo --restart unless-stopped -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=$P -e POSTGRES_DB=postgres -v odoo-db:/var/lib/postgresql/data postgres:17 && docker run -d --name odoo --network odoo --restart unless-stopped -p 8069:8069 -e HOST=odoo-db -e USER=odoo -e PASSWORD=$P -v odoo-data:/var/lib/odoo odoo:20
✓ Odoo 20.0 installed · about 3 minutes
root@vps:~#
ERP with CRM and inventory
CRM / WorkspaceFree
Open-source CRM
CRM / WorkspaceFree
Relational database
DatabasesFree
Web server with auto HTTPS
Dev / ToolsFree
The price of the “Odoo with inventory” step in each data center.
| Location | Per month |
|---|---|
| NetherlandsAmsterdam | $8.35 |
| GermanyFrankfurt | $11.39 |
| PolandWarsaw | $7.59 |
| EstoniaTallinn | $9.87 |
Check the latency to each data center before you order: Looking Glass · Speedtest
Filled is what the job uses, empty is overpayment. Prices in the Netherlands, per month.
Needs: 1 vCPU · 2 GB · 20 GB
Ready-made plan NL-R9-2: 1 vCPU · 3 GB · 30 GB
$3.29/mo
instead of $3.49 for the ready-made plan
6% cheaperNeeds: 2 vCPU · 4 GB · 50 GB
Ready-made plan NL-R9-5: 4 vCPU · 4 GB · 100 GB
$8.35/mo
instead of $11.22 for the ready-made plan
26% cheaperNeeds: 4 vCPU · 8 GB · 80 GB
Ready-made plan NL-R9-6: 4 vCPU · 8 GB · 150 GB
$13.15/mo
instead of $14.63 for the ready-made plan
10% cheaperNo answer here? Message @ExpressHost_SupportBot.
The Odoo docs count it this way: workers = 2 × CPU + 1, and one worker serves about 6 concurrent users. On the “Odoo for a small team” plan (2 vCPU, 3 GB RAM, 30 GB NVMe) that's 5 workers, on the “Odoo with several modules” plan (4 vCPU, 8 GB RAM, 80 GB NVMe) it's 9.
Twenty is a CRM: contacts, companies and deals, officially from 2 GB of memory, which is the “CRM for a freelancer” plan for $3.29 a month. Odoo is a modular ERP: CRM, sales, inventory, invoicing; its memory grows with the number of workers.
You pay for server resources, not per user seat: 2 vCPU, 4 GB RAM, 50 GB NVMe costs $8.35 a month. The data lives on your server, and you set up updates and backups yourself.
The server gets a *.expresshost.cloud domain right away; your own domain is connected in the bot, under “DNS / Domains”. A Let's Encrypt certificate is issued by Caddy from the library.
Yes, with the “Plan” button in the server panel in the bot: the new plan applies right away, and the server reboots. You pay the price difference for the rest of the term.
CRM and ERP on Ryzen and NVMe — in 4 steps.