Performance
What is CPU steal time?
Steal time is the proportion of time a virtual CPU was ready to run but the hypervisor gave the physical core to another guest. It appears as the "st" column in top and vmstat. Sustained values above 2–3% indicate contention and show up as tail-latency spikes rather than as uniformly slow throughput.
Why CPU steal time matters
It appears as the "st" column in top and vmstat. Sustained values above 2–3% indicate contention and show up as tail-latency spikes rather than as uniformly slow throughput.
CPU steal time in practice
When you're running a server, watch the st column in top and vmstat. If it's consistently above 2–3%, your CPU is being shared more than your workload expects. The cost isn't a uniform slowdown—it's tail-latency spikes that wreck time-sensitive jobs. You might change your instance size or move to a less crowded host. If you ignore it, you'll chase ghosts in your own tuning while the real bottleneck sits on the hypervisor side.
What people get wrong about CPU steal time
People often mistake CPU steal time for a sign their own processes are consuming too much CPU. It's not. Steal time means your virtual CPU was ready but the hypervisor gave the physical core to another guest. The correction: look at the st column, not the user or system columns. High steal means the problem is outside your instance, not inside.
CPU steal time — common questions
Why is CPU steal time so high on my VPS?
High steal time usually means your hypervisor is oversubscribed. Other guests on the same physical host are competing for cores. It's not caused by your workload alone. If st stays above 2–3%, consider moving to a provider with less contention or a dedicated core.
Can I reduce CPU steal time myself?
Not directly from inside your instance. Steal time is imposed by the hypervisor. You can reduce your reliance on CPU by optimising your code, but the actual steal only drops if the host has less contention. Sometimes migrating to a different physical host helps.
Where CPU steal time comes up
- What is CPU steal time and why does it matter? Steal time is the percentage of time your virtual CPU was ready to run but the hypervisor gave the physical core to someone else. It appears as the "st" co…
- Why is my VPS slow? In order of likelihood: memory exhaustion causing swap thrashing, disk IO saturation, CPU steal time on shared cores, an unoptimised database, or network l…
More from performance
- RTT
- RTT is the time for a packet to travel to a destination and for the response to return, measured in milliseconds.
- Jitter
- Jitter is variation in packet delay over time, as distinct from the average delay itself.
- TTFB
- TTFB measures the time from a request being sent to the first byte of the response arriving.