How to Speed Up WordPress
4.8 (96.55%) 29 votes

In our age of rapidly improving technology, it has become an unspoken understanding that everything should be fast.

Checking emails.

Sending and responding to texts.

Watching videos.

These are just the basics, but as our tech-heavy society moves at a quicker pace year after year, we expect that tech to keep up.

If you manage a website, particularly one that uses the WordPress platform, you must make sure that your site moves as fast as your users.

Why?

A slow website will cost you a lot of traffic. If your livelihood depends on pulling as many people as possible to your site, then lost visitors is a significant problem.

Even if your site loads in three to five seconds, on average that’s two to three seconds too slow for the average web user. An impatient user leads to a bounce and lost conversion.

Skeptical that attention spans have shrunk that low on the internet? They’re even shorter than you think. According to new data:

  • 58% of smartphone users expect their mobile browsing experience to be almost as fast or faster than a laptop or desktop.
  • 49% of users give a website 10 seconds or less to load before bouncing from or abandoning the site
  • 47% of online shoppers believe a page should load in less than two seconds
  • 40% of those same consumers will bounce from a site if a page takes longer than three seconds to load

Less traffic, fewer page views, and, if yours is a WooCommerce website through WordPress, reduced sales.

As we said, if this is your living, these are numbers you should take very seriously. As our tech moves faster and becomes more robust, users will expect the websites they read or shop to run at a similar pace.

So just how do you speed up your WordPress website and ensure it captures your readers and buyers and keeps them coming back?

Actually, there are quite a few steps you can take to get your site moving quickly. Before we jump to the tips, let’s determine just how slow your WordPress site really is.

Measure Your Current Site Speed

Measure your current WordPress website speed

If you want to know where you need to go, you first need to know where you are. Understanding how long your website currently takes to load helps you see if the improvements you end up making help, hurt, or are zero-sum.

You might need to adjust several areas before your site performance improves, so having a starting point is incredibly helpful.

Checking your site speed is easy with these three free services: Google PageSpeed Insights, GTmetrix and Pingdom. These speed tests are free and offer a ton of analytical data to help you zero in on slowdowns or bottlenecks.

Each site is informative, but I’d recommend Pingdom and GTmetrix over Google PageSpeed by the slightest of margins. Their letter and number grading system for specific performance metrics are beneficial in giving you a scale  to measure future speed improvement.

The Main Troublemakers for Slow Websites

Now that you’re armed with how fast your WordPress website is, how do you make it go faster?

Depending on the complexity of your WordPress website and the number of pages it contains, there are numerous tweaks you can make to improve load times and your end user’s experience.

We’re going to cover 20 ways to speed up WordPress. We’ll start off with the more serious and common causes of slow WordPress websites. After that, we’ll work our way through some minor on page changes you can make to optimize your website’s speed.

1. Upgrade Your Web Hosting

How to Sign Up with Bluehost

When you first setup your WordPress website, you signed up for web hosting.

While you could spend days upon days figuring out the good, the bad, and the ugly about all of your web hosting options, let’s try to keep it straightforward. If you want to read more, here’s a detailed guide on what web hosting is and how it works.

To be brief, a dependable web host is the main ingredient in getting the speed of your website right. 

There are a few things to be mindful of when deciding on a particular service, with the first being the difference between the types of hosting, from shared to dedicated hosting.

Usually, most beginners choose a popular shared web hosting provider like Bluehost, GoDaddy or WPengine.

These are excellent providers, and make for a great choice if you’re first getting started and a novice at hosting. But know that most likely you are using a shared hosting plan.

With shared services, your website sits on a server with numerous others. That means performance can suffer on your site if others on the same server overload with website traffic.

If the strain is too much, that server can crash and its lights out for your website even though you did nothing to create the issue.

If you do know what you’re doing and already have a relatively robust site with tons of traffic, then there’s a good chance you already have a dedicated hosting plan.

Taking the dedicated hosting route will require some advanced knowledge. Server knowhow, the associated good and bad tech, and recognizing how your hosting needs line up with your site are all required.

After shared and dedicated, two options remain. Both are quite viable if you lack a lot of hosting knowledge but understand enough to avoid the shared option.

The first is a Virtual Private Server or VPS. This can help you avoid the community aspect of shared servers, and VPSs often have a lot more tools to make the web hosting experience seamless.

