Speed is of the essence in today’s world. Most people are stretched for time and appreciate fast and efficient service. Imagine the following scenario. If you are waiting for a bus and it is running late, you will start to question the bus company’s reliability and use a competitor’s service next time. The same applies to internet browsing. Did you know that on average, if a website visitor has to wait for more than two seconds for a site to load, they will abandon their search and look elsewhere? (see the following survey carried out by
How to Measure Performance
So where should you begin? Start by figuring out how long it currently takes for your website to load. Bear in mind that each page is different, and the loading speed depends if the page is cached, page size, how many requests the site generates and if it is hosting static or dynamic content.
Usually, the homepage of a website is a good starting point. There are various tools on the web to help you test load time, some of which are detailed below:
Tips on Speeding up a WordPress Website
Below is a handy and straightforward list of what you can do to speed up wordpress and your site to reduce load times and keep your visitors captivated.
#1. Hosting
One of the more obvious reasons why your site may not load quickly is because your website is set up on a shared hosting plan. It may seem like a cost-effective idea to sign up with a provider that offers unlimited bandwidth and space. However, shared hosting can deliver an inferior performance because you are sharing the same server space with an unknown number of other websites. Memory, hard drive space, CPU speed, and bandwidth are not always distributed evenly. For example, a faulty site may use up most of the resources available, leaving the remaining users with not much to play with.
Another option includes a VPS (Virtual Private Server) which is shared but has fewer users and evenly distributed resources. Therefore, it doesn’t matter if one of the sites fails, because the rest of the sites will still have the same amount of resources available to them.
Dedicated servers that are used solely to host your site are fairly reasonably priced. You can purchase dedicated cloud servers from companies such as SiteGround, DigitalOcean, Amazon Web Services and Cloudways. You may have to set these servers up from scratch, but the good news is that some can be set up with an easy ‘click and launch’ option.
The final word on hosting is that you need to consider the properties of your server and this includes performance and location. Obviously the closer the server is to you, the faster you will be able to receive information from it.
#2. Use a Solid Theme and Framework
Each framework and theme in WordPress is coded differently, some better than others. For example, using a lightweight theme like a Genesis child theme would be a great option since they load without delay.
You can also purchase themes from popular marketplaces, such as ThemeForest. However, some developers continually add new features to make more sales without taking care to ensure that their code still runs effectively.
#3. Caching Plugins
A caching plugin can help you improve your site’s performance, especially if you operate a content-rich website with lots of static files (CSS, JavaScript, and images). Caching involves storing portions of your site so that it is only necessary to load them once, instead of loading them each time a visitor browses your website.
A popular plugin like WP-Rocket takes care of most of the heavy lifting when optimizing a WordPress installation. The plugin supports an array of features like page caching, GZIP compression, browser caching, Lazyload, minification, concatenation and even supports CDN integration and doesn’t take much longer than 15 minutes to set up.
#4. Cut Down on HTTP Requests
Each time that a visitor looks at one of your web pages, files relating to that page are sent to that person’s browser including images, JavaScript and CSS files.
By simplifying the design of your site and reducing the number of objects on your site’s pages, you can cut down on the number of HTTP requests that are needed to display a page. This, in turn, will speed up your website’s load times.
#5. Compress your Images
Reducing the size of your images without compromising on quality will enable faster response times.
Although you can manually optimize images in Photoshop, a good option is to use a plugin directly from the WordPress dashboard, such as EWWW Image Optimizer, WP Smush It or TinyPNG.
#6. Minify HTML, JS and CSS files
If you use the Google PageSpeed Insights tool, you might be prompted to minify your JavaScript and CSS files. Minification refers to the process of removing unnecessary or redundant data without affecting how the resource is processed by the browser – e.g. code comments and formatting, removing unused code, using shorter variable and function names, and so on. By doing so, you can improve your site’s responsiveness.
You can manually minify your files (see this article for more info). Alternatively, most speed optimization plugins, including the likes of WP-Rocket and W3 Total Cache support the minification of CSS, JS, and HTML files.
#7. Use a CDN
Distance is key when it comes to website load times. If a person who visits your website is from the other side of the world, then your website will take longer to load then it would for a visitor who is in close proximity to your server.
This problem can be addressed by using Content Delivery Networks (CDNs). A CDN is a network of servers that are strategically located across the globe with the purpose of accelerating the delivery of your static web content such as your images, CSS and JS files. The servers on the network store a cached copy of your site’s content. Therefore, when a user makes a request to your site, assets will be served from the closest server on the network.
As a result, your site may see improved performance since your content is closer to your viewers. CDNs are especially helpful for websites with international audiences.
#8. GZIP Compression
GZIP is a file format and a software application used for file compression and decompression of files.
We are mainly referring to HTML, CSS and Javascript files, GZIP does not compress images.
Enabling GZIP compression can help reduce the size of your webpage, which can significantly reduce response time and bandwidth usage.
To enable GZIP compression, add the following code to your .htaccess file:
# 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
Alternatively, you can use a plugin, such as GZIP Ninja Speed Optimization.
#9. Clean up your WordPress Database
With our database, we want to be as efficient as possible. Remove any unnecessary data to free up as much space as possible and reduce the size of any backups. Don’t forget to delete fake users, spam comments, revisions, previous versions of your content and out of date plugins that impact your database.
#10. Keep External scripts to a Minimum
It is best to keep the number of external scripts to a minimum on your web pages because they definitely increase your overall loading time. Try to keep the essential ones, such as Google Analytics and Google Fonts. Other popular third-party scripts include the Facebook Pixel, FontAwesome, Hello Bar, and Hot Jar.
#11. Disable Pingbacks and Trackbacks
Running a WordPress installation with trackbacks and pingbacks enabled can put a strain on your server resources. Each time someone links to your site, requests are generated back and forth from installation to the other. When your site receives a link, you will be notified of the referral. Although this may seem like a cool feature, it’s not necessary since you can use Google Search Console (among other tools) to keep track of your site’s links.
If you want to turn pingbacks and trackbacks off do so in WP-Admin >> Settings >> Discussion and deselect ‘Allow link notifications from other blogs (pingbacks and trackbacks) on new articles.’.
This feature is also often misused when targeting a website with DDoS attacks.
#12. Disable Hotlinking
By disabling hotlinking, you can prevent someone else from stealing your server resources.
For example, instead of someone saving a picture and uploading it to their server, they decide to link to the same image on your server, stealing your bandwidth.
You can prevent this by amending your .htaccess file with the following code:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?example.com/.*$ [NC]
RewriteRule .(gif|jpg|jpeg|bmp|zip|rar|mp3|flv|swf|xml|php|png|css|pdf)$ - [F]
Make sure to replace example.com with your domain.
Conclusion
The aim is to keep your website content engaging while applying some of the tips above to ensure your pages load in a reasonable amount of time. By doing so, you will create a vastly improved experience for your website visitors!