Every digital marketer I know is fanatic about their website’s performance and for good reasons. Your site’s speed affects its rank on Google search, your visitor conversion rates, and recently even affect the chances of your site’s social shares to spread on Facebook’s news feed - Facebook might actually “punish” you now if your website loads too slowly.
Improving your site’s slow load time might be a long and expensive process, depending on your site’s infrastructure, but there’s one quick and easy fix that can make a big dent and all it involves is a slight change to how your CDN is configured.
How does a CDN help with your site’s performance
For example, let’s say your website’s servers are located in California. People accessing your site from San Francisco would probably enjoy a faster load time than people accessing it from London. Adding a CDN will allow visitors from London to get the same static files from a European server, and by doing so reduce their load time.
Although locally serving static files through a CDN might reduce your site’s load time, in most Content Management Systems such as WordPress it might not be enough.
The issue with WordPress (and most CMS’s)
When you visit a WordPress website, the pages are not hard coded, instead WordPress creates the page on-the-fly and serves it to you. This mechanism allows you to update your website without needing to code but also makes it slower since it forces your visitors to reach your server directly.
Applying this on the example above, with a standard CDN implementation, your London visitors might get the static flies from the European server (provided by the CDN) but will still need to wait for your server in California to create and serve the rest of the page.
Close, but no Cigar.
Enter Dynamic Page Caching
We had to face this issue head on a few months back when we onboarded a new client. The client had a poorly built, slow loading website and we were requested to find a cheap & quick solution to improve load time. Although having a CDN standardly configured, the site’s average load time was still around 10 (!!) seconds. Without making substantial changes to the site’s infrastructure this was a tough cookie to crack.
Having vast experience with WordPress powered websites, an idea came to mind - Dynamic Page Caching.
With Dynamic Page Caching, instead of caching just static files (such as images, CSS and JS files), we cache each page in full, thus serving 100% of the assets from the CDN, without having visitors ever reaching the remote server.
As you can see from the graph below, the results were clearly decisive. The site’s average load time has improved by 80% and reduced from around 10 seconds to 2 seconds.
When should you use Dynamic Page Caching
While quickly loading your web pages is the wet dream of every digital marketer, this solution comes with a certain price - all of your website pages become cached. this means any change done to the page (can either be layout, content, design, etc.) does not show immediately until the CDN cache is cleared. This might take a while to propagate throughout the entire network.
This makes this architecture not suitable for all types of websites. It’s great for sites that don’t change on a daily basis, like promotional and marketing websites, or blogs that post new content once or twice a week. It’s however not recommended for sites with frequently changing content such as e-Commerce platforms, forums, blogs that post daily, and almost all web-apps and SaaS products.
How to get started
Unfortunately, this is not a How To type of article, mainly because the solution varies from site to site and it highly depends on your CMS’s configuration, your CDN, and the content being delivered.
You can start by sending this article to the person maintaining your website and asking if Dynamic Page Caching can be a suitable solution for your website. If you feel you need some help or a more personal advice regarding your specific website feel free to reach out to us here at AirFleet. This stuff is our bread and butter, and we are always happy to help in anyway we can.