This document is a short technical analysis that aims to give a short description, comparison and benefits discussion between the two technology approaches towards building a future-proof Shopify store that could better achieve modern ecommerce user experiences.
Headless or the decoupling approach is a well-established software architecture principle based on ‘separation of concerns’. The architecture of Shopify itself is built using Ruby on Rails, which is an MVC framework – meaning it separates layers for Database management, Business logic and Frontend rendering. That is why it is one of the most beloved ecommerce SaaS platforms currently in the market, as it favors performance over complexity. A headless architecture is essentially applying the same approach of ‘separation of concerns’ but in the frontend structuring – so that data handling, business logic and rendering that usually occur within the theming template (i.e., standard Shopify template), are all working in isolation and connected to API’s.
The reasons for this architecture are the shared reasons any software design concept favors – efficiency and scalability. Future-proofing the codebase for what may lie ahead on the roadmap & within the team and minimizing the chances of bugs/issues being introduced over time. That can be demonstrated by the following benefits:
Headless is a step forward in terms of the overall architecture of any digital business. It’s a long-term investment, but with immediate gains. The benefits gained out of going headless would be:
The main point someone could argue against Headless in 2021 is the non-readiness of the business to absorb such architecture. That would include:
The Shopify theme enhancement approach proposes that we ‘edit and dev’ to expand the theme to accommodate an increasing number of functionalities. Shopify has done a remarkable job to serve the needs of small to medium businesses, but it has a number of drawbacks that come with it, in the form of limitations to increasingly complex offerings of different types of businesses.
As mentioned in the headless section, Shopify chooses a ‘separation of concerns’ architecture type for handling the backend work, but the same does not apply for the theming part mainly because they are built in a straightforward manner based on a naked approach. The limited possibilities however are for sure trying to expand these stores to multinationals, where good multilingual/multi-currency support are without a doubt the biggest drawbacks. There are third party solution in the form of apps like Langify that can help with translations, but similarly as to why companies are not preferring traditional CMS like Wordpress that can be filled with plugins, continuing to solve your store issues through a stack of third-party reliance that will greatly affect speed, SEO and at times stores can be reliant to the fate of such apps updates.
Nonetheless, clients that have built on Shopify through themes are really happy with the overall experience and possibilities it offers for their store beginnings because of its easy to use and maintain approach. These are some of the benefits that Shopify + themes offer:
A user-friendly backend that the client doesn't need to update and host
Proper analytics and easy integrations
Multichannel sales through social media
An easily adjusted front-end with the use of the theme customizer
To argue the choice to continue enhancing the current theme of Shopify that has been used on the store, mainly boils down to:
In summary, there is a lot to consider around this topic and especially in how best to implement it into a given project. These are the key points to takeaway: