An Easy-to-follow Guide to Speed Up WordPress Websites for Free

speed up wordpress to make it run faster

Summary: WordPress powers around 20% of all websites, including this All Things Web blog you are reading. However, owing to the way it is coded, out of the box WordPress websites are not fast enough. This article provides 14 of ways to speed up WordPress websites, empowering novices and WordPress ninjas alike to gain marked improvement in site speed.

Article Highlights

Why site speed is important?

Site speed alone is a life-and-death factor affecting whether your website will ever be visited.

  1. A whopping 40% of visitors will abandon a site that takes more than 3 seconds to load on desktops and 5 seconds on mobile devices. When you have added several plugins and chosen a free template to the WordPress website without optimization, more than 3 seconds of loading time is very likely.
  2. Search engines will also lower your rankings on search engine result pages if your website takes too long to load, especially if the search is done on mobile devices.

These two factors combined will affect whether your website can be found on search engines and, even if found, whether visitors will actually see your website. If you want more traffic and more quality lead to your website, site speed is definitely a crucial aspect you would want to look into. Google has provided a PageSpeed testing tool for webmasters to assess their website speed in Google’s eyes. Your web page will get 2 scores based on the criteria for desktop and mobile. A similar too is Pingdom.

I hear you are asking: “What can I do to speed up my WordPress website?” Although tools like Google PageSpeed also offers tons of suggestions for improvement, your question is still unanswered. Luckily there are lots of plugins and quick fixes to implement the recommendations.

What factors affect site speed?

We need to look at what happens for between the visitor’s browser and the web server. When a visitor go to a page of your website, the WordPress runs through a series of internal files and make hundreds of functions available. It then loads all the plugin files for adding more functionalities. Afterwards, the theme files are loaded. WordPress then queries the database to get the appropriate contents and generate the codes and send to the browser of the visitor. The browser will try to render the visible portion of the page while the codes are downloading if the codes are written in a way that is not obstructive.

Speed Optimization Techniques to Speed Up WordPress

These are relatively easy techniques that average WordPress users without coding knowledge will be able to implement:

Database and House Cleaning

1. Delete spam comments

Spam comments takes up a large chunk of the database space, thus slowing down every database query. Delete all spam comments as soon as possible.

delete spam comments

2. Stop spam comments

The plugin Akismet, which automatically detects and deletes spam, is installed in all new WordPress installations by default (which is often the first plugin in the list). To get started: 1) Activate the plugin, 2) Sign up for an Akismet API key, and 3) Go to your Akismet configuration page, and save your API key. It is free for non-money generating blogs.

3. Delete post revisions

WordPress will save all the revisions of every post you have. That often means you have 20+ slightly different entries of the same post in the database. The sheer amount of these revisions, which have nearly no use in most case, drag down the speed of each database query. You may install the plugin Revision Control to help doing this.

revision control plugin

4. Delete plugins not longer used

The more plugins you have, the slower the WordPress website will get. If you have installed plugins that no longer needed, delete it completely will certainly help the site speed. However, when deleting the plugins, related datas stored in the database will normally not be deleted automatically. In this case, you will need to empty/drop tables as described in the next step.

5. Optimize your databases

Optimize databases? That would need a lot of technical skills. Fortunately, there is always a plugin to do the hard work for you, WP-DBManger is the savior here. Remember to back up your database before carrying out the following steps. In the menu, go to Database > Backup DB and click the ‘Backup’ button. Then go to ‘Optimize DB’ and ‘Repair DB’, ‘Empty/Drop Tables’.

WP-DBManager Plugin

Assets and Images

6. Combine CSS and JS files to reduce HTTP requests

In the web traffic, the less the number of linked files, the better. JS & CSS Script Optimizer will serve the purpose well. It will also help to put all scripts to the footer position to allow browsers to begin rendering the visible portion of the page unobstructively. This is the ideal solution if you are not able to switch to a fast theme.

