ARTICLE AD BOX
Short version: on shared / business WordPress hosting, CPU spikes usually come from background work and uncached requests, not traffic volume. One misbehaving site or plugin can max out the whole account.
What usually causes high CPU usage?
Most common reasons: • Uncached PHP requests • Logged-in users • admin-ajax.php • REST API calls • WordPress cron (wp-cron.php) • Heavy plugins • Page builders • Security scanners • Backup plugins • Analytics / stats plugins • WP-Cron running on every visit • This is a big one on shared hosting • Slow themes or custom code • Expensive database queries • Multiple sites sharing the same CPU • One noisy site affects all six
How do I find what’s actually eating CPU?
Work top-down: 1. Hostinger hPanel → CPU / Resource Usage • Note when the spikes happen 2. Check access logs • Look for lots of admin-ajax.php or wp-cron.php 3. Disable plugins temporarily • Start with backups, security, analytics 4. Test sites one by one • Disable a site → watch CPU → repeat 5. Use Query Monitor • Find slow queries and heavy hooks
Goal: isolate one site or plugin that drops CPU when disabled.
What should I optimize before upgrading plans?
Try these first — they usually help a lot: • Disable WP-Cron temporarly (12-24hours), if that improves the performance, clean the CRON jobs, if the site/s has too many crons, find alternatives to it. • Make sure page caching actually works • Check response headers for cache hits • Reduce plugins that run on every request • Schedule backups and scans during off-peak hours • Enable object caching (Redis/Memcached if available) • Clean up database bloat (autoloaded options, transients)
Disable wp-cron.php and monitor CPU usage for 24 hours.
If CPU drops noticeably, you’ve probably found your main problem.
This kind of issue is almost always fixable with isolation + small optimizations before throwing more hardware at it.
