WordPress is the most popular Content Management Software to build websites at this time. As per Wikipedia WordPress was used by more than 26.4% of top 10 million websites as of April 2016.

By the way this figure is increasing day by day.

Why WordPress is so much popular

WordPress is easy to use. If you have a little bit of knowledge about CSS and HTML then it is an additional advantage for you.

Gone are the days when you need to wait for website designers to code for you. Now you can just choose themes according to your need and install in WordPress.

Also there are thousand of WordPress plugins which you can install according to your need.

Why your WordPress site is slow

According to data tracked by HTTP archive the average size of a webpage is 2.1 MB nowadays which is more than double the size which it used to be 10 years before.

Images, Videos and scripts i.e Java scripts cover more than 3/4 of the total bytes of a webpage and the tend is growing.

site breakdown

Nowadays a site has more functionality added such as social sharing, video sharing, different java scripts. If you browse WordPress plugins library you can find thousand of plugins for every function.

There are more custom fonts developed. The webpage looks visually attractive because of the scripts. But these all are adding extra bytes to your webpage due to which your site is slowing down.

How to make your WordPress site faster

If you browse through the internet you will see literally hundreds of ways to make your WordPress site faster.

In this article I will try to give you genuine ideas about how to make your site faster.

Below are some ways to make your site faster

1. Choose a Good web hosting server and a good plan.


If you want to build a 20-30 storied building then what is the most important criteria for that. Of course you need to have a solid foundation.

Similarly if you want to have a site which loads faster then of course you need to choose a good hosting server and of course a good plan.

If you are serious about blogging then don’t choose a shared server. In shared server a same resource is divided among people. This slows down your site.

At least least you need to choose VPS (Virtual Private Server). If you have money then dedicated server is the best.

If you browse through the internet for suggestion regarding starting a blog then you will see people recommending Shared hosting server. I don’t agree with it.

Of course if you are not serious about blogging then it is OK. But if you want to be a professional blogger then you should try to get dedicated server.

In dedicated server you have your own server which you can manage yourself. Your resources are not divided.

What are the criteria for choosing a web hosting server?

Not all servers may be good. So below are some of the recommendation which you need to follow:

a. The server should have a good reputation. Browse through the internet to look for reviews.

b. 99% uptime.

c. 24 x 7 technical support.

d. Check if it can provide good bandwidth and disk space.

Some of the good hosting servers are Bluehost, Dreamhost, Godaddy

2. Professional Theme

If you are serious about blogging then you should choose professional theme over pirated themes. There are two reasons for that according to my understanding.

First pirated themes may have malicious code. This will increase the security risk for your blog.

Second professional themes are coded by professionals. They know, I believe, what makes a site slow. For example too many javascript, css files or bad code.

So, they keep those things in mind while creating a theme.

3. Less plugins

The advantage of using WordPress is there are thousand of plugins for every occasion. You will be tempted to install plugins believing that they will help you.

But plugins are one of the most important culprit for slowing down your site. Especially plugins which are coded badly.

Plugins are bunch of javascript codes. More number of javascript, more HTTP request, thus it slows down your site.

Use P3-profiler plugin to find out which plugin is causing more impact and remove it if not necessary.


I don’t totally rely on this plugin only, what I do it I will test each plugin manually.

Remove a plugin and analyze your site in Gtmetrix and Google page speed insight to check if it makes any difference.

You can also use pingdom to check the site speed.

4. Image optimization

If you see the content breakdown of a webpage on the top, you can see a large portion of a page is occupied by images almost 60%.

So, it is very much necessary you optimize your images before uploading them.

You can go to Photoshop to optimize your image.

  • Open your picture in Photoshop.
  • Click on File – Export – Save for Web (Legacy).
  • Now for quality you can select “Medium” and the percentage as “50“.
  • Select “Optimzied“.


  • For image dimensions try to have a smaller picture if possible as it reduces the size of the image.
  • Save your picture as .jpg format as it is the most suitable one for the site.

You can use plugin such as Wpsmush for WordPress which compresses the images.

You can also use CDN (Content Delivery Network). What it does is instead of depending on your single server, you can use third party sever CDN to host your static files such as images.

CDN have data centers around the world. So, if anyone sitting from Asia request your website hosted from America, then CDN will display the cached version of the image from its data center located in asia.

Unless you have a huge traffic to your site it is not necessary for you to use CDN service. Instead using a dedicated server will be fine.

5. Minify Javascript and CSS

More number of Javascipt and CSS files, more number of HTTP request will be there for your site. Whenever a user ask for your site then whatever contents you have in your site, javascript, css, images, videos has to be requested and loaded.