combine css & js

7. Optimize images

Optimizing images means squeezing out any unused bits of the image file which often results in a drop of 50% of file size. For Mac users, ImageOptim is the definite choice. May use FileOptimizer on Windows. A less preferred way is using the WP-Smushit plugin to compress images automatically as it is very slow and a bit buggy.


8. Defer loading of images until visible

For pages with many images, not all images will be visible at once. If we load only the images currently visible and load other images on demand, the initial download size will be much smaller as most of the bandwidth is used up by images. The plugin Crazy Lazy does exactly this. Just install and activate it, no need to configure.


9. Use a fast and reliable theme

The theme should be written in a way that aids fast downloading and rendering of the visible contents, for example, the CSS files should be put in the header while all javascript files should be put just before the closing of the body tag. The design should also be responsive as this is recommended by Google for mobile viewing. Properly written theme will get you a head start with website speed out of the box. Paid themes are usually considered better quality than free themes although some free theme are well crafted, e.g. Montezuma which is both responsive and easy to customize.

10. Enable caching of website

What is caching? Caching allows your website to show a saved version of the page contents without database queries. You can enable caching easily by installing the WP Super Cache or W3 Total Cache plugin.

W3 Total Cache

11. Find a fast and reliable web hosting provider

The response speed of the the web hosting provider will directly affect your website speed. If the web server only responds 2s after receiving requests, you will only have 1s to send your website files before a visitor will abandon your website. Always test for speed before signing up a web hosting provider.

12. Use a Content Delivery Network (CDN)

A CDN can be considered as multiple web servers hosting multiple caching copies of your website contents at different locations throughout the world. When a visitor tries to visit your website, the CDN will determine which server is fastest in delivering the website contents and act accordingly. Cloudflare provides a free CDN solution with easy setup. After signing up with Cloudflare, you will only need to go to your domain registrar panel (preferred) or your hosting panel (not preferred) to change the DNS records to the ones provided by Cloudflare and you are done with it. CDN will speed up your site considerable internationally. An added benefit is that Cloudflare will also protect your website from malicious threats and provide accurate analytics as it records the traffic server-side.

cloudflare analytics

13. Enable HTTP compression

When enabled, HTTP compression will try to compress the files before sending, which normally results in 20-30% drop in file sizes. Install the WP HTTP Compression plugin to enable this feature to speed up WordPress website with a simple step.

14. Enable browser caching

This is for the expert users as it involves editing the .htaccess file. Go ahead if you have previous experience in editing .htaccess files and add the following code. max-age is the maximum period of storing and using the local cached files without retrieving them from the server again. must-revalidate specifies checking with the server to see whether the files are updated is needed.

# Turn off ETag
Header unset ETag
FileETag None

# 480 weeks
<FilesMatch “\.(ico|pdf|flv|jpg|jpeg|png|gif|swf|eot|woff|ttf|svg)$”>
Header set Cache-Control “max-age=290304000, public, must-revalidate”

# 1 WEEK
<FilesMatch “\.(xml|txt)$”>
Header set Cache-Control “max-age=604800, public, must-revalidate”

# 1 WEEK
<FilesMatch “\.(html|htm|js|css)$”>
Header set Cache-Control “max-age=604800, must-revalidate”


With the above 14 simple yet effective steps to speed up WordPress, your website should now load much faster and the SEO would increase drastically.

Support website running for FREE, thanks!

If you find this post helpful and if you are thinking of buying from Amazon, please support the running cost of this website at no extra cost to you by searching and buying through the search box below. Thank you very much for your help!

Edward Chung

Edward Chung aspires to become a full-stack web developer and project manager. In the quest to become a more competent professional, Edward studied for and passed the PMP Certification, ITIL v3 Foundation Certification, PMI-ACP Certification and Zend PHP Certification. Edward shares his certification experience and resources here in the hope of helping others who are pursuing these certification exams to achieve exam success.

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *