Have a slow WordPress site on SiteGround?
I had this problem too; my GTmetrix scores were near 100% for every blog post I wrote (because I’m obsessed with speed), but my load times could get up to 10+ seconds. I have lots of images and comments on most of my posts, but there was literally nothing else to do in GTmetrix. I finally came to the conclusion that SiteGround’s semi-dedicated GoGeek plan, and even their cloud hosting, wasn’t fast enough (spoiler: I went from SiteGround to Cloudways).
This tutorial covers everything you need to know to achieve better scores + load times in GTmetrix. SiteGround is great for shared hosting, but if you’re running WooCommerce, AdSense, high CPU plugins, or external scripts, I would skip shared hosting all together. Their shared servers often can’t handle the resources it takes, causing a slow WordPress site.
There are better options than SiteGround’s cloud hosting considering Cloudways DO offers the same 2 CPU + 4GB RAM for $42/month (instead of $80/month with SiteGround). My suggestion is to optimize your site as best you can, but keep an eye on server response times which you can measure in Google PageSpeed Insights. If they’re slow, you know the problem.
1. Upgrade To PHP 7.4
SiteGround released PHP 7.4 which you can upgrade to in your dashboard.
It’s considerably faster especially if you’re currently running an older PHP version, and it’s one of the easiest ways to speed up your site. It’s a good idea to take a backup, and to make sure your plugins and theme are compatible, though PHP Compatibility Checker is kind of useless.
How To Upgrade To PHP 7.4 On SiteGround
- Login to your account
- Click Devs form the left menu
- Click PHP Manager
- Click the edit icon
- Change PHP version and click CONFIRM (screenshot below)
2. Use WP Rocket Instead Of SG Optimizer
Should you use SG Optimizer or WP Rocket? Let’s get this out of the way.
WP Rocket still has more speed optimizations than SG Optimizer (even with SG Optimizer’s big update) which means you will almost definitely see better results with WP Rocket. It lets you do things SG Optimizer doesn’t: host analytics locally, lazy load videos + iframes, replace the iframe with a preview image, clean your database, integration of multiple CDNs, and more.
The main benefit of SG Optimizer is their caching is (suppose to be) faster than any other cache plugin since it users server-side caching rather than file-based caching. However, I have tested both SG Optimizer vs. WP Rocket and have always found myself back at WP Rocket with SG Optimizer uninstalled. Every site is different, so I recommend doing your own tests.
Another option is to use WP Rocket for everything BUT caching. To do this, you would configure the WP Rocket settings to handle everything (but caching). Next, disable WP Rocket’s page caching using their helper plugin. Finally, install SG Optimizer and only use it for caching (but disable everything else to avoid overlapping functionality handled by WP Rocket).
There’s a reason WP Rocket is usually the #1 cache plugin in Facebook polls:
Here’s what SiteGround says, however, I agree to disagree. Again, do your own tests!
3. Configure Your Cache Plugin Correctly
Whichever cache plugin you’re using, it’s 110% important that it’s configured optimally. If you’re only using SG Optimizer, you may want to try WP Rocket, WP Fastest Cache, or Swift to take care of ‘other’ optimizations. Remember to avoid duplicate functionality between plugins.
4. Activate Cloudflare’s CDN In SiteGround
Cloudflare’s CDN now was 200+ data centers (whoa). And it’s still free!
Why any one wouldn’t use it is beyond me, but you can activate it in SiteGround’s dashboard.
You should still configure the settings in your Cloudflare dashboard. Here are a few tips:
- Speed: enable Brotli and Rocket Loader
- Scrape Shield: enable hotlink protection
- Firewall: block bad bots from Wordfence’s live traffic report
- Page Rules: Cloudflare has lots of page rules for speed, security, compatibility
5. Avoid Hitting SiteGround’s CPU Limits
Your SiteGround plan needs to have enough server resources to accomodate your website’s resource consumption. If it doesn’t, you will you receive CPU notifications from SiteGround threatening to shut down your website, but it’s also a good reason your WordPress site will be slow on SiteGround. That’s because your server is probably overloaded and “stressed out.”
Head to SiteGround’s Features page and scroll down to the “we allocate the resources you need” section. Hover over the Server row and see how many resources come with your plan:
Next, compare this with your CPU consumption (this is a screenshot of their cloud hosting):
If you exceed CPU limits, you will get this email:
Are you close to exceeding CPU limits?
If so, you need a hosting plan that comes with more server resources (CPU limits have been labeled as SiteGround’s biggest downfall). You can upgrade with SiteGround, but if you’re already on their GoGeek plan or cloud hosting, I would definitely not upgrade to anything more. As I’ve said, SiteGround is great to a certain point, but once you outgrow GoGeek or are spending $35/month because of renewal prices, do yourself and favor and move to Cloudways.
6. Selectively Disable Plugins On Specific Pages
Let’s talk about Asset CleanUp and Perfmatters.
- Disable WooCommerce features on non-eCommerce pages
- Disable slider plugin on content without sliders
- Disable rich snippets plugin on content without rich snippets
- Disable contact form plugin on content without a contact form
- Disable AdSense or affiliate links where they aren’t being shown
- Disable social sharing plugin on all pages (since it’s usually for blog posts)
- Disable WooCommerce scripts, styles, cart fragments on non-eCommerce pages
Step 1: Install the Asset CleanUp or Perfmatters plugin.
Step 2: Edit a page or post and selectively disable unused elements from loading on the page:
7. Optimize Images
Large, unoptimized images can also cause a slow website on SiteGround.
If you see serve scaled image errors in GTmetrix, it means you’re uploading images that are too large and they need to be cropped and/or resized to the correct dimensions (which GTmetrix provides you). You may also see specify image dimension errors which means you need to add a width + height to the image’s HTML. Lastly, if you see optimize images error, you need to losslessly compress them, and the only plugin I found that gets 100% every time is ShortPixel.
8. Optimize Google Fonts
If you’re using Google Fonts, check your GTmetrix report for optimization issues:
There are a number of plugin that can help optimize fonts: OMGF, WP Rocket, Self-Hosted Google Fonts, Autoptimize, even Asset CleanUp. But the ideal method is to host fonts locally.
To do this, download your fonts directly from the Google Fonts website while being minimal with the number of fonts and font weights (since more fonts can also mean more requests).
Next, convert the files to web font files using a tool like Transfonter. Once converted, upload them to your wp-content/uploads folder, and add the fonts to your CSS. Test the font, set a default font with fallbacks, and you’re golden. See my local fonts guide (above) for more info.
9. Optimize Third Party Requests
Third party requests are anything that pull requests from outside websites.
This can be Google Fonts, Analytics, AdSense, Tag Manager, Maps, embedded YouTube videos, Gravatars, social share counts, Facebook Pixel, or even plugins that create external requests.
Some third party requests are easy to optimize:
WP Rocket’s Add-on settings let you host Google Analytics locally and enable browser caching for Facebook Pixel. Their Media settings let you lazy load YouTube videos and replace the iframe with a preview image. Disqus has a conditional load plugin for that, and Google Maps + embedded social posts can be taken as a screenshot and used as an image instead of an embed.
Some third party request aren’t so easy:
Google AdSense, Google Tag Manager, and Gravatars are a bit more difficult to optimize. You can load AdSense asyncrounously and trying lazy loading it, but that’s about it. Google Tag Manager should only be used for large, unoptimized websites. And I haven’t found a good solution for Gravatars (I’ve tried nearly every Gravatar cache plugin) and have them disabled.
10. Avoid Resource-Hungry Plugins
If you’re running infamously slow plugins, SiteGround’s shared hosting may not be enough.
These plugins are usually portfolios, sliders, live chat, backup, statistics, related posts, social sharing, calendar, or even WooCommerce and WPML. Of course it depends on which plugins you’re using and how well they’re developed with speed in mind. Here are common culprits:
11. Finish The Last 10% With Perfmatters
There’s a lot of “miscellaneous optimizations” that don’t really fall under the main categories of speed optimization. I’m talking about disabling autosaves, pingbacks, trackbacks, limiting post revisions, DNS prefetch and preconnect, and essentially removing bloat from your site.
The Perfmatters plugin (by Kinsta) takes care of this last 10% of speed optimization:
12. Find Bottlenecks In GTmetrix
Time To First Byte
13. Measure Server Response Times
It’s time to find out once and for all if SiteGround’s hosting is your problem.
Run your site through Google PageSpeed Insights and check your server response time which should be under 200ms like Google recommends. If it’s not, you need a more powerful server.
14. Get Cloud Hosting (Not From SiteGround)
Here’s what happened when I migrated from SiteGround to Cloudways DigitalOcean:
Even posts with tons of requests load in <2s. Run this page through GTmetrix if you want.
What I was paying with SiteGround:
What I’m now paying with Cloudways:
I don’t think I need to say much more. Just because SiteGround is good for shared hosting doesn’t mean their better or faster than other cloud hosting providers. Keep your options open and join the WordPress Hosting Facebook Group to see what real people are saying.
What other people are saying:
Bottom line: shared hosting is fine if you’re not running WooCommcerce, AdSense, high CPU plugins, or have decent traffic. But once you have one of those, look into cloud hosting. Yes, I’m an affiliate for Cloudways, but there are plenty of other people who migrated and posted their results. The code OMM25 will give you 25% off the first two months of hosting at Cloudways.
Is Your Website Still Slow On SiteGround?
Considering I covered nearly every major factor from the WordPress optimization guide, you should have a much faster site. And if you don’t, chances are you outgrew SiteGround’s StartUp or GrowBig plan, or your cache plugin isn’t configured properly. But if you still have questions, leave me a comment with your GTmetrix report URL and I’ll be glad to take a look.