If you're an aspiring tech founder and you’re trying to figure out how much of an investment your idea is going to take, this post is for you. Ideally, you want to figure this out without having to talk to someone trying to sell you something. Understandable. Let's get started.
How much does it cost to create a product? Unfortunately, the only real answer is: 'it depends'. Different apps will have different requirements, scopes, features, and expected scale so they're going to require different amounts of effort and, hence, will be priced differently.
But I also didn't write this to tell you the obvious and leave you hanging. While fundamentally each product is different, it's still possible to narrow down your cost structure to an approximate ballpark figure by thinking through a few critical decisions. Stick around to the end of this article; we might be able to do that.
At a high level, 4 major factors will determine the development time and cost.
- Development Talent
Luckily, for 3 out of those 4 - platforms, scale, and talent - pricing is more or less standardized so it's relatively easy to predict the estimated cost. So let’s focus on functionality first.
The first step is figuring out what you're going to need to have in your app. This is a little harder than it seems because we need to go beyond thinking about the main problem you're trying to solve and think about your user's entire experience.
Good products are simple. This means that they are easy to understand and use. By definition, this means that good product teams are very selective about what they want to include. As a founder, your product - at least initially - should focus on solving one problem really really well, instead of trying to do everything.
The best way to understand your requirements is to think through your user's journey. This forces you to think beyond just the cool features to things that are less glamorous but equally important. Saas startups typically need features like subscription billing, payment history, and transactional emails. Your users are going to want to buy your product (hopefully) and you'll typically want to give them the ability to purchase monthly, quarterly, or annual subscriptions. You'll need to record their payment history, email them their receipts and show them how to change their payment methods, etc. Functionality like this is so obvious that founders frequently forget to think and, therefore, budget for them.
The other part that's also often overlooked is the administrator's user journey. As you start acquiring and servicing customers, you're gonna need the infrastructure to support your customers, understand your business and make changes on the fly. You'll need dashboards to manage users, subscriptions, payments, and other sections of your business as well as the ability to run analytics on your data.
You'll also want to think through your customer acquisition strategy. The three most common strategies are advertising, freemium, or free trials. I've written about their pros and cons here as well as analyzed which strategies tend to work better for specific types of businesses/industries. Regardless of what you choose, it's going to have an impact on your development timeline and investment.
Founders very naturally tend to focus on building a product to solve the problem and, unfortunately, tend to overlook many of the smaller, operations-critical pieces of functionality they will need to turn their idea into a business. This can be a very expensive mistake because your app is going to have relatively few unique, differentiating features and will need a LOT of these generic pieces of operational functionality. Hence, from a costing perspective, about 80% of your investment goes into building non-differentiating functionality.
UNLESS, and this is a shameless plug, you work with Byldd. Here's why - Byldd is product development company that specializes in helping software startups get started. We have proprietary tools and processes to accelerate the development process by taking a modular approach to building common, operational pieces of the functionality discussed above. We've built modules for all of the things described above - subscription payments, user management, freemium and free trial infrastructure, and much more. Since these modules are already built and can be plugged into your product, you don't have to invest engineering hours in developing them. This means that 100% of your investment goes into building features and functionality that differentiate your business and solve the problems you're looking to solve.
It's unfortunately not possible to generalize pricing for differentiating features because, by definition, they're going to be unique. Book a meeting with me, describe what you're trying to build and I will give you a ballpark number on the phone.
The platform you choose will have a significant effect on the cost of the app. You have two options here - you can opt for a web app or a mobile app. At Byldd, we usually recommend building a web app for your product or prototype. There are a couple of major reasons why this is generally the best choice when you’re first creating a product:
- It’s the most cost-effective platform in which to develop an application. Engineers are more easily available and less expensive compared to mobile applications.
- Product development is going to be highly iterative by definition. Having a web application means that you don’t need to wait for users to download updates to your mobile app. You can have new features in the hands of your customers much faster than with mobile apps.
- A web app also allows you to reach the biggest audience right off the bat. When your platform is a browser, you do not need to choose between users with Android vs Apple.
- In this day and age, every website needs to be optimized for mobile and tablet browsers, if not specifically designed for them. The cost of doing this is baked into the price. At least, it is here for us Byldd.
Moreover, you need to have a web application of some kind. Even if you think you don't need to build a web platform, you probably do. Administrators of your product are not going to manage and monitor it from their phones. Don't make your team hate you.
The challenge with web apps is that you have some restrictions on what data you can access on a user’s device. For example, if you want access to a user’s photo library for your product, you cannot do that with a web application. In this case, you have to choose between native or hybrid mobile applications.
Hybrid means using a technology (like React Native or Flutter) that works on both iOS and Android devices. Engineers can code once and launch apps on both platforms simultaneously. We would recommend using hybrid over native apps when developing and launching the product because it gives you access to a bigger audience at half the price and in half the time.
On the other hand, native applications run only on a single platform - iOS or Android. Both platforms use different technologies for their apps. As native apps require double the resources, they usually cost twice what hybrid apps cost. It’s also usually very difficult to find engineers who are comfortable with both android and iOS native languages so you would have to choose between hiring two engineers or, even if you find that rare engineer, having them work twice as long.
Platform costs are calculated relative to one another. For example, the cost of both Android and iOS apps is not double the cost of a standalone iOS app, since they will share some infrastructure. Additionally, in this case, the Android app is going to be roughly 0.6 times (or 60%) the cost of the iOS app, assuming the same features in both. In that vein, building a web, android, and iOS app isn’t 3 times more expensive than building a web app.
At Byldd, we specialize in developing products and prototypes to help founders go to market. We’re typically able to do this under US $15K with the help of our pre-built module and proprietary technology. It is an excellent alternative for new entrepreneurs who want to test the waters with their idea.
When it comes to scaling there is some good news and bad news. When you're starting out, building a product for scale isn't going to add much to your fixed development costs. Thankfully, because of the ever-increasing infrastructure accessibility on Google Cloud, AWS, Azure, etc, it's never been easier or cheaper to build for scale. As long as engineers follow best practices and deploy your app using autoscale functionality, you should be set.
The drawback is that the cost of these services is variable and depends on the number of users. They start at $50 per month and you can generally expect to pay an additional $100 monthly for every 1k-2k users. This comes out to $0.05 to $0.1 per additional user per month, which isn't too bad. This will drop further as the number of users increases.
But overall, as an aspiring startup, having a large user base is a very good problem to have. You can always pull your infrastructure off of autoscale when your millions of users are getting too expensive to manage.
Thankfully, all of the big IAAS (Infrastructure As A Service) providers - Amazon Web Services (AWS), Microsoft Azure, Google cloud platform, and IBM cloud have free tiers of servers. They’re usually very tiny and won’t handle a lot of traffic but are more than sufficient for the few months it’ll take to build your app. I won’t go into the differences between the 4 but, in most cases, the services they provide have become commoditized and there is a negligible price difference between them. Moreover, all four of them have startup programs that waive costs for early-stage companies - we just need to apply. It’s things like this that we help you take the maximum possible advantage of when you work with Byldd.
When it comes to talent, there are usually trade-offs between cost, quality, and time. Founders have a couple of options available to them, some good and some bad. This works in two ways - the kind of talent you hire, whether they’re interns, freelancers, agencies, or full-time hires, and also in the kind of tech stack you have. Experts in some technologies cost more than experts in other technologies. Everything has its pros and cons and pricing is just the tip of the iceberg.
The cheapest option by far. Unfortunately, lots of founders take advantage of free or cheap CS interns to help them build their products. I'm not gonna go into why free internships are bad for everyone all around. For founders, even having paid interns are going to have some undesirable consequences. A CS degree does not an engineer make; You're likely gonna see code that's not production grade or scalable. Interns are also generally gonna face a steep learning curve which could mean significant delays.
- Individual Freelancers
This can be a good option sometimes. They're more qualified than interns, and you're also likely to get somewhat better quality but it's usually hit or miss with this type of talent. The best engineers are usually fully engaged and unless they've built production applications solo from scratch, freelancers are also going to face a learning curve that is gonna cost you time, and hence, money. Freelancers are generally more experienced but sometimes less committed - especially if they’re working full-time somewhere else. It’s unfair and unrealistic to expect someone to work 8-9 hours at a job and then come home to spend another 4 hours on your business without having a major stake in the company.
They're potentially more expensive than freelancers because you'll be working with a team rather than an individual but they also tend to be more competent, with a higher chance of actually completing your project on time and on budget. However, even with agencies, quality can be a hit or miss. Their incentives are also skewed because the more time you spend building a product, the more money they make and they can cost you tens of thousands of dollars.
In-house developersThere is tremendous value in having team members with a vested interest in the success of the product. However, besides being the most expensive, this is also a high-risk proposition. Hiring qualified developers is difficult and mistakes can be expensive.
This is where Byldd comes in, while we’re product development company, we specialize in working with early-stage founders to help them build and launch their products or prototypes. Companies we’ve worked with have been able to generate revenue, go on to YCombinator, and raise money at 8 figure valuations. Our incentives are also aligned because we don’t charge on an hourly model - we do a fixed project cost to launch your product and then give you a full-time, dedicated product team after you’ve launched. Typically, we’re able to launch your first product for under $15K.
On the technical side, I’d recommend using the MEAN or MERN stack when you’re starting your startup journey. There are many advantages to these stacks and no real disadvantages.
- NodeJS - the ‘N’ in the MEAN and MERN stacks, is a highly robust, well-supported scalable language that is great for both early and late-stage applications. This means that you won’t need to pay for a refactor or port to a different language in the future.
The Bottom Line
Ultimately, the right answer is still ‘it depends’ but the factors outlined above will help you calculate a ballpark based on your requirements. If you work with Byldd, we are usually able to help you get the product or prototype out in about a month and for less than $15K. We use pre-built modules to accelerate the development process and keep costs low and give you battle-tested advice on how to take advantage of the various startup programs and fundraising opportunities that are open to you. Companies we’ve worked with have gotten into YCombinator, generated hundreds of thousands in revenue, and raised money at 8-figure valuations. Reach out to us to get a time and cost estimate for your idea.