04 · Steal time
What overselling does to your machine.
Every provider that sells VPS picks a ratio between vCPU sold and physical threads available. Once that ratio goes past one to one, two machines can want the same thread at the same instant. One runs, the other waits.
That waiting time has a name, and it shows up in your own system. It is steal time, reported as %st in top and as the st column in vmstat 1. It measures how long your vCPU wanted to process and could not, because the hypervisor handed the thread to another virtual machine.
The detail that misleads people is that the average looks fine. Under normal use the contention is rare and steal time sits near zero, so the graph on the dashboard looks healthy all month. The pain happens at peak, which is exactly when your server is full and your community is online. That is why so many people describe the problem as an occasional stutter instead of constant slowness.
Run vmstat 1 on your current server at peak hour and watch the st column. If it climbs consistently, you do not have a plan size problem. You have a CPU contention problem, and adding RAM will not solve it.
With 1:1 allocation there is no other machine competing for your threads, so steal time stays at zero even with the machine under load.