All you need to know about the performance of your websitePerformance
Every website, shop or application owner has heard at least once that performance is worth taking care of. Even if we just take into consideration page loading time – as Amazon has shown, a delay of just 0.1 second in loading causes as much as a 1% drop in sales.
The question is: if even commerce giants such as Jeff Bezos are trembling at the slightest performance problem, what can small, medium-sized or quite large, but still incomparably smaller than Amazon, businesses do? Testing and optimization! Today we will talk about why it is worthwhile to test performance, what types of performance tests exist and how to take care of performance on a daily basis. Let’s get started!
Why should you care about performance? A few figures to start with:
equating 0.1 of a second to a one percent drop in sales sounds shocking, and it is not the only performance-related figure worth knowing. Let’s take a look at the other ones:
- Just one second of delay in loading the page results in 11% fewer visits, a 16% decrease in customer satisfaction and a 7% loss in conversion;
- 53% of mobile users leave a site if it loads for more than three seconds;
- 52% of users say that the page loading time affects their loyalty to the website;
- 51% of customers drop their carts when the site is slow to load;
- 79% of online shoppers declare that they will not purchase again from a store if they have encountered a loading problem while using it;
- 44% of them will tell their friends about the situation or submit a negative opinion online;
- 43% of consumers who are dissatisfied with the performance of a mobile website will shop from competitors.
As you can see, by neglecting the performance of your website or application, you are risking:
- a lower conversion factor,
- user dissatisfaction,
- an increase in the bounce rate,
- fewer repeat users and less willingness to recommend your site to their friends…
…and all this translates into real financial losses.
Peak loads – the predictable, the less predictable and the completely unexpected
You might say: “Sure, but I don’t have this problem! My website/shop/application handles daily traffic without any problems, so I can sleep peacefully.” Wrong!
It is true that website traffic usually increases gradually (the shop gains new customers, the application attracts more and more users, and so on), so if the website is efficient, you may get the wrong impression that everything is OK and the topic of performance can wait. You tell yourself you will return to it when the traffic on the website increases significantly. That’s not necessarily a good idea. Experienced entrepreneurs know that sales usually cannot be described with a gradual and systematically growing curve (which is a pity).
There are times when traffic on the site is growing rapidly. The first example that comes to mind: Black Friday. Customers tempted by promotions storm online shops. If the website collapses under the pressure, they will seek out the competition. The situation is similar before Christmas. It is worth preparing in advance for such peak loads to avoid losing sales due to such a small detail like poor performance in these key weeks for the business.
Note! Sudden changes in website traffic are not always linked to specific dates. They may also be caused by, e.g. an influencer with many thousands of followers mentioning the company’s product. While fans can flock to the store en masse to see what their idol praises, servers may not stand up to the challenge and the website may stop responding.
An equally strong impact (although not well-liked by sellers) can be inflicted by huge price errors. It is enough for information about an accidental discount to be posted on a website for bargain lovers, and in a moment the shop will be flooded with huge, unexpected traffic.
Should you defend yourself (against a lot of traffic) or not?
That’s a good question!
It might seem that if a mass of customers is rushing into your shop, thirsty for your goods, there is nothing more stupid than to close the door in their face. So is it always worthwhile to go out of your way to reinforce the site’s capacity before a sudden peak load? Not necessarily.
As usual in business, the answer is: it depends. E-commerce giants who can afford to meet every performance challenge usually try to do so. They even profit from it. Take a well-known technology company as an example. Such a company is aware of increased traffic when a new flagship model is released. From time to time, it also notes increased traffic in the shop when a well-known technology blogger mentions its product. Both events support the brand and increase sales. In a nutshell: it pays off, and so does investing a lot of money in servers, so that the store is always available for potential customers.
It’s completely different when it comes to a small, niche craft shop. Let’s imagine that one day its beautiful and unique products are noticed by a well-known fashion blogger and mentioned in her Instagram story. The number of story views increases every minute, and with it the number of fashionistas storming the shop, thirsty for a product recommended by their guru. Finally, the server is down… and that’s good! The shop owner wouldn’t be able to complete so many orders anyway, and maintaining the servers just in case of such a situation isn’t feasible.
As you can see, in business, nothing is black or white and even perfect website performance is not always desired.
What can you do with all this?
We have already discussed the consequences of neglecting performance. Now let’s move on to solutions. A sensible work plan, culminating in improved website performance (shop, application) looks like this:
Website monitoring (To facilitate performance testing. If you start without monitoring, consider implementing it later on) -> Performance tests (To find out what the existing situation is, indicate bottlenecks and areas for improvement) -> Optimization (… and further monitoring. There’s no such thing as too much monitoring.)
We will come back to website monitoring in a while, but now let’s focus on performance testing. There are various categorizations on the Internet, but for the purpose of this article we will distinguish four main types of tests:
- Load tests – check whether the website/shop/application can withstand the expected traffic. By performing this test, you can see how the website reacts to the daily load you anticipate, e.g. before it is put into service for users;
- Stress tests are designed to define the critical load. Tests of this kind do not simulate real situations, but generate as much traffic as possible to see at which point the website goes down;
- Peak tests –as the name suggests, these are tests for peak loads: a heavy load, usually appearing 1-2 times a year (for example, for an online florist. it will be Mother’s Day);
- Endurance tests – even if the website is able to handle a lot of traffic for an hour or two, it does not mean that it can handle it long-term. A good comparison here can be made with gym regulars: many amateurs will be able to lift (at least for a moment) a 100 kg barbell, but only a professional will push it over their head a dozen or so times.
If you’re now wondering which of the tests above to choose for your website… stop! That’s not the right way.
For performance testing, it doesn’t make sense to focus on one or two types. It’s a bit like a medieval king directing all his forces during a castle siege to defend the main gate, while the enemy sneaks in from behind… Unfortunately, you never know what will challenge your website performance, so you need to reinforce it from every aspect. Only a comprehensive approach will give you a real chance at having a shop that is always open to customers – even if there are many more of them than usual.
The tests are done. What’s next?
Testing just for the sake of testing does not make any sense. Whether you are talking about functional, security or performance tests, they are performed to locate the weak points of the website (store, application, etc.), which then simply need to be eliminated. Then all that remains is to work on optimizing performance.
Monitoring – keep on top!
There is one more issue that should be addressed when talking about performance: monitoring. If you haven’t been using a tool to monitor your website’s ongoing traffic, it’s high time you started. This will allow you to keep on top of not only sudden peak loads, but also of security issues, such as when your website falls victim to a DoS attack.
DoS (Denial of Service) is a type of attack that involves overloading the site with artificially generated traffic to prevent it from working. Monitoring makes it possible to detect such an anomaly, thus enabling a quick and effective response.
Interestingly, traffic monitoring makes sense not only in the context of detecting disturbing events on the website, but also in terms of providing excellent support for performance testing. Data on how traffic is distributed on the website will help the tester to locate bottlenecks.
Do you know what to do if the website can’t withstand the traffic anyway? Surprisingly, many companies do not have any written procedures on what to do if the system refuses to cooperate. This is a big mistake! There’s nothing worse than looking for solutions in a panic when they’re needed ASAP. That’s why it’s better to think about what to do in each case beforehand rather than to deal with such issues post factum.
Here are some topics to think about:
- Do your employees know what to do when the site stops working? What action to take, who to contact?
- And do they know what to do when the system capacity is nearing its limits? Or will they be helpless as they watch it sink like the band on the Titanic, as things get worse and worse?
- Does the team know how to restore the system after a failure?
These are just a few things to consider. It is also a good idea to pitch the topic to the marketing/PR department. Such things as a failure message should be prepared in advance, instead of being written on the spot when the system suddenly collapses and crowds of angry and eager customers can’t get to the site.
It makes sense (and is necessary) to take a comprehensive approach to performance. Only by dealing with all its aspects will you be sure that your page will always be accessible for users. Good luck!