Starting your first business can be a daunting task. There’s so many variables involved - which ones to solve for, which ones to figure out?
Typically as software engineers and product people, building the product and writing code is not where we falter.
Where we get stuck is with existential questions like:
And from my little experience in entrepreneurship, I find these questions to be more important than actually designing and building the app. Trust me when I say this.
Since I’ve been answering questions on email and Twitter DMs around these topics already, writing a guide came as the natural next step. I've previously written about growing my Shopify micro-SaaS to $25k MRR. This guide is a continuation of that series.
If this guide is for you, read on. I’ve laid out the index of topics covered in the post.
Depending on the stage of your journey, feel free to skip to the sections that are most relevant to you.
Shopify isn’t the only choice when it comes to picking an apps marketplace. There’s
All these marketplaces are valid options for you to start. I would lean on a marketplace where there’s a combination of 2 factors
I’ve previously written about uncovering opportunities on Shopify and I also shared all my research in my big Shopify app ideas spreadsheet. Let me reiterate on the advice shared there in a more structured manner that will hopefully better answer questions like:
There have been people who have asked me what kind of problems to solve, or what are the underserved niches. The thing is - if there's an obviously underserved niche and people have taken the time to research about it, they are probably busy solving it. If it's being posted in any blog post, know that it's no longer an underserved or hidden niche, because clearly anyone could find it.
Ultimately, only you can find an idea that you find worthy enough to pursue, whose various pros and cons are justified in your mind. And therefore, I can only provide a directional framework towards evaluating ideas. I can't list out ideas.
The best use of a directional framework is to
This first section of the article will help you with casting a wide net.
As you go further along the article, I've shared ideas and techniques which you can use to narrow down your search.
I recommend this as the starting point for anyone new to the Shopify ecosystem. Start by browsing all the categories & sub-categories of apps on the app store. You can do the same on SASI.
The purpose of browsing this way is to familiarise yourself with the different types of problems faced by merchants and being solved by apps. Ideally, you want to note down some interesting apps that you come across during your browsing adventure to investigate later on.
Okay, this is a step I took when I was browsing the app store. I would type in "aa", "ab", "ac"... ... ... "zz" on the search bar, note the autocomplete terms and check the results of ones I found to be interesting.
Turns out, Shopify has since updated their algorithm. Autocomplete suggestions only show up after you type 3 letters now. So you can't recreate what I did with autocomplete and go through every letter. It's not feasible anymore.
Not to worry, it's still useful.
From step 1, all the apps (hopefully at least a dozen) that you shortlisted for being interesting, extract the keywords used in the app's title or description.
Now, enter those keywords in search to find whether they are apart of autocomplete, which gives you an indication as to whether there's significant searches for that keyword.
More importantly, you discover all the other apps (and therefore competitors) that you would have to compete with should you choose to build an app targeting the same keyword.
You can find out which categories a competitor is listed for and their rankings for those from their SASI index page.
Are you with me so far? Below I’ve written in greater detail about finding out the installs and revenue of competitor apps, and various broad approaches to build differentiation.
Some people have tried using the Google Keyword Planner, with no success. I have a method that works pretty well. It doesn’t give you exact 100% accurate numbers, but my method will help you get directionally relevant answers.
Better than explaining the theory, let’s jump right into a practical exercise.
After talking to different app developers, I’ve found that the app installs-to-reviews rate can be anywhere between 3% to 15%. Let’s use this information to find out how many people might have installed the this WhatsApp app.
Based on the review trend, the app got ~350 reviews in the past 30 days.
Next, I installed the app to get a sense of how well they might be converting installs-to-reviews. Some apps have aggressive review widget popups (which are technically against the App Store rules but it’s a popular practice anyway).
Whereas other apps have proactive customer support which starts a conversation with customers even before they might need assistance. I give such behaviours a higher review rate of 10%. And otherwise, you can assume it’s close to 5%.
The app being discussed has an aggressive review widget popup, so let’s assume 10%. Which means the app got close to 350/10% = 3500 installs in 30 days, or roughly ~117 installs per day.
In this case, I can verify that the WhatsApp keyword indeed has such high volume, as my app also gets similar install numbers.
This app is completely free, so there’s no revenue to guesstimate. Let’s try that with another app.
After installing the app, I can tell that they don’t aggressively push for reviews. Let’s assume 5% install to review rate. Based on the number of reviews, the app must have got 107/5% = 2140 installs in the last 30 days.
The next few paras involve basic math and numbers. Get ready.
Taking my app, we get about 5% installs to paying customers. You can estimate a range based on how many features of the app are free, competition and competitor’s pricing (if a lot of competitors are free, lower the install to paying customers rate). In some cases this number can be as high as 20%, especially for apps that don’t have a free plan or are operating in niche use cases.
At 5%, I think we are at the lower end of the spectrum.
For your guesstimates, assign a value between 2%-20% depending on the app you are evaluating.
The app being discussed has a free plan, but it’s quite restrictive. If anyone goes beyond 3 pages and likes the app’s core functionality, they are likely to upgrade. Let’s say 8% of installs become paying customers.
Great, so the app added 8% of 2140 = 171 paying customers in the last 30 days.
The app being discussed has 3 pricing plans, $14.99, $29.99, and $59.99. Looking at how the functionality and usage limits have been set, my guess is 50% of paying users are on the base plan, 30% on the second plan, and 20% on the top plan. Which gives us a blended ARPU of $28.49.
Awesome, that means the app added 171 * $28.49 = $4871 MRR in the last 30 days.
Now, these estimates aren’t 100% accurate and they never will be. That’s why it’s a guesstimate.
But what you’re looking for is a binary answer. Even if my numbers are off by 50%, you still have a good enough estimate to make a decision.
Glad you asked. I know me thought dumping isn't always the best way to share information, especially when it comes to numbers.
So, I've built a neat calculator into which you can plug in your guesses and the calculator will guesstimate for you installs, paying customers, and new MRR for an app.
You can find the calculator in the Guesstimate tab of the spreadsheet. You can clone the sheet and start using it.
Based on this guesstimate, what is the answer to the question above? The answer in this case is an obvious YES.
Also keep in mind that higher MRR potential doesn’t necessarily mean an app idea should be your top choice. If an app idea has a high money making potential, chances are you’ll face stiff competition from more apps and app developers competing for a piece of the same pie.
Keep in mind your ambitions and your income goals and pick a niche where you’ll be comfortable playing. You don’t want to start a game whose difficulty is too hard.
Your purpose is to win, not to have a hard time.
Note that I have ignored all other factors like churn, existing users upgrading to higher plans, etc. A guesstimate is hard enough, but remember that what you’re looking for is a directional answer, not a full-blown report.
“How do you decide if you can complete with what's out?”
You’ve narrowed down on a couple of ideas but there’s competition. You want to find something that sets you apart from competition.
On a basic note, one can always do a better job in the core aspects of a business.
These are core pillars on which a better business can and always will be built. If your competitors are lacking in these aspects, that’s opportunity for you to do a better job.
The best way to create long-term differentiation is to talk to your own customers, find unique insights from them, and solve their problem in the best possible way that only someone with a unique insight can solve. That’s hard to copy.
In terms of optimisation for ranking on the app store, you have to understand that merchants when hunting for an app to solve their problem are on a mission. They are browsing, they don’t have much time, they need the best solution for their problems, quickly!
Don’t forget to go through Shopify’s App Store guidelines which provide useful tips on making a good listing page.
This is quite self-explanatory, and yet I see a lot of people making mistakes here. A majority of the installs for your app will come from the primary keyword that you target.
Examples of #1 keywords:
There will be secondary keywords that are common for many apps, such as “abandoned cart”. But remember, you want to primarily target the keyword that’s most relevant to your app. You can find that by answering this question - “What will my ideal customer type in the search box if they are looking for my app?”
In case of PushOwl, their #1 keyword may be “Web Push” or “Push Notification”. Good on them, they managed to fit both keywords into the title of the app which is limited to 30 characters. If that works for you, great. If not, you will have to pick one.
I won't go into great detail in this section, but Shopify has an excellent frontend framework and UI kit called Polaris which you should definitely use. It will greatly speed up app development.
There are already excellent guides on the internet by Shopify and others on how to build the app. I recommend you refer to those.
If the Shopify App Store will be your primary way to acquire new customers, then ranking becomes the most important factor in terms of gaining new installs. You could try cold emails, partnerships etc. but according to me, if you don’t nail your primary channel of acquiring customers (the App Store) right, then you’re in for trouble.
Exceptions to this are
More on the second point in a later section.
What will work for your app will be different for what worked for mine.
Early on, you need to experiment and find the right actions and prompts, the right kind of conversations that lead to reviews, and then create a process around it that you follow religiously for several months.
Now that you know about your #1 keyword and the secret behind generating reviews, let’s get you traction.
Reviews are great, but where this starts to benefit your app is when your reviews and average rating is high enough that you start ranking in the top 3 for your #1 keyword.
Sometimes you might achieve this in a month (that happened with us, but we were lucky that the top 2 apps were rated 4.7 only).
But you need to be realistic and estimate how soon you could reach the top 3 spots for your for your #1 keyword.
The top app has a 5.0 star rating and 534 reviews. Second app is 5.0 rated and 53 reviews. Third app is also 5.0 rated and 31 reviews. Now, SMS is a very competitive keyword, but based on this, you can estimate that if you are able to find a process that generates 2 reviews a day, it would take you at roughly 2 months and a stellar 5.0 average rating to reach the #2 spot. Hard, but not impossible.
This app which is currently ranked #2 for the keyword did a stellar job where they came in from nowhere and grew to an enviable ranking within 6 months.
Here’s how they did it:
This right here ^^ is a very viable strategy that you can adopt for your app.
The point where you switch from completely free to having paid plans might come in 1 month, or 6. That depends heavily on the keyword you are targeting and how strong the competition is for that keyword.
A lot of people who reached out asking for help with growing their app essentially launched it sometime this or last year, and have not consistently hustled to get reviews and gain ranking. And it shows.
If you are expecting building, launching, and running the app is the complete job description, you’re mistaken. A continuous commitment to improving your ranking (which translates to marketing/distribution in the context of the App Store) is required for long-term success.
“Apart from getting featured on the Shopify app store, did you do any marketing, promotions such as cold emailing, social media/Shopify ads, partnering with Shopify developers to grow your app? If yes, how was your experience with these?”
100% of the installs for my app came from organic Shopify App Store searches. We never tried Shopify ads, or cold emailing or even partnering with other developers. However, if your pricing model permits (meaning, you are not a fixed $10/mo app), I highly recommend setting aside some budget to experiment with
But what if you don’t have a budget or money to spend on ads? In that case, you use your technical and marketing chops to create assets that would attract Shopify merchants. Here’s a few examples
These are simply examples, but you get the general drift right? Create websites or content that a Shopify merchant might already be searching for.
The biggest drawback to this approach is - that it make take a while for traction. And even after that, the traction you get might not be from a merchant base that’s interested in your app.
If launching on the App Store didn’t do the trick for you (it should if your keyword targeting is right, if you’ve found at least one way to differentiate from competition, and if your App Store listing does the requisite minimum), don’t worry, all hope is not lost.
The right way to approach this is to give your app away for 3-6 months in return for merchants to beta test your app, give you early traction, feedback, and reviews that will kick things off for you.
Right after you submit your app, you want to make sure that it is listed under the right categories and therefore giving your app the exposure it deserves. My app qualifies for marketing, customer support, and sales and conversion optimisation.
Initially, my app was only listed under customer support, so I applied to get listed by filling this Google form and giving Shopify ample reason that my app deserves to be listed under the requested categories. You can read more about app categories and Shopify’s criteria for deciding which categories an app belongs to over here.
Later, I also applied for collections such as “Useful apps for India”, which was easy to prove since a large chunk (the largest) of my app’s users were from India. However, I applied for collections only after the app had already crossed 100+ reviews while maintaining the 5.0 star rating. That makes it that much easier to convince Shopify staff that you are a high-quality app with a proven track record of giving great experience and service to merchants. Exactly the kind of apps that Shopify wants to promote.
Finally, many people have asked me how to get featured on the App Store. Let me tell you straight up - you can’t apply or fill a form to be featured.
The good news is, Shopify staff is continuously looking for good apps to feature. They WANT to feature good apps, so be a good app and prove you are a good candidate.
You can do this by following all their App Store requirements, having great looking creatives and banners for the listing, and providing excellent customer support to merchants, which is reflected by your #reviews and average rating.
The right pricing will help you grow revenues 2x faster than the wrong model. Figuring out pricing is therefore a crucial step, and you should try to get it directionally right in the early days.
Let’s take a look at different pricing models:
This app has 2 plans - Free, and $15/mo. Other “product review” apps have tiered pricing that usually start out free for few orders or few review requests, and the pricing scales as the value metric grows.
In a sea of competition, Judge.me figured out a way to differentiate with their fixed $15/mo plan for unlimited use. This also implies that the app developers found a way to keep costs fixed even as usage scales, otherwise they would be losing money from large customers.
I love the fixed price, cost leader approach because it resonates with the large SMB merchant base on Shopify that wants to use an affordable tool where the costs are predictable (meaning, it doesn’t vary every month based on store activity).
It’s not all rosy too. Like everything in life, it has its pros and cons. The cons being - you won’t have large customers who would want to pay you $100/mo or higher. Conversely, large customers may not sign up for your app, or you may not prioritise their requirements, and therefore you won’t attract large customers later on as well. If this is a tradeoff you’re willing to accept, cost leader is a viable option.
My favourite pricing model is a scalable pricing that grows with a key value metric. This value metric should correlate with customers gaining increasing value from your app.
ReConvert has done a fantastic job here. Their page builder can add any time of widgets on the thank you page, and instead of charging for number of upsells, number of widgets or something like that, they have assumed that everyone will add some kind of widget to the thank you page. And that every person visiting a store would visit the thank you page when they place an order. Hence, a valid value metric is number of orders received by a store every month.
ReConvert’s pricing starts at Free for 50 orders/mo, which lowers the barrier for any merchant to install the app and give it a whirl. Pricing starts at $7.99/mo for 100 orders/mo and scales all the way to $349.99/mo for 50,000+ orders/mo. Obviously they won’t have hundreds of customers at the top tier, but even getting 3 of those adds a cool $1k MRR to their app!
The founders of Junip took an interesting approach where they gated features based on the plan.
I presume that after working with merchants in the industry, they figured what small, mid-sized, and large merchants care about. And they created 3 pricing plans based on those.
The base $14/mo plan caters to the small merchant, and therefore it also has support for only 1 user.
The mid $54/mo plan is for slightly larger stores that have a few team members and want to do advanced stuff like integrating reviews to another app and set up automatic flows.
And the top $179/mo plan is targeted at big stores with staff of 10+, presumably doing $1mn+ in yearly revenue who want dedicated onboarding, dedicated support and lots more customisation to the look and feel of the app.
I have to say, coming up with such an elaborate pricing model isn’t easy. Junip founders must have a lot of industry experience prior to starting this app, or they conducted a lot of user interviews to arrive at these insights.
Of course, this also means that you can also do the same. It will take time, is all, which shouldn’t be a problem if you’re in it for the long haul.
If your app caters to an audience that is extremely sensitive to pricing and doesn’t like paying subscription fees, your last option is a purely usage based pricing. An example of this is - if you’re an SMS marketing app, and you charge for nothing else but per SMS.
I recommend against this pricing model, simply because it forgoes subscription fees, which is almost 100% profit for you. It’s profit you can reinvest into your business.
Usage based pricing means you would incur some cost to give that incremental service. Let’s say you sell $10,000 worth of SMS in a month from 200 customers and your profit margin is 10%, so you made $1000. Now let’s say you charged a $10/mo subscription fees from 200 customers, that’s $2000 right there!
This doesn’t mean usage pricing is all bad. What I do recommend is to use it smartly in a way that benefits you in the long run.
For example - if you are building an app that you cannot give away for free for the first few months, forgo the subscription fees and have a usage based pricing. This will help with adoption while ensuring that you aren’t running into losses huge losses.
Introduce a subscription fee after a few months when your app has matured in terms of features and stability, and when you’ve gathered enough reviews to rank well in the App Store.
I’ve found that Shopify merchants are well versed with the concept of paying for an app. And therefore I recommend from the day you introduce paid plans to have a screen shown after install where the customer is asked to select a plan, whether the Free plan or the Paid one.
However, no advice is one size fits all, so if your trial numbers aren’t good with this approach, good being somewhere like 10-30% installs starting a paid trial, then maybe you want to try a different approach to paid trials.
The approach we tried earlier was to directly land new installs to the chat button settings page, and then add a mention beside features inside the app that are part of a paid plan. Maybe that works better for you.
Trial period is important. But longer trials aren't necessarily better. Your trial period length should be decided by how long it takes for a new user to derive value out of your app and decide whether to keep using the app. If that time period is 4-5 days, then set a 7-day trial period. If it’s 15-20 days, then set a 30-day trial period.
The caveat to longer trial periods is that it takes that much longer to test changes. With a short trial period (say 7 days) you can make a change to your onboarding flow and look at the install-to-trial conversion data on the 8th day. Therefore you can make decisions faster, or more decisions in the same time frame as opposed to a long trial period (say 30 days).
Alex emailed me saying “I can't help but think that many of the apps have been a race-to-the-bottom. The apps that seem to have built some moat are based off of specific domain knowledge.” Alex is right, certain niches within the App Store are a clear race-to-the-bottom. But here’s the thing, if your goal is to make between $1k-$5k/mo, it’s still okay to be part of that race.
However, if you have larger ambitions, you want to be mindful of your long-term game plan. Let me highlight a few:
It’s to have several apps, some of which are completely free and act as lead generation for the other apps. Secondly, you build 10 apps that make $1k each, you’re at $10k/mo. Although the actual distribution would be 6 apps free, 2 apps making $1k/mo and 2 apps making $4k/mo.
But one way or another, you can reach a high income level using this approach.
“Well, instead of building 10 commoditised apps, why not build 5 high-quality ones.” Easier said than done. In my time observing other players in the App Store, only one team has pulled this off really well - Conversion Bear. And they have a team of 4-6 people without which executing this would not have been possible.
Charging customers $500-$2000/mo sounds awesome right? That’s possible if you build an app that’s targeted at the Shopify Plus enterprise merchants.
However, I don’t think this is a viable strategy for indiehackers or fits into the general description of micro-SaaS. If you want to learn more about this path, look at how apps like Yotpo and Gorgias approached the Shopify market.
The last game plan is the one where you’re not obsessively thinking about the future and trying to carefully plan an outcome.
But instead, you follow your heart and focus on the inputs.
That’s the approach Sankalp and I went with when we started our journey. It’s quite stress-free, I assure you :)
Lots of first time entrepreneurs go wrong by trying to take on too big a challenge. I've done that in the past and failed, until I realised that instead of trying to hit a home run on my first attempt, I should look at the career of building businesses the same way I would a career as a software developer, or product manager, etc.
Treat your first business as a stepping stone into building more businesses in your life.
In your journey, you will discover new problems, gain unique insights that generate new ideas, learn about the market in ways that cannot be captured and written about. All that will propel you into your next business :)
All the best ✌️
By the way: I created a course called Learn Programmatic SEO. This course can be really useful if you are trying to acquire customers for your Shopify app via Google search.