Pricing can be higher, comparatively speaking, but automated updating and back up are just a few of the extras that can prove useful.

You can also go the route of managed WordPress hosting. This hosting is more tailored to the needs and requirements of WordPress and only hosts these sites.

With everything geared towards your WordPress site it indeed does make a difference in overall performance. Some limitations may exist, especially if security becomes an issue or one of your themes or plugins begin to drag speed downward.

Ultimately, it may be worth it to have your site parked with a service that knows the ins, outs, and needs of your website.

2. Pick an Effective Theme

Speaking of themes, make sure you are using one that is effective and won’t unnecessarily slow down your website. Just because a theme seems to be fresh and fantastic, doesn’t mean it’s going to perform that way.

While it’s important to find a theme that is going to highlight the end look and feel you want to achieve, be sure it’s clean and well designed to load quickly.

If you don’t need them, stay away from options that appear to have a lot going on.

Heavy animation, a cumbersome layout with static page after static page, or even one that seems great on the surface, but is buggy right out of the box should alert you to pick something else.

If you choose a theme but are unhappy with it, do not hesitate to switch as soon as a problem occurs, the potential loss of eyes to your site is not worth.

It’s entirely okay to have a simple theme.  WordPress has countless options, and we can assure you there are numerous ones available that capture both the speed and visual dynamics you are looking to achieve.

3. Optimize Your Images

The internet is a visual medium. Even the most sparse of websites will deploy a picture here and there to up their optics.

If you’re a photographer or require a site that is image heavy (a commerce site with lots of product pics, for example), then the combination of visual appeal and quick loading times is vital.

There are a few things in this area that can help improve your website’s load times without sacrificing your need for stunning photos that draw in your users.

Fast Photos Make Fast Friends

Pictures are fantastic pieces of content, and vibrant images can often turn good websites into great websites. But images can be a severe drag on a site’s speed performance.

As we’ve shown, a lot of internet users have little patience for sites that take their time to load. Half a picture is the same as no picture at all.

To address this, you will need to optimize your images for web display by compressing their size while maintaining their quality. There are two formats you’ll want to utilize for images, JPEG and PNG.

JPEG allows you maintain a decent quality level as the size is adjusted. PNG is a larger file size, even when compressed, and will load slower. Overall, PNG will provide a higher quality picture.

To compress the pictures, you can use software like Adobe Photoshop or Optimizilla to resize the photos yourself before posting, or you can use a plugin.

A few of the better plugin options include Optimus Image Optimizer, WP Smush, Short Pixel Image Optimizer, and ImageRecycle premium service.

Plugin with the Fastest Image Gallery

We mentioned photography earlier, and if that is the main draw to your website, you will need a fast and effective gallery to display images.

Three plugins provide the best resource with the first two, Envira Gallery and Foo Gallery, seamlessly interfacing within WordPress.

The third option, NextGen Gallery, employs its own interface and may be better utilized by more advanced users.

Be a Little Lazy

Have you’ve ever visited a website where the top image or images load first and then as you scroll down the page other images load as they come into view?

That’s LazyLoad.

LazyLoad serves two purposes by speeding up your page loads and saving bandwidth for users who may not scroll the entire page.

Three LazyLoad plugins to consider include BJ Lazy Load, jQuery Image Lazy Load WP and Rocket Lazy Load.

Unlink the Leeches

We all aim to have a successful website with compelling posts, valuable pages, and beautiful pictures. As you get into high-quality content territory though, nefarious internet folks seek to steal it.

Or more specifically leech it.

Referred to as hotlinking, this is the act of someone linking to your website images and effectively stealing your bandwidth. When one of their users views the images they hotlinked, the request passes to your web host’s server, not theirs.

If you are familiar with .htaccess, we suggest using the code below to shut off hotlinking.

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?mydomain.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ – [NC,F,L]

 

NOTE: Remember to swap mydomain with your actual domain name.

Conversely, you should avoid the practice of hotlinking yourself.

What may seem like a good idea to keep your website nimble, may actually slow it down if the site you’re linking images from is also slow.

4. Improve Caching

Caching, in its simplest networking terms, means storage for future use. For your website, this translates to saving a copy of your site on a user’s browser.  When that user returns, they only have to load newer data since the static information is cached.

