We care a lot about performance at BJM, it excites us, and achieving it makes us happy. It matters to you and your customers; we’ve all felt the frustration of a “slow website”.
When it comes to website performance it’s important to understand what’s actually happening when you load a website in your browser, and what really makes a website perform. So let’s talk a bit about that.
For the sake of this discussion, we will loosely group contributing factors into 4 groups. I’ve listed them in ascending order of importance (least to most):
Where you are in relation to the website infrastructure.
Your website hosting, and how it’s configured.
How the code that actually runs your site is written.
How your user is visiting your site.
Let’s go a little deeper and see what I mean by those and where to focus your energy.
The physical location of your end-user in comparison to your website hosting is important, the use of Content Delivery Networks (CDNs) help to mitigate this to a large degree, but if you have a primary user base in a particular country, whenever possible put your website in that country.
Use a CDN (see above).
Don’t skimp on your hosting platform, and unless you run a world class hosting platform, don’t host your own website.
Find a partner and leverage their expertise and experience to save yourself time and money and give your users a great experience. Poorly configured or over-utilised servers will never give you great performance no matter how great your code is.
Which brings us to the next point.
We primarily work with WordPress, and we love it. It’s a great platform, and it comes with a very vibrant ecosystem with pretty much anything you could ever want, but… that can be a blessing and a curse. Understanding when to use a plugin, when to write custom code, and how to identify when you thought using a plugin might actually be a curse, this is the benefit of a technically excellent teammate. Our focus on technical ability to complement our design excellence give us the flexibility to choose, and the wisdom to know when, and why it makes sense.
So that’s great, we’ve written great code, used the right plugins sparingly, and we’re ready to go. What comes next you ask?
3rd party javascript libraries (ewww). Yeah, I said it. Everyone was thinking it. Google Tag Manager also fits nicely into the blessing and curse basket when it comes to site performance. Giving users the ability to add their own “tags” (making them sound like something hanging on your new pair of jeans) sounds great, but with great power comes great… you get it. In reality these things can slaughter a finely tuned website quicker than you can say “Why is our site slow in PageSpeed?”. Most people don’t consider the impact they have, (especially when it comes to security, but more on that another day), and that’s understandable. If you care about performance, think twice about why you’re adding that script, and if the benefit outweighs the cost. Sometimes it will, but many times, it won’t.
Here’s a comparison where simply removing 3rd party scripts increased PageSpeed score by over 100%:
Device
This is the last and probably the most important consideration. Because there is performance, and then there’s… performance. If you consider the performance of your site holistically, then not only should it perform in terms of nerd language (read: time-to-first-byte, render blocking resources, efficient cache policies etc), but also in terms of its purpose. Does your site perform for your users when they’re trying to get what they need? Is it optimised for the types of devices they are going to be using? Does the structure and content architecture make sense in their context? Are you able to anticipate their needs and provide an effortless experience?
Wrapping up
Performance is hard, and it's a moving target. There’s no way around that, and that’s fine. You can leave that for us to worry about, like I said, we love it. (Another hint: this is where to focus your energy, invest in experts who know what they’re doing) It’s important to think about performance in all forms, they are equally important and deserve specialist skills and knowledge to understand and address correctly. If you want to have a crack, I wish you well on your journey, thinking about your site in the above ways will definitely help you on your road to optimisation nirvana.
All the best.