What we pay for, what we've built ourselves, and what I'd choose again.
In the last 10 years we’ve scaled Groovy Group from about $3m in annual sales to over $70m annually now.
There’s quite a bit happening behind that number. Online stores, physical shops, manufacturing, wholesale, warehouses and an advertising business. Each has its own software needs, and then there’s everything involved in running the group.
In my last post, I wrote about why I think AI is going to change the software industry. This time I thought I’d share what our own setup looks like.
We’ve been building tools for our businesses since 2015, with some absolutely amazing developers I’ve been lucky to work with for years. Alongside those tools, we still pay for plenty of software.
Shopify runs the stores
Sportsfuel, Nothing Naughty and Clean Nutrition all run on Shopify.
We’ve built quite a lot around it, including our subscriptions app and tools for managing stock, printing, and scanning orders. Sportsfuel also has a custom mobile app.
Sportsfuel’s retail stores run on Shopify POS. We used Vend years ago, but having the shops on the same platform as the website, with the same products and the same stock, is simpler.
But Shopify remains the foundation. Products, orders, checkout, payments and the connections to other apps all sit around it.
I’d choose it again. Building an entire commerce platform would be a huge distraction from running the businesses and improving the parts that are specific to us.
Some small apps are well worth paying for
Judge.me is a good example. We use it for product reviews across all three brands, and it’s the sort of software I’m happy to keep paying for: useful, fairly priced and doing a job we need.
We also have tools like Matrixify for bulk data work and eShip (NZ Post branded Starshipit) for shipping.
Syncio keeps products and stock in sync between our stores, and Channable builds the product feeds for Google and Meta.
These don’t make for particularly exciting screenshots, but moving product data around and getting orders out the door are fairly important parts of ecommerce!
Having developers doesn’t mean every app needs an internal replacement. There has to be a worthwhile reason to take on the job.
Search: from Algolia to Typesense
Site search is a good example of a cost getting out of hand. Sportsfuel ran on Algolia for years. By the end we were paying about US$1,400 a month, and the month we went over our committed usage added another US$4,000 on top.
Last year we moved to Typesense, which is open source, and run it on Typesense Cloud. It costs us about US$60 a month. Same job, a fraction of the price, and we own the integration so we can tune it however we like.
We built our own subscriptions app
Groovy Subscriptions started with a problem in our own stores: I didn’t like paying a percentage of subscription revenue to the software provider.
If a customer’s order doubles in value, I don’t think the subscription app has necessarily done twice the work.
So we built our own. It handles Nothing Naughty’s subscriptions and Sportsfuel’s Pro membership (and soon to be Sportsfuel’s product subscriptions too), and it’s the first app we’re putting more effort into offering to other businesses through Groovy Apps.
The pricing approach is straightforward: a flat monthly price, without taking a cut of every order.
Judge.me is a useful reference for what we want to build as a software business.
Inventory and manufacturing need different tools
Sportsfuel buys products, holds stock and moves it between a warehouse and stores. Our own inventory system, Skux, handles purchasing, receiving and transfers.
Nothing Naughty has a different problem. We buy ingredients and packaging, manufacture products in batches, and turn those into finished goods.
We’ve been building Newdoo for that side of the business, after deciding to move away from Odoo. Yes, the name is exactly what it sounds like.
This is where custom software has historically made the most sense for us. The details of how goods move through a business matter, and trying to fit those processes into someone else’s system can become a project in itself.
Of course, building your own also means owning the fixes and ongoing improvements. That work doesn’t disappear once the first version is running.
The Hub brings more of the group together
Our internal Groovy Hub is probably the biggest change to how we use software across the group.
It brings together things like people information, scorecards, feedback, team updates, business dashboards, documents and our content library.
Previously, those sorts of functions would have lived across separate apps and spreadsheets. Bringing them together gives us more control over how they connect, and makes them easier for the team to find.
It also means we can change something when the way we work changes. We still have to decide whether a feature is worth building, but we can make that decision ourselves.
I’ll do a walkthrough in the next post so you can see what this looks like in practice.
Email and customer support are still changing
For email marketing we used Klaviyo for years, until the bill kept climbing and we went looking for alternatives. We landed on Brevo and ran it for about a year. It was fine, but it wasn’t built for the more agentic way we now want to run email, so we’ve moved to Shopify Messaging while we build our own.
Most people are terrified of changing email providers because deliverability is a black box. The move to Brevo turned out to be a lot less scary than it’s made out to be. Warm things up properly and it’s very safe.
We’ve used Gorgias for customer support for years. Like a lot of SaaS companies right now, their answer to AI is their own AI, inside their own product, priced their way. We’d rather plug in whichever models and agents suit us, and that’s not something their setup is built for. So we’re building a replacement for that as well.
Support is a good example of the work involved beyond making an inbox look nice. You need the customer’s order information, email history, social messages, attachments and help content. Messages have to arrive, and replies have to get delivered.
The replacement is still a work in progress. I’ll have more useful things to say about it once we’ve made the switch and lived with it.
We still use Google Workspace, Xero and PayHero
Email, calendars, documents and spreadsheets live in Google Workspace. The team uses Google Chat.
We use Xero for accounting and PayHero for payroll.
These are the sorts of tools I’m happy to buy. Payroll in particular comes with obligations that don’t go away because it’s become easier to write code.
There are plenty of other things for our developers to work on.
Groovy Media has its own reporting system
Our advertising business has a different stack again.
We’ve built Gstats to bring advertising costs and partner revenue together, so we can see performance and run our own automation.
It’s another example of why we started building software well before the current AI tools arrived. Sometimes you need something quite specific to how your business works.
AI is now part of the stack too
I use Claude and Codex extensively for research, analysis and building software. Our developers use AI tools as well.
One of the most useful changes for me is being able to ask questions of our actual business data, investigate something, and keep digging without having to manually assemble every report first.
The answers still need checking. But the amount we can investigate and build with a small team has changed considerably.
That’s why our stack is changing faster now.
What I’d choose again
If I were choosing again today, I’d still start with Shopify, Google Workspace, accounting and payroll software, and useful apps at sensible prices. I’d then look closely at the work our team repeats, the systems that don’t connect well, and the expensive tools we only use a small part of.
That’s where I’d start building.