Shopify vs WooCommerce
Intro
I have been an open source software user since I first installed Slackware from floppy disc. For most web projects I've self hosted or managed a bare metal CentOS or Debian server.
Naturally this led me to open source tools and frameworks, avoiding using IIS at all costs (then I met the real world and ERP) and leaning into anything Linux and PHP. When Magento came out I was interested as a geek and in 2011 migrated our ecommerce site to Magento 1.4. Twelve years later the company is still using the same base install to run a £30m+ revenue website.
All this is to say that I had no reason or desire to use managed web platforms such as Shopify and Wix, and held them in some distain sure that there would be spaghetti code, missing features that I could not hack in myself and cruft I did not need.
In 2022 when I started working as a consultant I quickly found out that many clients used Shopify and Woocommerce. This is my opinion after about 6 months of using both daily.
WooCommerce Positives
I can't think of any good reasons to use WooCommerce - just use Magento.
Great, it's open source. So is Mage.
Great, it's self hosted. So is Mage.
Great, it's got an OK-ish eco system. So has Mage.
Great, it's simple to install. So is a 3rd party hosted Mage.
Great, it's cheap. So is a 3rd party hosted Mage.
WooCommerce Negatives
It's built on top of a blog. When you say that out loud "My ecommerce system, that handles orders, products and customers, is based on a blogging platform that is well known for it's past problems with security vulnerabilities" you don't have to have any technical understanding to know it's not a purpose designed tool.
The below is in reference to the back end admin - not the front end
The interface is horrible for daily ecommerce tasks.
The UX is crap, editing multiple products gets messy as it doesn't remember it's state.
The menu structure is a hacked together mess of Wordpress bits you probably don't need on an ecommerce site and then WooCommerce bits smushed in the middle with plugins above and below or just anywhere.
In short it's not nice to use as a daily tool.
The there is the cost - you need plugins, hosting and a 3rd party payment gateway to operate. In my experience the total cost is identical to Magento and very similar to Shopify at £50 a month.
Shopify Positives
The biggest thing I found when using Shopify was how polished everything is. Clearly being a billion dollar company and having a huge dev team works.
The best admin interface I've used for creating and editing products and managing orders. Everything from creating shipping profiles to discount codes is slick and easy to use (hey, it's been designed for non-techies).
Bulk editing is better than even Magento with Amasty mass actions... well almost. You can bulk add related products, edit varients and perform any admin task with ease.
Shopify has a nice templating language for front end dev they call Liquid. For example, if you want to check the length of the page title to maybe append a phrase at the end all you need is:
{% if page_title.size <50 %}
The front end "visual builder" is actually really good for creating different templates and designs, such as on the homepage. You or your dev can create blocks that can be dropped in all over the place. Again you can feel the money that has been spent polishing the editor.
The Shopify checkout is very good. The conversion rates are fact. The negative is you have no control at all unless you are on Pro - but why would you want to mess with something that Just Works.
The eco system is huge, with everything from the real bottom feeder agencies through to big boys managing large brands. Some of the biggest sites using Shopify include:
- Gymshark
- Allbirds
- Penguin Random House
- Unilever
- The New York Times Store
- Leesa Sleep
Shopify Negatives
Closed source, so you can't hack around with the checkout or anything backend.
There is no control over checkout (even adding scripts is borked now)
I find as a dev trying to optimise for speed can be like hitting your head against a brick wall - there are some scripts and libraries that are going to be loaded in no matter what. For example I tried to remove the Universal Analytics tag, but it was still calling some generic UA tag. Shopify are running their scripts, such as trekkie, no matter what.
Which leads on the fact that a billion dollar company still doesn't support GA4 officially, less than 6 months before the switch off of UA. There are plugins but they are expensive and lame.