It is a myth that fish grow to the size of their tank, but the principle unfortunately could be true for your business. The development of an online business can be greatly hindered by a poorly performing website. Challenges could surface throughout your store, in the front end (where the user interacts) and the admin area right through to the back end (database and code base).
The main scaling challenge for the front end is performance. The bigger a website site gets, the slower it could become. The TTFB (time to first byte) could increase as the code has to perform more operations, wading through more and more data, meaning the user is presented with a blank screen for longer and longer. Or maybe your product count keeps increasing, meaning the website’s navigation becomes more and more complex, making it difficult for users to find what they are looking for. Another specific challenge is customer communications. Your store could send out multiple emails per transaction, as your site garners traction, perhaps at busy times you are handling multiple transactions per minute. Your web server may not be able to handle such a request quickly.
Problems in the admin area often start with inventory. An increase in products can make bulk operations slow, stock levels could quickly start to slide, leading to unfulfillable purchases (leading to additional customer communication and resolutions). The chain of actions upon receipt of an order could require staff interaction, as orders spike this is a natural pinch point.
Scaling issues in the code base and database start with database architecture, often this is not something even your development team has a huge amount of control over, unless working on a custom platform. If a table is over used (bloated), or used incorrectly, fetching data when required could become a slow process, that TTFB is increased, leading to user drop offs. As a site becomes bigger, extensions/plugins which are easy to install, could add thousands of lines of code at a time. Every line of code adds to the complexity of a project, can become a security liability, be costly to update and bring its own performance issues.
“Just choose platform X”
It would be nice for all these challenges to have 1 simple solution. You may hear that a certain platform scales better, buying more server processing power or even investing more upfront would make the project scale better, but does that ring true to you?
Choosing one platform over another might help in some areas, but cause headaches in others. Choosing Magento over Shopify could help you list more products out of the box, but upgrading Magento core and extensions could rob you of the time and money saved. Choosing PrestaShop over Woocommerce because it is a dedicated e-commerce platform might be the wrong choice when you realise you need some pretty basic SEO functionality.
There is no silver bullet. The fact is most e-commerce platforms in 2022 have evolved to the point that glaring issues have been dealt with, each major platform does have its uses, but saying that one platform scales better than another is an over simplification.
Choosing the right platform for your mid-term needs is essential. But thinking beyond 3 years could get sketchy. Key things to bear in mind:
- Do you need to integrate with physical systems (warehousing)?
- Do you need to integrate with other online systems (drop shipping)?
- Do your users need to configure their product(s) extensively?
- How many products could be in your inventory?
- Do you have an in house web developer/team?
- Is having a unique design important to your target market?
- Does your vision of how the site would work deviate from general e-commerce sites?
- What level of traffic do you expect?
Answering these questions, or discussing them with a company that understands your available options (like us!), is very important to helping you make the right decision as to what platform you proceed with, and how much customisation it will require. What type of customisation might be needed?
How to speed up an e-commerce platform
Each platform has its strengths and weaknesses, but some key cross platform enhancements include offloading, caching and updating your applications and scripting languages.
Offload jobs to separate, dedicated services. They often will do what your website is trying to do, but better and concurrently. You can configure a Content Delivery Network (CDN) to offload website static files like images and PDFs very easily with most platforms. You can offload the sending of emails with Transactional Email APIs, they will increase chances of deliverability and allow your web server to focus on its real job: serving up your website.
Once your server has worked hard to run through hundreds of thousands of lines of code, fetched all the relevant content from the database, and generated all the code to give to the browser; we want to save the generated code, ready for the next time someone visits the same page. This is called page caching. Make sure you have a caching system installed and configured.
Finally, keeping up to date is important for security, but also generally helps with speed. E.g. Woocommerce is speeding up gradually as it improves the way it stores and retrieves data from the database. This isn’t just about updating your codebase though, for example, many apps use PHP, updating from PHP 5.6 to PHP 7, then again PHP 7.1 gave huge performance increases.
Custom modifications and configuration
The platform you choose is just a foundation to build on. You may be able to turn off huge swathes of functionality that are not needed for your store, which could speed things up and help your store scale.
Some of these decisions can be easily actioned by configuration panels, others might need some coding know-how (cart fragmentation, load balancing etc). Carefully choosing which plugins/extensions are incorporated is an often overlooked factor especially as the store enters maintenance cycles. Some plugins offer much more functionality than the feature requires, all the extra code comes at a price.
It is important to choose a partner who can guide decisions from multiple perspectives: UX, back end, front end and testing.
Partner with Holler Marketing
A technology agnostic partner like Holler Marketing can provide unbiased advice on which platform, plugins and APIs would be the best fit for your business. The first step is to get in touch, let us know where your project is at right now and where it needs to be. We can then evaluate your current stack and offer suggestions as to how those aims can be achieved.