As you can imagine, this has a tremendous impact on load time.

Three favored WordPress cache plugins to consider include: WP Super Cache, W3 Total Cache, and WP Rocket.

Beyond that, you can also choose to add Expires Headers.

With Expires Headers, a user’s browser determines when to pull files from your server or when they need to come from their browser’s cache.

To get this up and running manually, add the following code to your .htaccess file:

<IfModule mod_expires.c>
# Enable expirations
ExpiresActive On
# Default directive
ExpiresDefault “access plus 1 month”
# My favicon
ExpiresByType image/x-icon “access plus 1 year”
# Images
ExpiresByType image/gif “access plus 1 month”
ExpiresByType image/png “access plus 1 month”
ExpiresByType image/jpg “access plus 1 month”
ExpiresByType image/jpeg “access plus 1 month”
# CSS
ExpiresByType text/css “access plus 1 month”
# Javascript
ExpiresByType application/javascript “access plus 1 year”
</IfModule>

5. Utilize a CDN

Content Delivery Network, or CDN, is a handy tool, particularly if your WordPress site experiences times of high traffic volume.

If being hosted on a single server, your site can bog down at high traffic times as users ping that one server. Gridlock during peak use is a huge stumbling block that can turn people off from your website.

With a CDN, you summon the use of a network of servers that not only shares the visitor volume but can cut download times for far away users.

Consider the following scenario: Assume your web host’s server is in Charlotte, NC. At a high traffic time, your site could see web users from Dallas, TX, Missoula, MT, and Salzburg, Austria.

With the single server, all three users will suffer slower speeds during heavy traffic periods with the Missoula and Salzburg potentially crawling along due to the distance the data must travel.

The CDN, however, closes the gap by storing cached static contact on a network of servers. Users will route to the server closest to them.

For our example, the Missoula user may access your content through a server in Seattle or Denver. The Salzburg user could access your site from a server in Munich, Germany.

Top CDN options include MaxCDN, Rackspace, CloudFlare, CacheFly, and WPPronto.

6. Get Rid of Unnecessary Plugins

Now granted we are handing out quite a few suggestions on plugins that can help speed up your WordPress site. All plugins, however, do not come with optimal performance in mind. Knowing the good from the bad is vital to maintaining a speedy website.

Plugins can create slowdowns, since when in use, they generate additional pings to your web host’s server. Specific plugins can also be a drain and liability when it comes to memory or even security.

And of course, to rid yourself of the unnecessary plugins, here are two more plugins that will prove helpful in choosing which ones to purge: PS Plugin Performance Profiler and WP Performance Profiler.

Both of these will help identify underperforming plugins that you can eliminate from your site. Once your evaluation is complete, merely uninstall these plugins as well.

In addition to unnecessary plugins, steering clear of large plugins can also do wonders for your website speed.

Yes, there are some great tools out there for creating picture galleries and vibrant headers, but ask yourself if they are worth sacrificing performance.

Large plugins can create a ton of extra files for your site to sort through. Do your homework, and if there is a feature or tool you really need, there may be a more efficient plugin available.

7. Optimize the WordPress Database

The more you utilize WordPress, the more waste and trash you’ll generate. Just like physical refuse, you’ll need to clear it out from time to time to keep your site from drowning in unnecessary data.

We recommend two different plugins to help manage and clear out the junk in your site.

The WP-Sweep plugin targets unnecessary items like revisions or deleted posts or tags.

The other option is WP-Optimize which can be set to clean out the database on a schedule (while leaving behind what needs to remain).

8. Enable Gzip Compression

Compressing your website may be one of the most effective ways to add extra juice to your web pages.

Much in the same way ZIP works on your computer or laptop, Gzip reduces your website’s files by compressing them.

When a someone visits, the site unzips, and your content is available to the end user.

Efficient and an incredible time saver, you can install Gzip through your .htaccess file using the following code:

<IfModule mod_deflate.c>
# Compress HTML, CSS, JavaScript, Text, XML and fonts

AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
AddOutputFilterByType DEFLATE application/x-font
AddOutputFilterByType DEFLATE application/x-font-opentype
AddOutputFilterByType DEFLATE application/x-font-otf
AddOutputFilterByType DEFLATE application/x-font-truetype
AddOutputFilterByType DEFLATE application/x-font-ttf
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE font/opentype
AddOutputFilterByType DEFLATE font/otf
AddOutputFilterByType DEFLATE font/ttf
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE image/x-icon
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml
# Remove browser bugs (only needed for really old browsers)
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
Header append Vary User-Agent
</IfModule>

If you prefer a plugin method, GZip Ninja Speed Optimization is a simple but useful tool for file compression.

Simple Website Changes to Test

These items are easy to implement and manage and usually done in less than fifteen minutes. If your site is more straightforward, with fewer plugins and content, it will take even less.

Whereas these items may not provide the most substantial gains in load and response times, they will help clean up the overall session time for your visitors.

9. Update WordPress

As with all software, keeping WordPress up to date gives you the latest tools and capabilities to ensure your website is running smooth.

Bug fixes, the latest security patches, and new features can all be part of a WordPress update that helps your site run smoother and more efficient. Not just for speed though. If you fail to regularly update your website you can leave yourself, your site, and your users open to security risks and attack.

Next to speed, or lack thereof, an untrustworthy site will rapidly shed current users and keep new potential consumers away.

On a similar note, maintain the newest updates for your theme and plugins as well. Whether you have one, two, or ten plugins, you must keep them maintained and current.

Same goes for your chosen theme, regardless of which WordPress version you’re running. Not all themes are designed to run fast and ignoring regular tidying up will render them very sluggish.

10. Host Your Videos Elsewhere

We will cover static images shortly. First though, if you have pictures that move, then there is a pretty quick and easy way to populate your site with the videos you want without putting you in the slow lane.

Videos eat up a lot of bandwidth. Since you are probably not nipping at the heels of Amazon or Google just yet, you will want those videos off your website.

In other words, let someone else do the heavy lifting.

YouTube, Vimeo, and others like them are setup to handle video bandwidth. Yes, WordPress does let you upload videos directly to the site. But they also have an embedding option to copy the URL from YouTube or Vimeo and paste it directly into your site’s posts or pages.

11. Parse Out Long Posts and Compress Comments

Long-form posts are usually a great read and a reprieve from the typical 300 to 500-word quick hit posts to which we’ve grown accustomed.

But they can weigh down your site’s load capabilities. This is particularly true with image heavy pieces.

For longer posts, it may serve you well to spread the articles over several pages.

To do this, add <!-nextpage-> in the post at the point you want to split it up.

Additionally, if your site receives a lot of comments, you may consider splitting those across multiple pages as well.

For this update, go to Settings > Discussion and select the checkbox next to “Break comments into pages.” There are a few customization options below that as well.

12. Be Selectively Social

While you may feel the need to be plugged into as many social circles, groups, and networks as possible, for your website, it’s not wholly necessary.

In fact, too many social sharing buttons on your website can keep it from loading efficiently due to their use of Javascript.

If you must have them, limit them to just a few vital ones.

13. Shut Off Pingbacks and Trackbacks

No, we’re not referring to the pinball machine at the local tavern. This references how WordPress engages with other sites that use pingbacks and trackbacks.

Whenever a page or post from your website gets a link, requests get generated which can undermine site speed, among a few other things.

Shutting this feature off is easy.

Head to WordPress, then WP-Admin > Settings > Discussion and deactivate the Allow Notifications from Other Blogs option.

14. Spam The Spam

If your website has sizeable traffic volume, there’s a good chance you are getting your share of spam comments throughout the site.

A plugin like CleanTalk can assist in keeping the additional commentary to a minimum and freeing up valuable space.

15. Say Goodbye To Avatars

Along with spam, there’s an excellent chance your comment sections also include avatar images for each poster.

While this can be a neat, user-friendly feature, it may be costing you load time.

Gravatar is WordPress’s way of sorting these images out, and there is an easy way to turn the feature off.

Simply head to Settings > Discussion and at the bottom of the page next to Show Avatars, unselect the box.

Additional Ways to Increase Website Speed

We’ve already covered a lot of the highlights to upping your websites speed. If you want to squeeze even more from your WordPress site there a handful of other options to consider.

These items possess a higher degree of difficulty requiring a bit more effort and know-how on your part to make successful changes. As with most things related to WordPress, a novice should be able to handle the majority of these tweaks.

