Idle CPU Percentage Calculator
Calculate idle CPU percentage and headroom available for additional workload.
About Idle CPU Percentage Calculator
/proc/stat's cpu line reports cumulative ticks in each state (user, nice, system, idle, iowait, irq, softirq, steal) since boot; idle ticks as a fraction of total ticks over a sampling interval gives idle percentage, the complement of overall utilization. Multiplying idle percentage by core count converts a percentage into a concrete 'how many whole cores' worth of unused capacity exists' figure — useful framing for capacity planning and consolidation decisions, since '35% idle on a 32-core box' is a more actionable number when expressed as roughly 11 idle core-equivalents.
Formula
Idle percentage and wasted capacity
idle% = idle_ticks / total_ticks × 100; wasted_capacity = (idle% / 100) × cores
- t_{idle}
- idle ticks
- t_{total}
- total ticks
- c
- core count
Worked example
With the default values below, Idle CPU Percentage Calculator returns Idle CPU % of 65.00%. Change any input above and every figure here is recalculated in your browser.
Inputs used
- Idle Ticks (from /proc/stat delta)minimum 0
- 6,500
- Total Ticks (from /proc/stat delta, all fields summed)minimum 1
- 10,000
- CPU Coresminimum 1
- 8
- Per-Core Frequency (GHz, for capacity estimate)minimum 0.1
- 3
Results
- Idle CPU %
- 65.00%
- Idle Capacity (core-equivalent)
- 5.20
- Busy CPU %
- 35.00%
- Idle Capacity (GHz-equivalent)
- 15.60
- Assessment
- Moderate idle capacity — some headroom remains.
Step by step
- 1Values used
- 2Idle percentage and wasted capacity
- 3Idle CPU %= 65.00
- 4Idle Capacity (core-equivalent)= 5.20
- 5Busy CPU %= 35.00
- 6Idle Capacity (GHz-equivalent)= 15.60
- 7Assessment= Moderate idle capacity — some headroom remains.
Assumptions and limits
- The result is derived only from the 4 inputs listed above. Anything not among them is not part of the calculation.
- In particular, this calculator does not take inflation, tax or fees or charges into account.
- Figures are rounded for display to 2 decimal places, so totals built from several rounded parts can differ slightly from the unrounded arithmetic.
How these calculators are built and tested is described on the Methodology page. If a figure looks wrong, please report it.
Frequently Asked Questions
Is idle time from /proc/stat the same as 'available capacity'?
Mostly, but with nuance — idle ticks reflect time the CPU had literally nothing scheduled, which is a reasonable proxy for spare capacity for CPU-bound work, but it doesn't account for memory, I/O or network limits that might prevent a workload from actually using that idle CPU time.
What's the difference between idle and iowait in /proc/stat?
Both represent the CPU doing no useful work, but iowait specifically means idle-while-waiting-for-outstanding-I/O, whereas plain idle means genuinely nothing was pending. High iowait alongside low plain-idle suggests I/O is the limiting factor even though the CPU itself isn't computing.
Why measure idle over an interval instead of reading /proc/stat once?
The counters in /proc/stat are cumulative since boot, so a single reading just shows historical totals; sampling twice and taking the delta over a known interval (the same technique tools like `top` and `mpstat` use internally) is required to get a current, meaningful idle percentage.
