A 1GB VPS comfortably runs a static site, a single small Node or Python application, or a lightweight WordPress install with a lean plugin set and an object cache, one of those, not several at once. It does not comfortably run a database, an application, and an automation tool like n8n on the same 1GB, despite what a few sales pages imply about handling database structures and web applications on the smallest plan. The operating system alone takes 100-200MB before anything you deployed starts, and swap can absorb a burst but will not turn 1GB into 2GB of sustained capacity, it just slows the disk down and delays the crash.
The search results here are mostly sales pages for a provider’s own 1GB plan, each listing generic use cases, web applications, database structures, development and testing, without saying what happens when more than one of those runs at once, alongside a Reddit thread and a Quora answer giving conflicting gut-feel opinions. This post gives an actual memory budget: what the OS takes before anything else starts, what a database, a small app, and a workflow tool like n8n each really cost in RAM, which single workloads 1GB handles comfortably, and where swap helps versus where it just delays a crash. See also the criteria that matter more than any VPS ranking list if the plan itself, not just the RAM, is still an open question.
Table of contents
- What actually fits: a realistic memory budget
- One process family, not three
- Static sites: the one workload 1GB handles without a second thought
- A small Node or Python app: what small means in RAM
- WordPress on 1GB: the caveats that matter
- Swap: what it buys you, and what it doesn’t
- How this fits the rest of the stack
- FAQ
What actually fits: a realistic memory budget
Start from what the operating system takes before anything you deployed even runs, because every 1GB is enough claim online skips this line item.
- Base OS and system services (systemd, sshd, cron, journald): roughly 150-250MB on a minimal Ubuntu or Debian install, before a single application process starts.
- A database, tuned down: MySQL or Postgres with a conservative configuration still wants 200-400MB to run without constant swapping, more once real data and connections arrive.
- A small Node or Python app: 60-150MB idle, growing with concurrent requests and whatever the app holds in memory, an image processing step or a large in-memory cache pushes this up fast.
- An automation tool like n8n, itself a Node process: often several hundred MB once real workflows are running, not the 60MB an idle hello world Node app might suggest.
Add those up and the arithmetic explains why 1GB runs a database, an app, and an automation tool does not hold: the OS alone plus any two of the three already crowds a gigabyte, before counting the buffer needed for a traffic spike or a slow query holding a connection open.
One process family, not three
The sales pages selling 1GB VPS plans are not wrong that 1GB can run a database, or a web application, or a document store, they are just describing three different possible uses of the same plan, not three things running together. Stacking a database, an application, and a workflow tool onto one 1GB VPS is the scenario the RAM budget above cannot support, and the failure mode is not a clean error message, it is the Linux out-of-memory killer picking a process to terminate when memory runs out, often the database, mid-write, with no warning beforehand.
The fix is not a smarter configuration of all three; it is running one process family per 1GB of RAM and giving the others their own resources, either a separate small VPS each or a single VPS with enough RAM to hold all of them comfortably.
Static sites: the one workload 1GB handles without a second thought
A static site, plain HTML, CSS, and JS served by nginx or Caddy with no application process behind it, is the workload that makes 1GB is plenty actually true without caveats. There is no database competing for memory, no application runtime holding request state, just a web server serving files from disk, which uses a small, predictable, and mostly flat amount of RAM regardless of traffic volume within reason. This is the case where the 1GB VPS sales pages are describing something real: for a static site alone, 1GB is comfortable headroom, not a tight budget.
The moment that site grows a contact form that needs to store submissions, or a search feature backed by an index that lives in memory, it has stopped being purely static, and the memory math from the sections above starts applying again.
A small Node or Python app: what small means in RAM
A minimal Node HTTP server idles around 60-80MB, and a minimal Flask or FastAPI process is similar, both numbers that look tiny until real traffic and real dependencies enter the picture. Every loaded npm package or Python library adds to the baseline, an image-processing library or a machine-learning dependency can add tens or hundreds of megabytes on its own, before the app has served a single request.
node --max-old-space-size=384 server.js # cap Node's heap explicitly
pm2 start server.js --max-memory-restart 400M
Setting an explicit memory ceiling, with a flag like Node’s max-old-space-size or a process manager’s restart-on-memory-limit option, turns an eventual OOM kill into a controlled, logged restart instead. On a 1GB VPS that is not a nice-to-have, it is the difference between a process that restarts cleanly under memory pressure and one that takes the whole droplet down with it.
WordPress on 1GB: the caveats that matter
WordPress runs on a 1GB VPS, but only with real caveats that most is 1GB enough for WordPress answers skip past: pm.max_children in PHP-FPM needs to be set conservatively, often three to five workers rather than a distro default that assumes more RAM, a lightweight theme and a small plugin count matter more here than on a bigger box, and an object cache stops being optional once the database is sharing the same 1GB as PHP itself.
WooCommerce, a membership plugin, or anything that maintains real per-user session state pushes past what 1GB comfortably supports, not because WordPress itself is heavy, but because the database queries those features generate compete directly with PHP-FPM for the same limited RAM. See how much RAM a server actually needs for the broader sizing question this post answers specifically for the 1GB tier.
Swap: what it buys you, and what it doesn’t
Swap gives the kernel somewhere to put memory pages that have not been touched recently, freeing physical RAM for what is actually active right now, and it is worth adding on a 1GB VPS specifically as headroom against an occasional spike, not as a substitute for more RAM.
sudo fallocate -l 1G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
What swap does not do is turn 1GB into 2GB of sustained capacity. Disk, even fast SSD-backed disk, is orders of magnitude slower than RAM, so a workload that is genuinely swapping under normal load, not just during a brief spike, is a workload that has outgrown the plan, and swap is only delaying the point where that becomes obvious, at the cost of a much slower server in the meantime. We have covered the six things to check on a cloud out-of-memory error, and an undersized VPS with no swap configured is the first one on that list.
How this fits the rest of the stack
None of this is a case against 1GB, it is a case against asking 1GB to do the job of 3GB. A single static site, a single small service, or a lean WordPress install all fit comfortably, and paying for more than that workload needs is its own kind of waste. When the workload grows past one thing, a database next to the app, or an automation tool running real workflows, the honest fix is more RAM, not more swap. RunxBuild’s BasicMini plan (1 vCPU, 1GB RAM, $13/month) matches the budget this post just walked through, and BasicPlus (1 vCPU, 2GB, $20/month) is the next step up once a second process wants to run alongside the first. The RunxBuild hosting calculator prices both against the actual services you plan to run.
Useful related references:
- 8GB or 16GB RAM: How Much Does Your Server Actually Need?
- Best VPS Company: The Criteria That Matter More Than Any Ranking List
- Cloud Out of Memory Error: The Six Things to Check
- Services on RunxBuild
FAQ
Is 1GB RAM enough for a VPS?
For one workload at a time, usually yes: a static site, a single small Node or Python app, or a lean WordPress install all fit. It is not enough for a database, an application, and an automation tool running together, since the operating system alone takes 150-250MB before any of them start, and each of the three wants at least 100-400MB on its own.
Can I run WordPress on a 1GB VPS?
Yes, with caveats: a conservative PHP-FPM pm.max_children setting, a lightweight theme, a small plugin count, and an object cache once the database is sharing the same 1GB as PHP. WooCommerce or a membership plugin with real per-user session state usually pushes past what 1GB comfortably handles, and swap becomes worth adding as headroom against the occasional spike rather than an everyday crutch.
Does adding swap make a 1GB VPS behave like 2GB?
No. Swap gives the kernel somewhere to offload inactive memory pages, which helps absorb a brief spike, but disk is far slower than RAM, so a workload that swaps under normal, sustained load is a workload that has outgrown the plan. Swap delays the point where that becomes obvious; it does not add real capacity.
How much RAM does a small Node.js app need?
A minimal Node HTTP server idles around 60-80MB, but every dependency adds to that baseline, and real traffic adds more on top through concurrent request handling. Setting an explicit memory ceiling, with max-old-space-size or a process manager’s memory-restart option, turns an eventual out-of-memory crash into a controlled, logged restart instead.
Can I run a database and an app on the same 1GB VPS?
It is tight but possible for very light load, a small database with few connections and an app with minimal traffic. Add a third process, like an automation tool, and the arithmetic stops working: the OS plus a database plus an app plus n8n regularly exceeds 1GB, and the out-of-memory killer starts terminating processes without warning.