How does poor performance affect eCommerce sales?
This translation continues a series of [links: 1 , 2 ] introductory materials about various aspects of working in eCommerce. This article will discuss how sales depend on the performance of an eCommerce site and basic approaches to working with this aspect of online trading.
As the period of mass purchases on holidays approaches [the original article was published on September 17, 2014 - approx. trans.], when almost 18% of purchases fall into the category of “abandoned baskets” due to the slow operation of eCommerce sites, it’s time to discuss how low productivity can affect electronic sales, give real-life examples and give tips on How to improve site performance.
Why is site performance so important?
Ten years ago, the number of companies trading online was relatively small. Nowadays, those who do not engage in online trading are a minority, and their number is constantly decreasing. Due to the pervasive nature of the Internet in our modern life, the size of the online sales market is huge, as is the level of competition on it.
Buyers are spoiled for choice and are not afraid to look for goods. Having visited a site with low productivity, users will immediately go look for the product elsewhere. Slow operation of the e-commerce site will lead to the fact that you lose current sales, as well as all repeat transactions that could follow them.
Load impact investigatedthis question in 2012 and found that 53% of owners of e-commerce sites lost money or customers due to poor performance or instability of their site.
Research Question: Have you lost money or customers due to poor performance or site instability last year?
Legend: light green columns - e-commerce, dark green - other
The first two columns: lost money or customers; second pair of columns: did not lose money or customers; third pair: unknown.
And this is an important point. If you plan to expand your business through online trading, the slow operation of the site will not only reduce the number of sales in the near future, but also significantly reduce the chances of a long-term business development.
Statistics confirm this. Organizations regularly monitor the relationship between site speed and conversion / revenue metrics. I learned this from my own experience working with several clients in the field of e-commerce. High site performance can greatly enhance the success of even a relatively small online business.
Studying the activities of the giants of online commerce, we have to admit how enormous the significance of the speed of a site can be. Back in 2006, the administration of the Amazon site clearly and clearly stated that a 100 millisecond increase in web page speed yields a one percent increase in revenue ( source ). Former Amazon employee Greg Lindan also refers to this on his blog :
“During A / B testing, we periodically paused the page for 100 milliseconds and found that even the smallest delays lead to a significant decrease in profits.”
Evaluation of the site will help to avoid false conclusions
As we have already determined, the speed of work is a decisive factor for ensuring the availability of the site, and how high it is is what distinguishes an ordinary business from a large business. A common problem of small and medium-sized companies is the lack of knowledge about the site’s performance and how important this factor is.
It is easy to assume that the website is working fine if there is a sale. If the site does not have sales, it is easy to conclude that it needs to be redone, or simply you need to increase traffic. To draw such conclusions without confirming them with any data is dangerous.
So how to get the necessary data? Evaluation, evaluation and evaluation again! It seems like it takes too much hard work? Think about what you risk if you do not:
- Poor service = poor reputation.
- You can spend a significant part of the budget on changing the site due to the fact that “it does not work,” while you just need to evaluate its performance.
- You can increase the budget share for banner advertising in order to increase traffic on your site, but this will only create more dissatisfied visitors than increase the number of happy customers. In fact, this is the same as pouring money, as they say, into a “leaky bucket”. Worse, the more money you invest, the more dissatisfied customers you create!
How to evaluate website performance
For those who are not familiar with performance monitoring, evaluating the speed of a site may seem simpler than it actually is.
At first glance, the most affordable way to find out how fast the site loads is to make a request to the start page and ... then ... see how long it takes to load! If it loads in 3 seconds, then everything is in order. If it takes 10 seconds to download, then this is not very good.
Although such an incredibly simple check is useful for some analysis, it does not give a complete picture of the performance of your website. There are many factors to consider if you want reliable data on its speed. Here are just a few of them:
- Overall site performance - The start page is just one of the pages. Checking the download speed of only the start page does not give an idea of the rest of the site, the performance of which may be completely different.
- Performance under load - If your site works fine with two users simultaneously on the site, but starts to “slow down” when 10 people visit it, then this is a problem.
- Geographical location - A website may work fine in some countries, but already slowly in others. Testing conducted in one place will not say anything about how the site works in other places around the world.
- Real User Actions - Users behave differently. Someone will go to the page and immediately leave it, someone will go to the site and look at several pages in search of information, someone will fill out a feedback form or place an order if goods are sold online on the site. In short, the best test of site performance is its load by virtual users, modeled on the basis of real-life scenarios.
Thus, you will receive the most reliable data when testing the work of many pages and creating many virtual users who visit the site, act differently, and are in different countries.
But how to determine which user behavior scenario should be applied? That is, what user behavior do you need to model? This will help traffic statistics on the site. Tools like Google Analytics can help you determine how your site’s visitors are currently acting.
If the conversion rate on the feedback form page is 10%, then it will be correct to create a user behavior scenario that simulates this situation and allocate 10% of the generated site load to this scenario. Simply put, study your current audience and create a series of behavioral scenarios that simulate user actions.
The study of technical terminology is also an important point in preparing your own site load testing.
Load Impact provides a convenient glossary of terms that will help you understand such definitions as “load increase”, “load decrease”, “virtual users”, “accumulated load time”, “load testing”, “user behavior scenarios” and so on .
Real site performance metrics
I believe that real-world examples best demonstrate the importance of high site performance. I still have some information about clients in e-commerce that I had to work with. I hope that it will help to better understand the methodology for assessing site performance.
EXAMPLE 1: Estimating server speed under load
The guys at Load Impact provided me with tools for testing performance on my client’s site. From the screenshot below you can get a general idea of the load testing scheme that I applied.
As you can see, in my scheme, most virtual users (80%) will simply browse the site. The remaining 20% will search for products, add products to their electronic basket and order them. These numbers may not be entirely accurate, but are quite suitable for basic testing.
Testing should last 5 minutes, while the number of virtual users on the site should increase from 0 to 25 during this time. Longer testing will help to check the server's operation under constant load, but we will leave it next time.
During testing, I checked server performance using several other tools besides Load Impact:
- New Relic is a suite of tools for monitoring application performance and software testing.
- Anturis is a service for monitoring servers, websites and information infrastructure.
New Relic demonstrates how during testing, as expected, there is a sharp increase in the intensity of the server processor, as well as the average page load time.
Anturis also shows a sharp increase in processor load, as shown in the graph below.
With this information, we can tell how the web server itself worked during testing. But what really matters is how user interaction has changed, if at all.
The graph of Load Impact, presented below, demonstrates that the interaction with virtual users has changed significantly during testing. There was no serious slowdown of the server at this level, however, the accumulated page loading time for user behavior scenarios changed greatly. It is worth noting that each script included several page loads.
The blue graph and the bar on the left show the change in the loading time of the site pages. The green graph and the bar on the right show the change in the number of active users
During this test, the load was created somewhat greater than the site usually experiences. Fluctuations in the length of page loading can indicate a certain instability, which can increase even more with a higher load. It is necessary that the blue graph be as even as possible, which will ensure stability of interaction with users. Of course, even if a stable high page loading speed can be achieved in the short term, regular monitoring and analysis will also be useful to track that this level is maintained. If real site traffic starts to increase significantly, more serious performance testing may be required.
EXAMPLE 2: Fix performance issues
The following data was received from a client with whom I worked for several years. Now we are engaged in its online store with more than 4,000 items and monthly traffic from 60,000 to 120,000 page views.
At one stage, we used Pingdom to track the server’s response speed, which in itself provides useful information. On the client’s site there were constant problems with the speed of work. This did not interfere too much with the site, and orders still came, but the site definitely worked more slowly than it should.
After a long analysis (in a tiny budget!), We were able to achieve significant success in reducing the response time on the site by correcting slowly executed external scripts. The chart below speaks for itself.
So did all this really help the business? The short answer is yes. We solved the problem on November 19, as reported by the sharp reduction in response time in the graph above. The following is the percentage of failures and the number of orders placed.
It is noteworthy that on November 21, the site recorded the highest attendance for the entire 2013. A few days with peak revenue figures also occurred in November and December, which was not observed during this year or during the past.
In general, the analysis of the average response time on the site and the identification of the reasons for the slowdown contributed to the significant development of the business. We continue to monitor the client’s site more closely, conducting testing based on scenarios of real user behavior, which gives an idea of the work of the entire site (and not just the start page).
Practical ways to increase the speed of the site
To begin with, it is worthwhile to conduct a simple test for page speed. Pingdom provides effective tools for this. Alternatively, you can use the tools built into your browser (for example, DevTools in Chrome) or browser plug-ins, for example Firebug for Firefox.
When conducting a test for page loading speed, you need to pay attention to the following:
- any third-party requests, such as unnecessary downloads
- any external requests (scripts or files downloaded from external sites), either unnecessary or requiring a lot of time to download.
- any requests to "large" files, the size of which can be significantly reduced, for example, in the case of images.
When you have determined what needs improvement, you can make corrections and then run the test again. We often have to work with e-commerce sites, on which there is an opportunity to reduce the number of file requests by 20% without any problems, and sometimes we manage to reduce the page size by half. When pages are viewed hundreds, if not thousands of times a day, reducing the size of the site, reducing the load on the server, is very important to maintain the stability of the site.
Here are some guidelines for improving website performance:
- Optimize image size - not all JPG images need to be in 100% quality and it doesn't have to be JPG format! Choose the file format and compression ratio correctly.
- Clean server / site logs - make sure that the logs generated by server software or the site platform are not created unnecessarily.
- Use a CDN network, for example Google Hosted Libraries - this will reduce the load on your server and increase work efficiency, due to the fast loading of scripts.
- Remove external scripts that slow down the site - if possible, limit the dependence of the functioning of your site on external servers (if you do not use a high-quality CDN network, of course). Security software sometimes loads the server more than it benefits.
- Configure Apache and MySQL - if your site is supported by the LAMP software package , take more time to tune the memory parameters and optimize the performance of Apache and MySQL.
- Provide enough RAM and CPU power - adding RAM and CPU power to a poorly configured server is like adding fuel to a fire. You only make the situation worse. First, determine the characteristics of your server and its applications, and then it will be possible to select resources for it that meet the requirements of your site.
- Use a reliable DNS server — check to see if there are problems connecting to the network or the DNS server before looking for errors in the site code or in the server itself. If your DNS provider is unreliable, this can significantly reduce the performance and overall performance of the site.