It’s no secret that a fast loading site starts with well written and optimized code and images, but it also depends very much on the platform the site is running on, and how the code and images are being served.
If you’re working with a site thats already performing well and would like it to be faster, or maybe its not so fast and you need help go speed up a website, have a look at some of the options below.
These are:
- Image Optimization
- Caching
- Content Delivery (CDN)
- Hosting
Image Optimization
Ideally images are optimized for the web before they are loaded to the site. They should be sized appropriately, and compressed where possible to make for smaller, fast loading files.
If you’re unsure how to do this though, or you have have a number of people who may be adding images to the site and you’re not confident that they’re all optimizing before doing it, there are plugins that can help by optimizing image after upload.
Here’s some we’ve used (there’s many more). ReSmushIt is free, Imagify & Shortpixel have small fees but also will auto convert your images to newer formats (like webp), if the browser viewing the page can support it.
Caching
Caching is the process by which pages are pre-built by the website and saved (temporarily) so that they can be delivered quickly to website visitors, and it can speed up a site tremendously. (This is site caching, not to be confused with browser caching).
If you think about the way WordPress – or any content management system – works, everything is stored in the database. When a visitor goes to view a page WordPress says something like “ok, a visitor wants to see the about page. Let’s check the database for the text and images that should appear on that page and put it together”. Then it creates the page, grabbing all of the text and images, and shows it to the visitor. Every time someone visits a page – even the same page – this has to be done.
Caching is the process by which the the pages are pre-built ahead of time, so when someone visits a page it’s already been created. So when someone asks for the about page (for example), it’s already been created. The cached versions of page are typically updated anytime the page is edited, and also every few hours just in case.
There are a lot of different caching plugins. We like WPRocket. It’s a paid plugin but is fairly simple to configure and plays nicely with other performance tools that we often use (WooCommerce, BunnyCDN, Imagify).
Some options are:
Content Delivery Network (CDN)
A CDN helps speed up your site by copying images and other files (javascript files, css files, etc.) from your website to very fast servers that may be geographically located closer to the website visitor. So your hosting server ends up delivering just the basic code, and the cdn delivers the other files. This reduces load on your server, allowing it to handle more, and leverages the CDNs very fast servers to show your site more quickly.
We like BunnyCDN. It’s easy to set up and relatively inexpensive. Also if your site is mostly for North American clients, you can turn off distribution to Europe, Asia, etc. and lower your rate.
Some options are
- BunnyCDN
- RocketCDN (by the folks at wprocket)
- Cloudflare (they also have a free proxy service not mentioned in this article, but it also helps with performance.
Hosting
The right hosting can also make a big difference. There are hosting providers that are optimized specifically for WordPress, some of which include service like caching and cdn. You might give up some control over the setup or customization ability, by should gain from their tuned and optimized platform.
Shared hosting providers, or dedicated servers can work well as though, particularly when you add in caching, image optimization and a cdn. I would avoid very cheap hosting services though ($3/month, $10/month, etc.). At those rates they may pack as many accounts onto a server as they can, leading to sub-par performance, resource outages, etc.
We use and support clients with all varieties of hosting. We have our own servers where we host client sites and we also have a reseller account with one of the dedicated providers, where we host some sites. We also support a number of clients with their own hosting service. Typically we’ll recommend WPRocket, Imagify, and bunnyCDN to those on the shared servers, though it depends on the client and requirements. The dedicated hosting provider has cache and cdn built in.
We have used every one of the services mentioned above to speed up a website and will again depending on the client/requirements. Some of the links are affiliate links – we’ll make a small commission if you purchase a service through them.
Feel free to reach out to us if you’d like more information or discuss the best options for your site.