Monitoring your VPS's resource usage helps you catch performance problems before they cause downtime, and tells you when it's time to upgrade your plan. This guide covers the essential built-in Linux commands — no extra monitoring stack required.
Checking CPU Usage
top
For a friendlier, colorized view (install if not present):
sudo apt install htop -y
htop
Press q to exit either tool.
Checking Memory (RAM) Usage
free -h
The available column is the most accurate indicator of memory actually free for new applications (it accounts for reclaimable cache).
Checking Disk Space
df -h
To see disk usage by directory (useful for finding what's filling up storage):
du -h --max-depth=1 /var | sort -hr
Checking Disk I/O
sudo apt install sysstat -y
iostat -x 2
Checking Network Usage
sudo apt install vnstat -y
vnstat
Checking System Load Average
uptime
The three numbers represent load average over 1, 5, and 15 minutes. As a rule of thumb, sustained values above your CPU core count indicate the server is overloaded.
Finding What's Consuming the Most Resources
Sort processes by CPU usage:
ps aux --sort=-%cpu | head -10
Sort by memory usage:
ps aux --sort=-%mem | head -10
Setting Up Ongoing Monitoring
For a quick historical view without a full monitoring stack:
sudo apt install sysstat -y
sudo systemctl enable --now sysstat
Historical CPU stats are then available via:
sar
When to Upgrade Your VPS Plan
- Sustained load average above your core count
- Available RAM regularly near zero with active swap usage
- Disk usage consistently above 80–85%
Common Errors
htop/vnstat not found — these aren't installed by default on minimal images; install with apt install as shown above.
FAQ
What's a healthy CPU load for my VPS?
As a general guideline, a 1-minute load average below your number of CPU cores indicates headroom; consistently above it suggests the CPU is a bottleneck.
Related Articles
- How to Find and Stop Processes Using Too Many Resources
- How to Check and Manage Disk Usage on a Linux VPS
- How to Choose the Right VPS Plan for Your Workload
