While speed is an important metric, it is often misunderstood when talking about websites built on Shopify. This is a post dedicated to everyone that struggles or struggled with site speed. If you have a slow site don’t worry (yet), it is not the end of the world, let me explain why.
The biggest factors of speed
Over the years tech got very complex, and sites got a lot more heavier because of it. While our internet speed also increased, it is not hard to create sites that outpace our ability to download them.
Here are the things that impact your speed the most:
- Images, videos and gif size
- Scripts loading external Apps and resources
Basically the more complexity you add the heaviest it will get… as simple as that.
Particularities of Shopify
Shopify websites are naturally slower because of a few factors, here are the 3 most important ones that help demystify speed issues.
For the non-technical, using JQuery requires a lot more code and it is not made for the type of interactions we as users are used to today. Things like updating a cart in real time are a lot easier with modern frameworks like React and Vue js.
2. The Liquid templating & Server side rendering
Shopify created a templating language of their own in order to allow theme customization and while it is powerful, it slows things down as it needs to be rendered every time a new customer comes to the site. More modern approaches use static site generators to serve pages already rendered, which is incredibly fast.
3. External Apps
Probably the biggest issue we see is the overuse of apps. Apps are great but every time you install one you get more code injected in your store, which means on top of rendering everything on load, you also need to load the code from the app, making everything even slower.
So there is no alternative?
Yes there is! Large brands might chose to build an Ecommerce experience from scratch using Shopify’s API and the tech they choose. This is what they mean by “headless store” and it is a good way to guarantee very fast sites. That said they come with problems of their own:
- You need a custom content management solution
- New updates require a new development cycle, so new features take longer to release
- You need a dedicated team to give support
- Very easy to have bugs and things go wrong with the site
- Very hard to change agencies or manage the people internally
- Everything you need to implement is more complex and takes longer
After talking to a lot of brands in the D2C space, going headless feels like running a tech company more than an Ecommerce brand. For that reason, most companies going headless are very large or have so many custom features that adding apps would be impossible or make it slow past the point of acceptance.
My speed is bad and I’m panicking!
Is your speed under 50? is it all in red? Don’t panic! Having a slow site doesn’t mean the world will end. In fact, there are a lot of businesses that have sites considered slow but are still very successful, you might heard of a few! Check out their speed score on desktop (on mobile is even slower)
Amazon - 26
mvmt.com - 47
gymshark - 25
apple.com - 32
allbirds.com - 58
fashionnova.com - 38
kyliecosmetics.com - 36
So don’t worry, unless it is taking more than 5 seconds for something to load you will be fine.
Working with tech means making sacrifices
Whenever you are choosing a platform or a framework to build a business, you will make sacrifices. This is as true for us founders as it is to developers choosing a programing language. both tools and languages are built for specific purposes and choosing them will require us to measure the pros and cons.
When working with Shopify, you have everything at your disposal. Everything you need to run a D2C Ecommerce exists within its native functionalities and apps so that running a business is easy and you can move fast. It is unfortunate that the sites are slower but given the amount of benefits, I think it is a worthy trade!
If your store is taking 5s or longer to load, reach out. There are things we can do to help you get to normal levels.