16. Use Excerpts

Using excerpts instead of showing full articles can serve your site well for a couple of reasons.

First, having a full article on your homepage will slow the load time down considerably. This is true if you have similar postings elsewhere, such as an archive page.

To fix this, head to Settings > Reading and in the selection “For each article in a feed, show” choose Summary versus Full Text.

The second advantage to doing this is increasing your page views throughout your site. If the full content of an article displays on your homepage, it leaves minimal incentive for a user to click further.

17. Reduce HTTP Requests

Some estimates reflect that over 75% of the load time for a given web page is from images, scripts, and stylesheets. With that in mind, consider that for every one of those items an HTTP request is required.

It bears to reason that the more items on a page, the longer it takes the page to load.

You can limit the HTTP requests in several ways, but first, it’s important to know the total number you’re dealing with. You can see this through the developer tools in your browser or a web resource like Pingdom, which we spoke about earlier.

As you fill your website with different measures of content, you are also adding requests. A good rule of thumb is for every piece of material added you add one request.

This can get cumbersome very quickly, particularly if your site is heavy with images.

A few ways to better manage this includes lowering your posts per page or reducing archived images.

To adjust the posts per page, go to Setting > Reading and lower the number to the right of “Blog pages show at most.” Anywhere between five and eight will suffice.

We touched on it prior, but this is another area where reducing plugins will help. This is really a good idea if some of the plugins in question impact the initial web pages.

18. Minify and Concatenate

While the words may be somewhat uncommon in everyday vernacular, minification and concatenate of your CSS and Javascript files are vital elements for increasing your WordPress site performance.

Minification rids HTML, CSS, and Javascript of redundant elements during page loads. These items include comments and white space and new line characters.

Concatenating files means you are linking them together to create a single file to aid improving download speeds. As we discussed above the with HTTP requests, the smaller the number of files, the lower number of requests.

19. Keep Post Revisions to a Minimum

Revisions to your website posts can occupy a lot of space within WordPress. They can also impact some searches if they have to comb through useless data points.

In your wp-config.php file, you can keep the revisions to a minimum by entering the following:

define( ‘WP_POST_REVISIONS’, 4 );

This tells WordPress to keep the four most recent revisions while getting rid of any older versions.

20. Turn On HTTP Keep Alive

When a user visits your WordPress website and wants to download a file, their computer or laptop requests your server for permission to do so. Every time they look to download another file, another request is necessary.

This constant seeking of permission can cost you bandwidth and in turn slow things down.

With Keep Alive on, your server lets the user download files without the need to gain permission over and over.

To activate Keep Alive, again head to your .htaccess file and enter the following:

Header set Connection keep-alive

Keep the Pedal to the Metal

Now that you’ve made your minor tweaks (or significant overhauls) to your website, it’s essential to continue monitoring your site for ongoing improvements as necessary.

Depending on the amount of traffic your WordPress website receives, it makes sense to complete a “health” check every four to six weeks for highly robust sites. If yours is smaller and less trafficked, every two to three months should suffice.

Regardless of the frequency, understand that these are not one time suggestions or singular improvements. Maintaining a fast loading website that keeps current users and attracts new ones is an ongoing endeavor.

Before we conclude, we should clarify even with all of the great tips and ideas above, speed is not a magic elixir that will fix all issues your website may have. As with anything, the right balance between performance and content should be your top priority.

However, if you know you’ve got something great on your hands, and still seem unable to get your site to the next level, improving load and response times may be the key to unlocking more users.

Get Faster Every Day

Maintaining your WordPress web or eCommerce site is more than just updating content, keeping your product line fresh, or offering new ways to interact with your site users.

Keeping the behind the scenes mechanisms and systems current and up to date are equally important, perhaps even more so. When it comes to the speed of your site, there is no better way to keep your users and customers happy than giving them a fast, engaging place to surf.

Regardless of if you’re touching things up with a few tweaks or completing a major overhaul, keep your website speed first and foremost in any improvement. Don’t let a split second cost you page views or worse, income.

Our world keeps moving at a breakneck pace, getting faster every day. By optimizing your website to run at optimal speed at all times, you will ensure that you and your hard work will never be left behind.

How to Speed Up WordPress

Written by Alex Jasin

Last Updated: May 30, 2018