Back in 2020, I published my first Shopify app. My goal was simple: generate some side income to fund my future son’s college bills. I’ve already written about that..
5 years later, I’m now working full time on my apps. It’s been a hell of a ride. Replacing my income with app revenue once seemed like an improbable dream. Now it’s my full time reality.
It all hit me when my newest Shopify swag came in the mail (thanks again Liam), and I was comparing how much my son has grown between my first care package and now.
I just need to express how grateful I am for the Shopify platform. They’ve been instrumental in facilicating this ecosystem of merchants and partners. Since 2020 I’ve managed to:
- Featured as a top 40 use of customer account extensions, and showcased it as an official launch partner of their Winter Editions.
- Build the first Shopify POS integration for drivers license scanning
- Build the first checkout extension for customer ID verification during checkout
- Attended two Editions.dev conferences in lovely Toronto 🇨🇦 which are now a family tradition
- Made connections with other amazing and talented partners across the globe
- Meeting the genius legend himself, Tobi
I’m so thankful for Shopify’s support, and for my closest mentors (you know who you are), merchants, customers and fellow partners that helped me realize my dream of working independently.
There’s no way I could fit all of the amazing experiences and lessons learned in these years into a single post. But I’ll try keep it to my top 5.
You’re running a SaaS, not a vending machine
Vending machines take money and dish out a product. No customer support, just a machine to maintain. That was my original idea of developing apps, probably like most developers. I’d ship a product, customers would come and I’d make passive money. Easy right?
I wasn’t particularly interested in having 1:1 email conversations or heaven forbid phone calls (😱) with merchants.
Over time, my perspective completely shifted. Now, I eagerly start conversations with prospective merchants, offering video calls and demos. The support inbox is your sales machine. Too often support is seen as an expense - a mandatory service that costs you time and mental energy, but with not much in return.
To me, support is the most fulfilling part of operating a SaaS business. The moment when a customer understands how to use your product, and they see value in it really makes my day. And if my app isn’t the solution, I still have an opportunity to be helpful and at least point in the right direction.
These conversations help you understand your product gaps, your competitors shortcomings, or identify new opportunities. They’re the entry point for growing your business, especially as an app developer. It’s your opportunity to connect with your customers, and it’s crucial to build these relationships. While your app doesn’t need relationships to function, your business does.
Support is often the only chance you have to engage with a merchant, who are also juggling multiple projects and tasks at a time. Helping them efficiently and eagerly goes a long way.
Books I recommend:
Experiments not formulas
As a developer, I liked how code is deterministic to fit a problem. You can create systems that if x
then y
, and easily compensate for z
.
But as a soloprenuer, you constantly have to make educated (sometimes not) guesses, and learn to adapt. You need to learn to become comfortable with experimentation. Without trying new marketing channels, onboarding flows, features, or pricing—you’ll never know what you’re missing.
Now this is an art, and it’s subject to a bit of luck of course. There are so many different signals to consider, but ultimately what it comes down to is serving a customer’s need. Based on the customer’s feedback, you’ll know how close you are to hitting your target.
Now I optimize towards unknowns, because that’s where the magic happens. You might find a new segment, or solve a problem for one merchant that leads to other opportunities thanks to word of mouth.
You also can’t just A/B test everything, those are for testing with large volumes of traffic. Sometimes you only have a sample size of a dozen, and you’ll have to use your intution and conversations with your customers to understand the right path to take.
Marketing can be learned
Shopify’s app design guidelines are already a great resource if you have no idea where to learn how to market. That’s how I essentially got started.
Focus on solving a problem. A very small small problem. Not too many settings, not too many moving parts. Don’t promise the world, just solve a small thing.
How do you know it’s small enough? You can fit a description of your app in one sentence. You can distill the entire value of the app to one key feature. Once you have done that, you’re ready to build and publish it.
Even if your app doesn’t rank on the first page for a keyword, that’s okay — you’ll still get merchants trying it out. But try to differentiate. Build a better UX, use newer APIs, remove steps from onboarding, focus on a specific group of merchants that aren’t called out on other apps homepages.
Just like your app’s functionality will evolve, your marketing will too. Don’t sweat the details until you know you’ve found some traction.
Results don’t come overnight
Products are experiments, they’re little seeds you plant of an unknown type. You don’t necessarily know if they will sprout in a month, 6 months or even a year. To complicate things, you don’t necessarily know what your little plant needs.
It could fair better in a different type of soil (market), it could be a niche product that only a small subset of butterflies (merchants) need, it may be a solution that is only for a temporary problem (ran out of analogies).
The thing is, you still have to go out there and water it every day. That means experimenting with marketing copy, analyzing your keywords that lead to installs, trying different pricing strategies. It does not mean cooking up additional features just because you think it will increase rentention, or rushing out features purely on demand.
It means months of dedicated work. I got up early before my full time job, and I worked after the kids went to bed. I deactivated my social media accounts, I blocked reddit on my phone and computer. I treated my side business like a hobby, I adopted the mindset was being paid to “play”.
I recommend:
- Atomic Habits
- Committing to a specific time every day to work on your app
- Removing distractions, like social media, reddit, gaming, TV - whatever those might be for you
Know your position, know your customer
Like (probably) all developers, I started out charging far too little. Which is fine. It gave me installs, it gave me more support tickets, it gave more experience more quickly.
But you’ll start to get a taste for a segments of customers, and you’ll also find that some segments have very specific needs. The demand for your product might be very price sensitive, or it might not be because it’s absolutely required.
Your pricing should reflect the value your app provides. Undercharging only increases your support burden.
Your app lives in an ecosystem, there will be segments of customers that you can more easily communicate or work with, or perhaps their demand is much higher for your service than another segment. Understanding who your customer is dictates your positioning for keywords and marketing.
Problems are opportunities
A merchant coming to you with an unrelated problem is an opportunity to expand your offerings, or at the least make a referral and build a partnership with another app.
Or a problem with your current app could lead to understanding a UX problem that you otherwise would have missed. Being proactive and seeking out problems signals to your customers that yes, you give a shit. The right attitude leads to more ~problems~ opportunities in the future.
Your app doesn’t exist in a bubble, you should be thinking about how your not integrating with Shopify but how you integrate into the merchant’s entire workflow for the problems they have. That might mean learning about other apps in their stack and how you can make their lives easier and more productive.
It’s such a rewarding experience to solve problems, especially in the age of A.I. where you can iterate quickly and really give a wow experience to someone else.
That’s a wrap
Ok I lied, I gave an extra couple of bonus sections. My b.
I can’t possibly fit all of the lessons learned into a single blog post. It’s best just to learn for yourself firsthand anyway.
I’m still learning, but I credit Shopify for at least giving me that initial feedback loop to at least take my first steps. Without that, I don’t see how I could have made it this far. The wonderful folks behind the App Store, documentation and amazing APIs and platform makes it possible.
But I’m so grateful for this opportunity to service others and solve real world problems. It’s hard to believe this is my full time gig, and now I have a hard time of seeing myself doing anything else. 5 years later, I’m still excited to build my small part of the future of commerce.
Happy building 🔨