If you’re getting CPU overages on GoDaddy, it means your website (and plugins) are consuming too many server resources.
GoDaddy obviously wants you to upgrade, but hopefully after reading this guide, you won’t have to. I will show you how to upgrade to PHP 7.2, offload resources to Cloudflare’s free CDN, and optimize plugins/images to consume less resources. We will use Autoptimize, WP-Optimize, Heartbeat Control, and the Blackhole For Bad Bots plugin to optimize your site. Until then, you may be getting 503 errors which just means you’ve exceeded your CPU limits.
1. Check Bandwidth Usage
Quick Tips For Reducing Bandwidth:
- Check CPU usage in GoDaddy cPanel
- Upgrade to PHP 7.2 in your GoDaddy cPanel
- Delete unnecessary plugins you can live without
- Resize large images to be smaller (serve scaled images in GTmetrix)
- Losslessly compress images using the ShortPixel image optimization plugin
- Install Heartbeat Control, WP-Optimize, and Blackhole For Bad Bots plugins
- Use other tools in GoDaddy cPanel (eg. AWstats) to locate the source of high CPU
2. Enable Hotlink Protection
If you have high quality images on your site, people may by copying and pasting them onto their own website (or even Facebook and other social networks). This means you’re still hosting them, which sucks up your bandwidth. Here’s how to prevent this using hotlink protection which can be activated in GoDaddy’s cPanel or Cloudflare’s scrape shield settings.
- Login to your GoDaddy cPanel
- In the Security section, click Hot Link Protection and enable it
- Sign into your Cloudflare account
- Go to your Scrape Shield settings
- Enable hotlink protection
3. Upgrade To PHP 7.2
Upgrading PHP versions makes your site load faster (and improves security). Anytime GoDaddy releases a new PHP version, you should try to upgrade. Unfortunately, many WordPress users run outdated PHP versions since GoDaddy does NOT automatically upgrade you, since it can break your site if you’re running incompatible plugins. Here’s how to upgrade.
How To Upgrade To PHP 7.2
- Login to your GoDaddy cPanel
- In the Software section, click Select PHP Version
- Change to PHP 7.2
- Check your website for errors
- If you see errors, run PHP Compatibility Checker to ensure your plugins are compatible
- If you still see errors, revert to an earlier PHP version
4. Heartbeat Control
The WordPress Heartbeat API shows real-time plugin notifications, and when other users are editing a post. This consumes server resources and should be limited, or disabled. Install the Heartbeat Control plugin and limit it to 60 seconds, or ideally, disable heartbeat completely.
5. Clean Database With WP-Optimize
Your database can get bloated by accumulating junk files like post revisions, spam comments, transients, pingbacks, trackbacks, and other junk which can be cleaned with WP-Optimize. It’s a good idea to clean your database once every 1-2 weeks, and take a backup before doing so.
6. Black Bad Bots
Spam bots are notorious for crawling websites and consuming server resources. If you don’t set rules for bots to follow (eg. using the Blackhole For Bad Bots plugin) they will continue to crawl your website, and you will be spending server resources (and money) on literally nothing.
Check If Spam Bots Are Hitting Your Site
- Install Wordfence
- Go to your Live Traffic Report
- Watch all bots hitting your site in real-time
- If you don’t recognize a bot, Google it’s hostname (provided by Wordfence)
- See if other people report the bot as spam (compute.amazonaws.com is a common one)
- Block the spam bots using the Blackhole For Bad Bots plugin (you can also use Wordfence’s blocking tab or Cloudflare Firewall Rules to block spammy bots by using their hostnames… be sure to use asterisks which blocks all variations of the bot)
Block Spam Comments Too!
Spam comments also consume resources. I use Anti-Spam to block comment spam.
7. Eliminate High CPU Plugins
Some plugins are known for consuming lots of server resources and will cause CPU overages. Too many plugins (one just 1 single high CPU plugin) can absolutely destroy your load times and bandwidth usage. I created an extensive list of known high CPU plugins you should avoid.
You can also use GTmetrix’s Waterfall tab to find slow plugins:
Or use Query Monitor to see which plugins take longest to load:
8. Delete Unused Plugins + Themes
Delete all unused plugins:
And unused themes:
GoDaddy has their own built-in caching system and blacklists all cache plugins. The problem is, cache plugins do a lot more than just caching (eg. minification and Google Font optimization). Autoptimize takes care of most of these miscellaneous optimizations, and can fix many items in GTmetrix/Pingdom. I have a full tutorial on configuring Autoptimize, but it’s pretty simple:
10. Use A CDN
Cloudflare’s free CDN will help offload resources to their 200+ data centers around the world, lightening the load on your own server. It will also reduce the geographic distance between your server and visitor, making your website load much faster for people who were far away from your 1 origin server. A CDN is also recommended in the WordPress optimization guide.
Step 1: Sign up for a free Cloudflare plan.
Step 2: Add your website and run the scan. You will come to a page with 2 nameservers.
Step 3: Change nameservers in your GoDaddy account to Cloudflare’s.
11. Optimize Images
There are 3 primary ways to optimize images in GTmetrix, however you should really check out my full WordPress image optimization tutorial which includes 20 ways to optimize images.
- Serve scaled images – resize large images to be smaller. GTmetrix will tell you which images are too large, and the correct dimensions they should be resized to.
- Specify image dimensions – means you need to add a width/height to the image HTML.
- Optimize images (lossless compression) – I use ShortPixel but Imagify is also good.
12. Clear Out Disk Space
You should try to leave about 20% of your GoDaddy disk space empty. Make sure you’re optimizing images, deleting unused images, plugins, themes, and other files on your website.
13. GoDaddy Speed Limitations
No serious website should use GoDaddy for hosting. It is mainly for beginners who are just starting their website and are concerned about 1 thing – price. But with this, comes with speed limitations which are reflected in your server response times, GTmetrix, and Pingdom reports.
- GoDaddy is slow at releasing PHP versions (and are only available on cPanel plans)
- GoDaddy blacklists cache plugins (which can improve speed more than Autoptimize)
- GoDaddy uses outdated server hardware, resulting in slower server response times
- GoDaddy puts too many people on the same server, resulting in slow response times
- This is why their hosting is so cheap, because 100s of people share the same server
14. Get Better Hosting (GoDaddy Sucks)
I use SiteGround and have 200ms response times with 100% GTmetrix scores and .4s Pingdom load times. Do a hosting check, run your own tests, or click through my fast loading pages. They were rated the #1 host in 26 Facebook polls and are worlds better than EIG (Bluehost, HostGator), GoDaddy, and other hosts who pack too many people on the same server. There have been plenty of people who migrated and posted results on Facebook and Twitter. Tweet after tweet, post after post, poll after poll after poll, faster hosting will fix slow response times. They’re recommended by WordPress, do free migrations, and I use their semi-dedicated plan.
SiteGround has 3 plans:
Higher plans include more server resources (#1 factor in the WordPress optimization guide). Here’s the full comparison chart, but GrowBig gives you about 2x more server resources than StartUp, and GoGeek is semi-dedicated hosting which gives you even more. GrowBig and up comes with a free migration, staging, advanced caching, and ability to host multiple websites. GoGeek comes with priority support. Their cloud hosting is quite the price jump at $80/month.
You can see this on the features page…
I hope this tutorial was helpful! Drop me a line if you have questions.