- A Telegram bot, a WireGuard VPN or an nginx landing page runs on a VPS with 1 vCPU and 2 GB of RAM: such services use tens to hundreds of megabytes of memory.
- WordPress with MySQL on the same server and a small Docker stack are comfortable on 2 vCPU and 4 GB of RAM; an online store or a stack of 5-10 containers needs 4 vCPU and 8 GB.
- A database needs enough memory to keep its working set in cache: for PostgreSQL or MySQL with tens of gigabytes of data that means 8-16 GB of RAM.
- A memory shortage on Linux shows up as a low available column in
free -h, swap in constant use and Out of memory lines in the kernel log (dmesg,journalctl -k). - Tihost offers nine VPS configurations - from 1 vCPU / 2 GB / 40 GB NVMe at $4.00 to 16 vCPU / 32 GB / 450 GB NVMe per month.
How many resources do typical workloads need?
The figures below are starting points for one project on a Linux server without a desktop. Real needs depend on traffic, code and data size, so start with the suggested configuration and watch the actual load for the first week or two.
| Workload | vCPU | RAM | Disk | Tihost configuration |
|---|---|---|---|---|
| Landing page, static site on nginx | 1 | 1-2 GB | 10-20 GB | 1 vCPU / 2 GB |
| Telegram bot in Python or Node.js | 1 | 0.5-2 GB | 10-20 GB | 1 vCPU / 2 GB |
| VPN (WireGuard, OpenVPN) for a few people | 1 | 0.5-1 GB | 10 GB | 1 vCPU / 2 GB |
| WordPress or a blog with MySQL on the same server | 1-2 | 2-4 GB | 20-40 GB | 2 vCPU / 4 GB |
| Online store (WooCommerce, OpenCart, Magento) | 2-4 | 4-8 GB | 40-80 GB | 4 vCPU / 8 GB |
| Docker stack: app, database, Redis, proxy | 2-4 | 4-8 GB | 40-80 GB | 2 vCPU / 4 GB or 4 vCPU / 8 GB |
| PostgreSQL or MySQL with tens of GB of data | 4-8 | 8-16 GB | Data × 2-3 | 6 vCPU / 12 GB or 8 vCPU / 16 GB |
| Minecraft server (Paper) for 10-20 players | 2-4 | 4-8 GB | 20-40 GB | 4 vCPU / 8 GB |
| CI runner, project builds | 4-8 | 8-12 GB | 80-150 GB | 8 vCPU / 12 GB |
| 7-8B LLM via Ollama on the CPU | 8+ | 16 GB | 30-50 GB | 8 vCPU / 16 GB and up |
How much RAM does a server need?
RAM is the main limit of a VPS: when it runs out, the server does not slow down gracefully, it starts killing processes. Ubuntu or Debian without a desktop takes a few hundred megabytes; the rest goes to your applications. Add up what each service uses and put 25-30% on top for peaks and the file system cache:
- nginx serving static files - tens of megabytes;
- a bot or API in Python / Node.js - usually 100-500 MB per process;
- PHP-FPM for WordPress - 50-100 MB per worker, typically 5-20 workers;
- MySQL or PostgreSQL - as much as you give them for cache (
innodb_buffer_pool_size,shared_buffers); - a Minecraft server - whatever
-Xmxsays, plus 1-2 GB for the JVM itself and the OS.
Swap (paging space on disk) saves you from a sudden crash during a short spike but does not replace memory: if swap is in use all the time, the server needs a plan with more RAM. How to add 2 GB of swap is in the first VPS setup guide.
How many cores (vCPU) do you need?
Most web workloads are fine on 1-2 vCPU: websites and bots spend more time waiting for the network and the database than computing. Cores become the bottleneck for parallel or long-running computation: code builds, video and image compression, game servers, language model inference. A vCPU is a host CPU thread assigned to your virtual machine; at Tihost the hosts run the AMD Ryzen 9 5950X and 9950X, with the high per-core clock that matters for single-threaded work such as Minecraft and PHP.
How much disk space does a VPS need?
A Linux system with updates takes 3-5 GB; everything else is your data, logs and images. Plan 30-50% headroom above your current data and do not run the disk above 80-85% full: databases and Docker stop when space runs out. Three things eat disk space quietly:
- Docker images and logs - cap the logs and prune old images as shown in the Docker article;
- systemd and application logs in
/var/log; - local backups - keep them on another server, see the backup guide.
Disk type matters as much as size: databases and builds run noticeably faster on NVMe than on SATA SSD - the difference is covered in NVMe vs SSD. Every Tihost plan uses NVMe.
How do you tell a VPS is short on resources?
Start with four commands: memory, core count, load average and free disk space.
free -h
nproc
uptime
df -h /free -h- look at the available column, not free: Linux uses idle memory for cache and hands it back on demand. If available is below 10-15% of total and the Swap line keeps growing, memory is short.uptime- three load average values for 1, 5 and 15 minutes. If they stay above the core count fromnprocfor long, the CPU is not keeping up.df -h /- how full the root partition is; above 85% it is time to clean up or grow.
To see which process uses the memory and CPU, open htop: sort by MEM% or CPU% with F6. The st (steal) column in top shows how long the vCPU waited for the host; values constantly above 5-10% are worth raising with your provider's support.
sudo apt install -y htop
htopThe most reliable sign of a memory shortage is the OOM killer: the Linux kernel forcibly terminates a process that ran out of memory and logs it. If the commands below find anything, the service needs more RAM or a cap on its usage:
sudo dmesg -T | grep -i -E "out of memory|oom-kill"
sudo journalctl -k --since "7 days ago" | grep -i "out of memory"When should you move to a bigger plan?
- The OOM killer fired at least once in a week, or swap is used constantly rather than only during peaks.
- Load average stays above the vCPU count at peak hours, and pages or bot replies visibly slow down.
- The disk is more than 80-85% full even after clearing logs and old images.
- A second project with its own database has moved onto the server.
If memory runs out while the CPU is idle, pick a configuration with more RAM and the same cores: for example, from 4 vCPU / 4 GB to 4 vCPU / 8 GB. If you hit the cores, go from 6 vCPU / 12 GB to 8 vCPU / 12 GB. Every line is covered in the Starter, Advanced and Power articles.
Tihost VPS configurations
| Line | Configuration | Germany | Finland | Poland |
|---|---|---|---|---|
| Starter | 1 vCPU·2 GB RAM·40 GB NVMe | $4.00 | $4.00 | $5.00 |
| Starter | 2 vCPU·4 GB RAM·80 GB NVMe | $7.70 | $7.70 | $9.60 |
| Starter | 4 vCPU·4 GB RAM·140 GB NVMe | $12.30 | $12.30 | $15.40 |
| Advanced | 4 vCPU·8 GB RAM·180 GB NVMe | $15.40 | $15.40 | $19.30 |
| Advanced | 6 vCPU·12 GB RAM·240 GB NVMe | $24.00 | $24.00 | $30.00 |
| Advanced | 8 vCPU·12 GB RAM·260 GB NVMe | $28.00 | $28.00 | $35.00 |
| Power | 8 vCPU·16 GB RAM·300 GB NVMe | $32.00 | $32.00 | $40.00 |
| Power | 12 vCPU·24 GB RAM·350 GB NVMe | $49.00 | $49.00 | $61.00 |
| Power | 16 vCPU·32 GB RAM·450 GB NVMe | - | - | $77.50 |
The most affordable configuration is 1 vCPU / 2 GB at $4.00 per month; for LLMs and large databases there are 12 vCPU / 24 GB at $49.00 and 16 vCPU / 32 GB at $77.50 in Poland. A server is deployed in about 2 minutes, so starting small and ordering the next size once the load proves it is a sound strategy. The full comparison is in the plans overview.
AMD Ryzen 9, NVMe and DDoS protection in Germany, Finland and Poland. Pay with crypto or card.
FAQ
How much RAM does a WordPress site need?
A WordPress site with MySQL on the same server needs 2 GB of RAM at low traffic and 4 GB for thousands of visitors a day or heavy plugins. Page caching (for example in nginx) cuts memory load noticeably.
Is 1 GB of RAM enough for a VPS?
1 GB of RAM is enough for Linux without a desktop running one light service - a VPN, a bot or a static site. A database, a Docker stack or WordPress needs 2-4 GB, otherwise the OOM killer will terminate processes.
How much memory does a Telegram bot need on a VPS?
A Telegram bot in Python or Node.js usually takes 100-500 MB of RAM, so a VPS with 1 vCPU and 2 GB is enough even for several bots. It needs more if the bot processes media files or holds a large database.
What matters more for a server - cores or memory?
For websites, bots and databases memory usually matters more: processes crash when it runs out. Cores decide the outcome for code builds, media compression, game servers and language models on the CPU.
How do I check free memory on a Linux server?
The free -h command shows memory in gigabytes; the available column is what applications can still take without pushing data to swap. htop lists processes by memory use.
Does a VPS need swap?
1-2 GB of swap is a useful safety net against crashes during short memory spikes. Swap that stays in use all the time means the server is short on RAM and needs a configuration with more memory.