How do I monitor server CPU usage?
Monitoring your CPU usage is the most effective way to diagnose a sluggish server. Whether you are running a Linux-based VPS or a Windows Dedicated Server, there are built-in and third-party tools that can help you see exactly what is eating your resources.
Most rented servers run Linux without a visual desktop. You’ll use the terminal (via SSH) to monitor them.
top (The Classic): Type top in your terminal. It gives you a real-time list of every running process.
Pro Tip: Press 1 while it’s running to see a breakdown of usage for every individual CPU core.
htop (The Modern Standard): If your server doesn't have it, install it (sudo apt install htop). It’s a color-coded, much more readable version of top that allows you to scroll and kill processes easily.
glances (The "All-in-One"): This tool shows CPU, RAM, Network, and Disk I/O all on one screen. It’s perfect for a quick "health check" of the entire server.
If you are renting a Windows Server, you have built-in graphical tools that are very powerful.
Task Manager: Right-click the taskbar and select Task Manager. Go to the Performance tab and click CPU.
Pro Tip: Right-click the CPU graph and select "Change graph to > Logical processors" to see if one specific core is being maxed out while others are idle.
Resource Monitor (resmon): Search for "Resource Monitor" in the Start menu. This gives you a much deeper look into which specific services (like Windows Update or a database) are causing spikes.
Checking your server manually is fine for troubleshooting, but for long-term health, you want automated alerts.
Netdata: An incredibly fast, open-source tool you install on your server. It provides a beautiful web-based dashboard that tracks CPU usage second-by-second.
Prometheus & Grafana: The industry standard for "scaling" apps. Prometheus collects the data, and Grafana turns it into professional charts.
Provider Dashboards: Most modern hosts (AWS, DigitalOcean, Linode) have a "Monitoring" tab in their control panel that shows CPU graphs without you having to log into the server at all.
| Metric | What it means |
| User (%us) | Your apps (Web server, Game server, etc.) are working. This is usually "good" load. |
| System (%sy) | The Operating System/Kernel is working. High %sy can mean driver issues or network bottlenecks. |
| I/O Wait (%wa) | The CPU is waiting for the Hard Drive to finish reading/writing. This usually means your disk is too slow. |
| Steal (%st) | (In VPS only) Another customer on the same physical hardware is "stealing" your CPU power. If this is high, complain to your host! |