June 1, 2021
When WordPress is slow to load the first page, it can spell death to web traffic. We’re all busy doing hundreds of things at a time, our patience is limited even at the best of times, and no one is willing to wait around for your page to load. Google’s latest core update requires every web page to load Largest Contentful Paint (LCP) in no more than 2.5 seconds to be considered just “acceptable,” and you need to keep it under 2 seconds to be “good.”
But WordPress sites can be notoriously heavy and slow to load, thanks to all the plugins, themes, unnecessary CSS, etc.
It’s easier to track down the fault when the entire website is slow, but it’s fairly common to see a really slow page load the first time you hit the website in the morning, or if the site’s been unused for a few hours and then you return to it.
After it’s “woken up” the first time, it’s generally smooth and fast loading for the rest of the day. Since it’s pretty unlikely that your website is just not a morning person, there’s got to be another way to fix a WordPress site that’s slow to load the first page.
There’s no single solution that works for every web page. Fixing website speed and page load requires a lot of time, attention, and tedious trial and error, although there are some common fixes to try out first before you reach out to your community forum.
Use your local server’s IP and turn to https://gtmetrix.com to run a site audit and work through the issues that it presents. Some of the factors that influence page speed and load, and which could be causing your issue, include:
Here are some of the ways that WordPress developers have dealt with their slow initial page load problem.
If you’re lucky, it’s a server issue caused by your host’s policies. Shared hosting is particularly prone to slowing down your page load and speed, but it can happen even with dedicated hosts.
Some hosts do throttle speeds for inactive pages, and there have been a lot of complaints around GoDaddy’s host loading speeds. Try transferring your page to a local host so you can identify if the problem persists.
If you're loading RSS feeds front-end, the cache can expire, which causes a very long pause before there’s a response the next time you load up the site. Installing a caching plugin can help.
If you’ve identified the cache plugin, but you can’t do without it, experiment with the plugin settings. ESI has been found to be a problem for LS Cache plugin users, it treats each image as a separate block and makes a separate PHP request, so that’s a lot of requests and the images load very slowly.
Even though your plugin is active, updated, and seems to be working smoothly, sometimes you end up with a patchwork of updates and code that drags everything down. It can work to remove and then reinstall each of your plugins, one at a time. Reinstalling means you get the latest version all in one smooth package.
Over time, large databases can bloat and get clogged up. If you’ve been running the same website for years, all your different plugins, restylings, and updates can leave their traces on database tables. Use query monitor to determine if this is a problem — log in as admin with query monitor active, leave the site for a day, then return to check which queries take the longest.
Sometimes ‘Advanced Database Cleaner’ can help, but if your databases are large, your only option will be to completely reset them and rebuild them from scratch.
WordPress’ PHP itself can be holding you back. Try rebuilding your site with your own PHP codes. It might take more effort than using WordPress PHP, but the results will be worth it.
It’s not a solution, but if you’ve been trying and trying and you still can’t find the root of the issue, setting up a cron task or scheduled task can serve as a workaround. Create a cron job to call your home page once every 5, 10, or 20 minutes, to keep it “awake” so that you won’t have the issue of WordPress being slow to load the first page.
One developer couldn’t work out what was dragging down his site page load and speed. His team tried literally everything, and nothing worked. They came back to it after four years (!) and discovered that the sites had too many articles marked as sticky.
Because of the WordPress serialized array in wp_options to mark sticky posts, it caused the main loop of the dynamic home page to take an incredibly long time. Clearing the sticky_posts field in the table fixed the problem.
Fixing your WordPress website speed really isn’t optional. It’s almost certainly going to take you a lot of time and effort, trying one thing and then another, but it’ll be worth it when you solve the issue. These fixes mentioned above are a good place to start.