For an initial Odoo 19 production estimate, the planning ranges below start at 4 CPU cores and 8 GB RAM for a small team, and 6–8 cores with 16–32 GB RAM for a team of up to 50. These are ERPixel planning ranges, not official capacity guarantees. Size the system for concurrent activity, installed apps, reports, imports, integrations and data growth.
Start with the hardware table, then check workers, storage and recovery requirements. A registered user count is not the number of people sending requests at the same time. A test installation and a business-critical production system also have different needs.
Updated Odoo Server Hardware Requirements
Odoo 19 system requirements: the official source-install documentation specifies Python 3.10 or later and PostgreSQL 13 or later. These are compatibility minimums, not recommended production versions. PostgreSQL 13 reached end of support in November 2025; choose a maintained PostgreSQL version and validate the complete stack with your modules. PostgreSQL 15 remains supported in 2026. The official Odoo 19 Debian package targets Ubuntu 24.04 LTS; source installations require their own dependency checks. PDF reports with headers and footers require the documented wkhtmltopdf 0.12.6 package.
Enterprise uses the Community server with additional Enterprise add-ons. Size the server for the apps and workload you actually run; the edition name alone does not determine CPU or RAM. Sources: Odoo 19 source installation, packaged installation, and PostgreSQL version support.
Recommended planning ranges: the user bands below refer to team size, not simultaneous requests. They assume routine business activity; imports, manufacturing calculations, large reports, ecommerce traffic, and integrations can change the requirements substantially. For a single server, RAM must cover Odoo, PostgreSQL, and the operating system. For separate servers, size each role independently.
| Criteria | Up to 10 Users | Up to 50 Users | More than 50 Users |
|---|---|---|---|
| CPU | 4 cores | 6–8 cores | 8–16 cores |
| RAM | 8 GB | 16–32 GB | 32–64 GB |
| Storage (SSD) | 50 GB | 100–160 GB | 200+ GB |
| Database | PostgreSQL 15+ | PostgreSQL 15+ | PostgreSQL 15+ |
| Operating System | Ubuntu 24.04 LTS | Ubuntu 24.04 LTS | Ubuntu 24.04 LTS |
| Notes | Use SSD, regular backups, performance monitoring | Consider separate app and DB servers if measurements justify it | Assess workload, availability targets, and scaling needs |
✅ Tip: Treat 20% spare storage as an initial buffer, not a complete capacity plan. Budget separately for PostgreSQL, the filestore (attachments and documents), logs, temporary files, retained backups, and staging copies. Adjust headroom to measured growth and retention requirements.
✅ Tip: Monitor continuously with alerts and review capacity regularly. Investigate sustained memory pressure, swap activity, worker restarts, slow requests, and disk latency before deciding which resource to upgrade; RAM utilization alone is not enough.
Odoo Workers and Concurrent Users
Count concurrent activity separately from licensed or registered users. Odoo 19 documents approximately six concurrent users per worker and a CPU-based rule of thumb of (CPU × 2) + 1 workers. These are initial estimates, not performance guarantees. Cron jobs also need CPU; reports, imports, and custom code can consume much more memory than light interactive requests.
Use the production multiprocessing mode on Linux with worker and memory limits suited to the workload. Budget PostgreSQL and operating-system memory separately from Odoo worker memory. Load-test representative workflows and monitor the result before increasing worker counts. See Odoo 19 production configuration.
Choosing the Right Deployment: Odoo Online, Odoo.sh, or On-Premises
Choose deployment from the required modules, integrations and operating responsibilities. Odoo Online fits supported hosted functionality and configuration; Odoo.sh supports a managed development workflow with custom modules; self-hosting gives your team or provider responsibility for the server and more control over its stack. Company size alone does not determine the choice.
Our Odoo Online, Odoo.sh and self-hosted comparison covers the differences. The sizing guidance here concerns infrastructure you or your provider operate, rather than a claim that a particular employee count requires a dedicated server.
Professional Odoo Hosting Benefits
The ERPixel.sh hosting plans and calculator separate base hosting from selected services. The estimate below should be read with these distinctions:
| Item | How it is treated |
|---|---|
| Server model | Odoo Enterprise uses the Dedicated option; Odoo Community uses the Shared option in the calculator. Enterprise licence fees are separate. |
| Basic monitoring | Basic infrastructure and availability monitoring is included in base hosting. |
| Managed backups | Select No managed backups, Daily backups, or Daily + Weekly backups. Do not assume daily backups are included when no managed backup plan is selected. Data size affects the selected backup cost. |
| Additional environments | Staging and test environments are optional additions to production. |
| Setup and domain services | Self setup or paid ERPixel setup; domain/SSL setup is a separate option and email setup is quoted separately. |
| Administrative access | Agree the access required for the selected environment. A shared hosting option is not a promise of full root access to a dedicated server. |
| High availability and upgrades | The calculator does not specify an HA architecture or guarantee upgrades without downtime. Agree resilience, maintenance windows and recovery targets for the project. |
Use the calculator for the selected configuration and customer country; prices exclude VAT. Confirm operating responsibilities and delivery dates in the proposal. For application support beyond the hosting scope, see Odoo support services.
