1.05.2025
Fare thee well Shopify
Twice in my professional carreer, have I had the opportunity to deal with Shopify and twice I've opted to quit the platform fairly quickly. It's not a bad platform, but it's betrayed Einsteins old principle "Make things as simple as possible, but no simpler". In this post I'll review my experience and point the way to something better.
Cost of staying
The cost of leaving Shopify is significant. Disregarding any fees you might owe, you'll have to find or build another engine, which handles a great numbers of things. From product inventory to financial reports, Shopify really gives you quite an extensive portfolio of features for what is initially, a very low cost. The hidden cost however, was what compelled me to get the hell out of Dodge. Consider this before/after shot:
On Shopify
Off Shopify
There are a number of things you can do to help speed up a slow Shopify store and they all involve lots and lots of manual labor. Compressing images. Minifying CSS. Bundling resources so you don't force each client to open a whopping 99 connections just to load a page. This comes after you've paid for a premium Theme.
Perhaps you've heard the old story from Amazon, which says that for every 100 milliseconds they shaved off their page-load time, their Conversion Rate went up by 1%. I doubt that's even remotely true when taking quantum leaps like this one, but even a 3% increase is now dramatically changing the finances of this shop.
Customers dislike slow sites for a good reason, they hate wasting time. If you search for some product and the first link you click just hangs the browser, odds are you just click the next link, and the next, until something opens nearly instantly. Do you know who hates that even more than customers? Google!
I struggled mightily to get the product pages ranked on Google but as the newest player in the Equine sector with the slowest tech, it just wasn't happening. Not until we jumped off Shopify:
If you're not familiar with the Google Webmaster reports, they basically tell you how many pages they've found on your site (the grey) and how many of those are searchable through Google (the green).
These were indeed the major problems that had to be addressed. In addition there were many minor hiccups which impacted the customer experience. For instance, you'll find that it's quite easy to add your favorite shipping provider, but if you want to support delivery to dropboxes in addition to home-delivery, things change dramatically. First you search the Shopify App store and here you'll find a neat plugin which does exactly what you want, for exactly the market you want - In this case the danish. So I installed the plugin, I paid for a full year, I jumped through all the hoops with license agreements and API keys and so on, all fairly plug n play. But lo and behold, the plugin simply does not activate during checkout.
After much reading I finally get a hold of the developers of the plugin, they insist I speak with Shopify themselves. After much waiting, I finally get a hold of an Expert on a forum, who advises me that this plugin, uses a single feature which is only available in the Pro package, for which I am expected to pay 290 EUR per month, paid up-front for a full year. Unexpected and very inconvenient. The the sign on the door says 25 EUR / month but in reality we're well above 3500 EUR before we're even starting working.
What seemed like a great platform to quickly get a shop up and running for just 25 EUR/month, became an absolute time sink, which could not attract new customers, which could not convert the traffic I paid for and which ended up costing an arm and a leg. The cost of staying would have put us out of business.
The Cost of Leaving
Well, here's actually what's great about Shopify. You can go from zero to something which looks like a shop in about 10 minutes. Everything Shopify gives you can be built/configured in other systems, but it will take a lot longer. Here's a short list of what I implemented
- A templating system
- A product database
- An order handling system
- Integration to a Payment gateway
- Integration to Shipping provider
- An inventory management system
- A media asset system
- An actual metric megaton of automatic optimizations
- A transactional mail system
And a few other tidbits. I'm ashamed to say, this actually took longer than I expected but I'm happy with the results, which you can see here: Lindely Stables.
If you ever followed some of the technical writings I put out during my time at Sabre CMS, you'll recall I put a heavy emphasis on performance even back then, but although Sabre was great for it's time, it got a few important things wrong. Media Management for one. We used Cloudinaries APIs (which are wonderful) for everything, which meant loading a lot of javascript on every page, and post-processing every render. This is better and faster than using oversized unoptimized images, but it's a lot slower than just pre-rendering 50 different resolutions and converting everything to WebP. Diskspace is cheap.
Sabre was all about options. It loaded a ton of good stuff, like jQuery, FontAwesome, ION Icons, etc etc. But jQuery can be rewritten as plain JS and the packs can be loaded either on demand or replaced by in-line SVGs. jQuery is easy, but this time I decided to put in the work.
Leaving out stuff you don't need and optimizing that which you do is fairly straight forward. It becomes a little more complex when you start weighing the cost of opening a connection. You'll notice that my system opens only 10% of what Shopify does, but there's a trade-off. Connections download in parallel and whether or not opening one is worth it, depends on the size of the object and the time it takes to open that connection. Meaning whether or not you should depends both on the user and the object. Under a certain threshold, it's faster to inline a blob and to open a new connection, but the threshold isn't the same for everyone. More on this later.
Conclusion
I'm not saying Shopify is a bad system, but I am saying that I think it only works great for small niche etailers who have a strong grip on their audience. Think Streamers would want to sell merchandise for instance. For everyone else, I think the hidden cost of time and the extraordinary difficulty it introduces in terms of attracting and converting new business is a deal breaker. You can make it work, but it's going to take a lot of time and money.
I spent about 3 months hammering out the details to make the fastest, leanest and meanest CMS I could imagine. The result was a 1500% increase in performance, so far a 300% lift in conversion rate but just as interesting: I fed all the details about both shops to Chat GPT in an attempt to work out the electrical footprint of both sites: It starting to look like my system is 40x more energy efficient than Shopify which in itself is a big enough win, that had all other stats been equal, it would have been worth making the switch. The CMS is currently for private use only, but given these strong initial results I'm considering going public with it. Stay tuned for more.

Lau B. Jensen
Lau is a seasoned Danish software developer and consultant with over 15 years of experience in backend systems, web development, and functional programming using Lisp and Clojure. Since 2007, he has co-founded and scaled multiple successful startups while navigating the venture capital landscape. Lau combines deep technical expertise with entrepreneurial insight, delivering robust, scalable solutions tailored to business needs. Creative, driven, and results-/quality oriented, he thrives turning bold ideas into reality.