Skip to content

How big a VPS do I need?

Resource footprint of every pre-configured app, so you can pick a VPS tier that matches what you plan to deploy.

Last measured: 2026-04-29 Measured on: dev1 (1 vCPU / 2 GB OVH VPS)

TemplateRAM (idle)RAM (peak)CPU (idle)CPU (peak)Disk (baseline)
Nextcloud420 MB880 MB2%65%320 MB
Rocket.Chat520 MB720 MB3%35%180 MB
OnlyOffice380 MB620 MB1%80%90 MB
Outline280 MB420 MB1%25%110 MB
EspoCRM240 MB480 MB1%40%200 MB
Twenty580 MB920 MB4%55%220 MB
Plane720 MB1040 MB4%50%380 MB
WordPress320 MB600 MB1%70%180 MB
n8n280 MB700 MB2%80%150 MB
ERPNext2100 MB2900 MB8%90%850 MB
Actual Budget80 MB180 MB1%15%30 MB
Postiz480 MB680 MB2%35%200 MB
DocuSeal320 MB540 MB1%35%140 MB
Mautic1500 MB3000 MB3%75%420 MB
Collabora Online (CODE)n/a1024 MBn/an/an/a
Element / Matrixn/a1536 MBn/an/an/a
Zammadn/a1536 MBn/an/an/a
Chatwootn/a768 MBn/an/an/a
Easy!Appointmentsn/a384 MBn/an/an/a

CPU is normalized to one core: 100% means one full vCPU is busy. Peak values are what we observed while exercising the app the way the setup steps describe (the first mass-upload to Nextcloud, the first wizard pass on ERPNext, etc.).

These are starting points; your real numbers depend on how many users log in and how heavy the workload is.

  • 6 GB VPS (starting tier): comfortable for the productivity bundle (Nextcloud + EspoCRM + Rocket.Chat + Outline) plus one mid-weight template (Plane, Twenty, Postiz, Outline). Don’t run ERPNext on this tier.
  • 8 GB VPS: required for ERPNext beside one other meaningful template, or for any combination that adds a second mid-weight template to the productivity bundle.
  • 12 GB+ VPS: ERPNext alongside the full productivity bundle, or any combination of two heavy templates.

The app + db + redis + cron stack idles at ~420 MB. Heaviest single service is app (PHP-FPM) at ~280 MB idle, ~600 MB during the first user’s mass-upload pass. With S3 primary storage configured, disk on the VPS stays roughly constant — bucket grows instead.

MongoDB replica set + Rocket.Chat node process. MongoDB’s WiredTiger cache is the dominant cost; default settings fit comfortably on the 6 GB starting tier.

Idle is light; a single editing session spawns per-document worker processes. Three concurrent editors push CPU to 80% on a single vCPU. Pair with Nextcloud (it’s a backend, no direct UI).

Node app + Postgres + Redis. Lightweight in steady state; the collaborative-editor websocket layer adds ~50 MB per simultaneous editor.

PHP-Apache + MariaDB + cron sidecar. Lightweight day-to-day; mass email or bulk import pushes peak RAM to ~480 MB and CPU to ~40% on one vCPU.

Server + worker + Postgres + Redis — four containers; idle RAM is higher than EspoCRM. Choose Twenty for the modern UI; choose EspoCRM for tighter footprint.

Multi-container stack (api + worker + beat + frontend + space + MinIO + Postgres + Redis). Heavy idle RAM; budget 1 GB headroom over the rest of your suite.

nginx + php-fpm + MariaDB + Redis. FastCGI cache absorbs anonymous traffic; PHP only fires on cache misses + admin sessions. A burst of editor logins or a plugin install spikes CPU.

Lightweight at rest; a workflow run spawns Node child processes per node and can spike RAM/CPU sharply. Heavy automation users should size for the peak, not the idle.

~10 containers. Heaviest template in the catalog. Plan for a dedicated 8 GB+ VPS; co-locating ERPNext with the full productivity bundle wants a 12 GB tier.

Single Node container, sqlite-backed. Negligible footprint; effectively free to add.

Postiz + Postgres + Redis. Mid-weight; image-heavy posts push the Sharp library hard during scheduling.

Rails + Postgres. Light at idle; signing flow’s PDF cert-stamping is the peak workload.

Three Apache/PHP containers (web + worker + cron) on top of MariaDB. Idle RAM is dominated by the worker and cron sidecars (~300 MB each, even at rest). Campaign sends and segment rebuilds push peak RAM near 3 GB and CPU above 75% on one vCPU. Plan for a 6 GB tier if Mautic is co-located with Nextcloud + Rocket.Chat; otherwise a 4 GB tier holds for low-volume sending.

Stateless document editor backed by Nextcloud. Sizing is dominated by per-document worker processes spawned during active editing; idle footprint is small. The peak figure above is a conservative pre-launch estimate, not yet a measured value.

Element (Synapse + Postgres + Redis) is memory-hungry during the first federation sync; the value above is a launch-day floor. Conservative pre-launch estimate, not yet a measured value.

Zammad (Rails + Postgres + Elasticsearch + Redis) sizes around the Elastic JVM heap; budget room for it. Conservative pre-launch estimate, not yet a measured value.

Chatwoot (Rails + Postgres + Redis + Sidekiq); peak grows with active conversation count. Conservative pre-launch estimate, not yet a measured value.

PHP-Apache + MariaDB; lightweight footprint dominated by the database. Conservative pre-launch estimate, not yet a measured value.


If you need a different tier than what your operator initially provisioned, contact them — a tier change is a one-command migration to a fresh VPS with the same data.