I’m going to guess that, as an avid internet user, you prefer fast websites to slow ones. And if your online business is built on WordPress, I’m also going to guess you’re currently trying to land yourself in the former category.
It’s true that speeding up your WordPress site can help your website in more ways than one. Your users will be happier, your search engines will be happier, and your bottom line will be happiest of all. Unfortunately, WordPress doesn’t always make it easy to deliver blazing fast pages to visitors.
Now, WordPress doesn’t exactly specialize in speed right out of the box. This is due largely in part to how WordPress works: When someone visitors a page on your site, WordPress dynamically constructs the page by pulling data from various sources – like your WordPress database and theme files – then combining them into an HTML file that is sent to the visitor’s browser. Building pages “on the fly” like this isn’t always ideal for performance.
As we’ll soon see, many approaches to speed up WordPress are pretty non-technical, while others involve installing a plugin or even changing some of the code yourself (as long as you know what you’re doing). You may even begin to see improvements after taking just a few of these steps.
First, let’s understand where your site stands performance-wise. There’s no all-encompassing metric that sums this up, since performance varies by every visitor’s geographic region, internet connection strength, and whether your site is cached by their browser.
Page speed will also vary across your site’s pages, depending on the amount and type of content on each one. Website homepages are typically the go-to for estimating load speed, although you should also be testing any other particularly high-traffic pages as well.
Be sure to test performance regularly, especially after adding new functionality. This will confirm your site continues to deliver pages at competitive speeds.
Quality web hosting is the foundation of a fast WordPress site. It’s essential that you choose both a hosting provider and a plan that meets your bandwidth and performance requirements. Most WordPress hosts offer several types of hosting: shared hosting, dedicated hosting, virtual private server (VPS) hosting, and managed WordPress hosting plans.
Established websites with more content and higher levels of regular traffic should instead find a dedicated, VPS, or managed hosting plan from a reputable provider. These plans will allocate enough server resources to handle increased traffic without affecting load time.
Updates are a part of life if you’re a WordPress administrator. WordPress core, themes and plugins all need to update in order to help your site run as efficiently as possible, among other things. Always be running the latest versions to optimize performance, keep your site secure, patch bugs, and ensure every feature and tool functions as it should.
PHP is the scripting language that powers all WordPress websites. It’s a server-side language, meaning that its files are stored and executed on the web server that hosts your site. Like themes and plugins, PHP also releases occasional updates to run more efficiently, which in turn helps your pages load faster.
You can also check your hosting site’s documentation or contact support to see which version of PHP you’re using. If it’s not PHP 7, ask your host to update your site’s version of PHP.
Quality is better than quantity when it comes to WordPress plugins. Since each plugin is like a piece of mini-software on your website, too many running at once can negatively affect your site’s load times. Even if you’re not using a certain plugin, there’s a chance it’s doing unnecessary work in the background and consuming resources. It might be time to cut back.
Now that you’ve taken care of the quantity part by cutting loose your unneeded plugins, make sure the plugins you do keep around are high-quality. The best WordPress plugins are coded in such a way that they only consume the server resources they need, when they need them. These plugins are also light on code and won’t occupy too much storage space on your server, and are updated regularly to keep up with WordPress core updates.
Like plugins, your active WordPress theme might be placing an unnecessary burden on your web server. Themes that are packed with high-quality images and effects might look cool, but they come at a cost. Fancy effects can require a lot of code, and many themes are programmed inefficiently, both of which inflate file sizes and slow your page performance.
Instead, pick a simple theme with only the necessary features for your pages. You can always add more effects later through plugins or custom CSS if you’d like.
Large images are another common culprit of slow WordPress websites. To further raise your site performance, reduce your image file sizes as much as possible without sacrificing quality. The goal is to save space but avoid making users squint to see your visuals.
If your WordPress features a lot of images, you can also implement lazy loading. Instead of fully rendering all images on a page at once when the page is first loaded, lazy loading only loads the images that appear in the user’s browser window, and defers loading the rest until the user scrolls down to them.
Notice how I didn’t say “videos” above, but “video embeds.” That’s because, of all types of files you could store on your web hosting server, videos are one of the most resource-intensive. They consume space and can majorly slow down your page when loaded. Storing even one video on your serve can hurt performance.
Still, videos are a great way to engage visitors, so you shouldn’t ditch them altogether. Instead of putting videos in your media library, use a third-party video hosting service like YouTube, Vimeo, or Wistia. These services handle the storage for you, so all you need to do is place the video on your page with embed code. It makes no difference to visitors (they’ll still see the same video), but your user experience will greatly improve.
CSS and JavaScript are fundamental to your site — they elevate your pages beyond walls of plain HTML. That said, these files need to be sent from your web server to a web browser every time a visitor loads a page. Therefore, the smaller you can make these files without affecting your site’s look and functionality, the faster your pages will load.
Every time a visitor requests a web page from a non-cached site, the PHP on your WordPress server has to retrieve all the relevant content from your WordPress database, assemble it into an HTML file, and send that file to the client. This method has its advantages, including saving server space and allowing for dynamic website content. But, it also takes more time and energy than sending a pre-written web page.
As far as options go, we recommend WP Rocket, W3 Total Cache or WP Super Cache. They are all popular and frequently updated.
Here’s a tip that applies to any website — if you want to reduce loading times, provide less content for browsers to load. In other words, simplify your designs.
Over the last 10 years or so, web design has seen a push toward more minimal designs. This makes sense for several reasons, including the fact that simpler pages simply consume fewer resources and will load more quickly across browsers.
Minimal web pages are also better for UX, since they’re less likely to overwhelm visitors compared to the cluttered designs that were once popular. Plus, simple pages are much easier to make responsive, meaning the page looks good across many different screen sizes, from desktop monitors to smartphones.
If you’ve had your WordPress site for a while, chances are you’ve accumulated some old, unused files in your database. These files might be comment spam, leftover data from unused themes and plugins, old users, unpublished content, and old media, all of which take up valuable storage space and put unnecessary load on your server.
Plugins like WP Optimize and Advanced Database Cleaner will conduct an audit of your files and scrap any non-essentials. This is a much faster and safer alternative to deleting the files off your server yourself. It’s also safe to manually delete unused media files directly in your WordPress media library.
While post revisions are a helpful feature, they can pile up in your database and slowly affect your site’s overall performance. By default, WordPress saves unlimited post revisions, but with a small tweak you can limit the number of saved revisions per post or disable post revisions altogether.
We get it. Things happen, posts get deleted and relocated, or you need to rearrange your site’s structure. When this happens, the best way to avoid 404 errors is by implementing permanent redirects.
Still, try to limit the number of redirects on your WordPress site. Each one adds on an extra bit of load time. Especially if you have multiple redirects sending visitors to other redirects, and so on. Redirects are often unavoidable, but optimizing your site architecture early on will keep them to a minimum and avoid messy redirect chains.
Pingbacks and trackbacks are two WordPress technologies that alert external websites when you link to them in your site’s content.
For example, if your blog post contains a link to hubspot.com, you can configure WordPress to notify the owners of hubspot.com that you’ve linked to their website. They also work the other way around — if someone links to your site, you can be notified.
Pingbacks and trackbacks can be great for marketing efforts, since you’re letting other sites know that you value their content, and may receive backlinks in return
Long story short, we recommend you disable pingbacks and trackbacks. To do so, go to Settings > Discussion in your dashboard and uncheck the first two options, Attempt to notify… and Allow link notifications…
A CDN is a global collection of connected web servers. Each server stores a copy of your website’s JavaScript, CSS, and image files. When a user requests a page on your site, the server closest to the user sends these files to them. A CDN gives your website global reach and levels load speed for all visitors, near and far.
GZIP is a lossless compression method widely used for sending files over the internet. GZIP can reduce file sizes by up to 70%, and compresses files in much less time and with less computing power than other compression methods. When you apply GZIP compression to your website, your files will be sent to users more quickly since you’re using much less bandwidth than with an uncompressed file.
External scripts are code files that your website uses, but are not stored on your own web server. These kinds of scripts are common with third-party analytics tools and plugins like Google Analytics and Crazy Egg, ad networks like Google AdSense, and social media embeds like “click to tweet.” Many WordPress themes also rely on external scripts to load JavaScript files, CSS files, and other media.
External scripts aren’t always a bad thing. You’ll probably need at least a couple on your site to utilize the tools you want. Always weigh the cons of taking on additional plugins and tools that make use of external scripts, and consider if the added functionality is worth trading for the potential performance hit.
If you’ve implemented the steps above and are still dissatisfied with load time on some pages, the issue might be that they might simply contain too much content. Lengthier posts with high volumes of images and dynamic information will always take longer to process — consider breaking them up into multiple posts instead. Usually, this can be done with little interruption to the user experience.
You might not think of comments strictly as site content, but WordPress has to load your comment section on the page the same as your main content. If your comment sections are particularly active, you can save load time by paginating your comments. By placing comments on a separate page, you give the original page less content to load and let readers load comments on a post only if they want to.
Fortunately, WordPress lets you easily paginate your comment section: Navigate to Settings > Discussion, check the box next to Break comments into pages…, and set the number of comments per page (50 by default).
Alternatively, you can disable your comment section by unchecking Allow people to submit comments on new posts on the same screen.
– Like many aspects of running a WordPress website, speed optimization is your responsibility. Thankfully, there are several strategies you can implement to optimize your load time and provide the most satisfying, speediest user experience. It’s worth spending a bit of your time to save your visitors a lot of time.