Each request is a single HTTP request.

So, more number of javascript and css files, more number of HTTP request, which makes your site slower.

So, the solution is to combine all the javascript and css file into a single one if possible.

If you can’t do it manually then there are plugins for you like Better WordPress minify.

This plugin will combine both Javascript and CSS files together.

6. Moving Javascript code from above the fold to the bottom

Whenever your site loads then it starts to load from the top.

So, if you have javascript code at the top then the browser has to fetch and execute the javascript code which takes time.

So, you need to move the code to the bottom of the page.

Below is the code to move the javascript to the footer which you need to place at the bottom of “functions.php” file of your theme.

// Custom Scripting to Move JavaScript from the Head to the Footer

function remove_head_scripts() {
remove_action(‘wp_head’, ‘wp_print_scripts’);
remove_action(‘wp_head’, ‘wp_print_head_scripts’, 9);
remove_action(‘wp_head’, ‘wp_enqueue_scripts’, 1);

add_action(‘wp_footer’, ‘wp_print_scripts’, 5);
add_action(‘wp_footer’, ‘wp_enqueue_scripts’, 5);
add_action(‘wp_footer’, ‘wp_print_head_scripts’, 5);
add_action( ‘wp_enqueue_scripts’, ‘remove_head_scripts’ );

// END Custom Scripting to Move JavaScript

Remember to have a backup of “functions.php” file before editing. If you get “Internal server Error code 500” then you can upload the backup file using FTP server.

You need to go to your themes folder using FTP and upload and replace the new “functions.php” with the old one.

7. Customizing your homepage

If you are using WordPress then you need to have less number of posts on the main page. Instead of 10 post as WordPress default post, opt for 6-7.

This will decrease the time to load your page.

Also instead of showing full article on the main page, show excerpt of the article.

No flash files and javascript rolls on the homepage.

8. Use Lazy load plugin if you have more photos and videos

If your site consists of large number of photos or videos then use “Lazy load plugin“.

What this does is it will load only the pictures or videos which are above the fold.

So as the user scrolls down images and videos will be loaded.

Imagine if you have 100 of pictures and videos on the main page and if all the videos and pictures have to loaded all together it will take time.

9. Reduce the no. of HTTP request

Make your site simple. More number of images, videos and javascript on the site. More time it takes browser to load.

All the single element of the site has to be requested from the server and loaded one by one which is called HTTP request.

So, more elements on the main page more time it takes to load.

10. No redirects for your site

Make sure that you have the same site for each devices.

Make it responsive so that it fits on all the devices. People are using more and more device such as mobile and tabs compared to PC or MAC to view the site.

You shouldn’t use one site for pc, another site for mobile and then another one for tab.

In that case you need to redirect your visitors to the site suitable for each device.

This increases the loading time for your site.

11. Use Gzip compression

Whenenver your browser sends a request to the server then the serve responds and sends back the file.

Imagine if your page is 1 mb then it takes time for the server to deliver the file.

What if the server could compress and deliver those file. This will make the process faster as it reduces the size of the file.

For this purpose you have to use Gzip compression.

Below are the two ways to use Gzip compression.

a. If you are using WordPress then copy the code below and then paste it in .htaccess file.

# compress text, html, javascript, css, xml:
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript

# Or, compress certain file types by extension:
<files *.html>
SetOutputFilter DEFLATE

b. The other way is to use plugins for WordPress such as “Check and enable Gzip compression

Once you have used gzip compress then you can check it whether the site is using or not by going to check gzip

If you have Gzip enabled then you will see something like below.


12. Optimize your WordPress database

When you use WordPress than in the long run there will be files which are stored in your WordPress database that you don’t need.

They just take the space.

For example when you are doing revisions and saving drafts they get stored in the WordPress database. You don’t need those drafts when you publish the article.

In WordPress there are plugins such as Wp-Optimzie which maintains your database.

It is better to backup your database before optimizing your database so that in case something goes wrong you can restore.

Sometimes you may get error when you use this plugin and you may not be able to log into WordPress admin area.

In that case you can use a FTP client such as File zilla to delete the plugins from your theme


Whatever tips and tricks may be there to optimize your WordPress site, ultimately it boils down to the fact that what kind of web hosting package you have chosen.

If you have a dedicated hosting server, a good professional theme and CDN as an optional for hosting your static files such as images, videos then you need not worry about the rest.

I have seen sites with many javascript and css files but they load fast since they use powerful dedicated server.

WordPress infographic