Scaling Up to Accommodate a 40000% Increase in Sales
⬆ No, that is not a made-up number up there.
The Story in a Nutshell
Over the last weekend, we joined forces with our clients’ teams to ensure continued and smooth operation during Black Friday. One particular case saw a 40861% increase in revenue and 10955% increase in visits in comparison to an average day.
By mid day Friday, the sales had surpassed the entire sales for last year’s Black Friday week. By end of day Friday, the store had already received over 220000 orders. A new record!
This was not achieved by sheer luck or good fortune. It came as a result of hard and dedicated work that started in April, and continued throughout Black Friday and beyond.
It all started with…
It’s no secret that a good UX has a direct impact on a store’s conversion rate. Our first engagement with the client was a UX/UI audit of their existing store that highlighted several areas of improvement.
Some of the suggested improvements were as simple as displaying 5 items on a row on the categories pages, and changing button labels. Other fixes required major content grouping and restructuring. Most importantly, several changes targeted the mobile design of the store.
In addition to that, it was clear to us that the store’s audience was mostly new visitors, so the UI had to be as intuitive as possible. It should have an appropriate level of product density on screen, and should direct the visitors towards checkout in the least number of clicks possible.
Before going further into investigating technical areas of improvement, we planned for a redesign and other than the points mentioned above, we gave priority to page load speed and mobile support.
In parallel to redesign, we implemented a series of technical improvements. Our main focus was eliminating deadlocks, removing bottlenecks, improving security, increasing the page load speed (again), and of course squashing any bugs that we encountered along the way. Other than that, we leveraged the power of P2P CDN to decentralize content delivery.
The last piece of the puzzle was the infrastructure. Without a proper setup, any store is bound to fail. We recommended migrating to AWS for improved stability and scalability. After implementing the major changes, it was time for the server migration and the stress tests. Our client was ready with their traffic projections, and so, it was time to hit that big red button. The tests were performed in rounds, and bottlenecks were removed in between those rounds, until we reached optimal performance.
The tests were crucial to highlight and correct possible issues, and to verify that the number of AWS instances is sufficient to handle the expected traffic. With our fingers crossed, Black Friday was finally upon us.
Piecing It Together
Up until this point, it has all been theoretical. On Thursday, our team visited the client and set up a center of operations for monitoring the situation as it develops. The servers were scaled up, and all eyes were on live metrics: visitors, conversion rate, revenue, incoming orders, sent emails, page load speed, server response time, etc. Everyone at the office was looking at those numbers; we had TVs set up in the all work areas and the kitchen. Any cause of concern was to be communicated immediately.
As the first waves of marketing campaigns were launched, traffic on the website exploded from a couple of hundred concurrent visitors to over 17,000. The floodgates were open, but we were well prepared and the servers were unfazed. The infrastructure was holding well. Average page load time was stable at around 3.5 seconds. It was going well until we discovered a major issue: we were receiving so many orders per second to the extent that the order queues were growing uncontrollably and processing orders was grinding to a halt.
Needless to say, that is problematic, but we managed to acknowledge the issue within a minute and our developers were already working on a solution. This was a delicate procedure since we were deploying changes to the live servers during Black Friday. We needed to make sure that we don’t disrupt sales, so we came up with an innovative solution.
By leveraging our client’s outstanding understanding of their customers, we were able to create a script that prioritizes the processing of orders based on the buyer’s location, interests, national holidays, and order lead time. The script works by offloading orders from the order queue and processing them in independent batches on a dedicated server instance. That way, the original scripts for handling queues remain untouched, but the queues are processed faster.
It was a quick turnaround that made a big impact; the original queue required days to process, and would have left many customers unsatisfied. The delay in processing orders means a delay in receiving confirmation emails, and that those orders would have been delayed by days. We managed to avert that.
We had a great experience. Although we worked long hours; often starting early in the morning and lasting till after midnight, we have never felt so connected to the impact that every line of code can make. We were proud of our reaction speed in keeping the orders incoming and the store up and running. At the end, in comparison to the previous year, we had around:
30% drop in the average page load time
20% drop in the average time on page
15% drop in the bounce rate
26,000,000 page views
8.5% conversion rate
One set of correlations caught our interest: page load time vs time on page vs bounce rate. What it means is that customers were able to move faster from landing on the homepage and going through checkout; a direct result of the redesign and performance improvements.
We enjoyed our client’s hospitality and their sales and marketing insights. It was a fantastic collaboration that was enhanced by having all parties on location. And speaking of parties, we didn’t forget to keep it fun! The music was constantly flowing, the snacks were constantly flowing, and more importantly, the beer was constantly flowing. In case you’re wondering how alcohol goes with programming, you should have a look at the Ballmer Peak.
Success doesn’t happen overnight and it doesn’t happen without dedicated effort. It a snowballing effect that takes months in the making. To recap, the keys for a successful event are:
Understanding your audience
Investing in online marketing
Investigating and implementing improvements
Testing, improving, testing, improving, and testing again
Bringing all teams together
Monitoring the situation in real-time
Preparing for quick decision making and last-minute fixes
Keeping it fun, relevant, and exciting
It has been a great journey, but it’s not over yet. What happens after a successful Black Friday weekend? We start preparing for the next big event.
Check out more of our marketing services here!