How much does it cost to make an application?

Max B, CEO
Max B, CEO
Jan 10, 2024
12 minutes
Contents
What do you like more: pasta or instant noodles? Of course, instant noodles will have advantages in price and speed of preparation, but disadvantages in benefits and aesthetics. But pasta is always about usefulness, taste and quality.
So, those who love instant noodles most often go to freelancers to develop applications, relying on the price and speed of work and completely forgetting that someone will have to suffer from this later. And pasta connoisseurs will choose from “restaurants” based on price-quality ratio.
We’ll tell you how we “prepare” our applications.

What will we order?

“I want what he has!” - a classic of the genre, familiar to all couples from trips to a restaurant.
What is this about? The client comes with the application of a competitor, friend, neighbor and asks to do it like his. You look at the source code, you seem to understand how it works, but you cannot get inside, look into the back office, study the background processes.
Here the price is determined almost by a randomizer. Often depends on the level of imagination and foresight of the developers. The exception will be those who have had similar experiences. For example, we made an application for Fashion House (the largest Belarusian clothing retailer), and now fashion retailers from Russia have started contacting us. From the very beginning, we can outline to them how everything should work, and not torment the client with questions.
Thus, we have identified a group of clients who want not “like his”, but “like ours”. By the way, the situation with them is a win-win. After all, it’s not only easier for us to use existing experience. It is easier for clients to trust such contractors.
Therefore, my advice to you is to look for those who have projects similar to yours in their portfolio.
There is also a second group of clients. They order like this: “I would like something light, with vegetables.” The waiter must quickly figure out what kind of dish it is and offer several options.
In the world of applications, such clients will describe in their own words the vision of the project on 2-3 pages, maybe even draw a schematic image with a pen on a piece of paper. They seem to know what they want, but you have to keep your eyes open with them. Suddenly they forgot about some obvious points, or did not know. Or they simply considered them so obvious that they decided not to indicate them. But for us, absolutely everything needs to be thought through at the project evaluation stage so as not to go over budget. Or work in the format of payment for the number of hours employees work.
Next are those who come to the restaurant with a long list of restrictions: gluten free, no traces of peanuts, lactose free, soy free, etc. They write technical specifications on 50 sheets, and happily describe the contents of each screen. It seems that a lot of information has been taken into account, but the task does not answer the questions: for whom, what to do there, what are the advantages, what will happen after. Just a statement of facts: in the catalog there is a picture, price, brand. But the application is much more. Therefore, you will also have to spend time on such clients to get the missing answers to their questions.

And finally, the most prepared. These people don’t go to restaurants, but order food sets with a verified amount of ingredients and a recipe inside.
In our case, they come with interactive prototypes, a user profile, goals, and a plan for growth and promotion of the product. They clearly understand what they want. But, unfortunately, there are not many of these individuals.
Therefore, almost all the preparatory work, even at the stage of project evaluation, falls on the shoulders of the studio. And it affects the price. We have to come to terms with this.
However, even if we take the last type of clients, their preparedness does not guarantee the same price for all contractors. Some company will go beyond the technical specifications and figure out what the client missed, offer the best solutions, and show imagination. The other will draw 10 screens and calm down.
Someone will tinker with even the level of visuals for publishing in the store, write integration tests with third-party services, set up basic analytics, a functional control panel, etc. And someone, even if they see inconsistencies in the technical specifications, will still do as written. After all, it’s written there...
Let’s finalize the question of ordering a “dish”. Look carefully at the portfolio. Download apps, explore them and make the right decisions.

Why is React Native not “two for the price of one”?

To begin with, a small educational program. React Native is an open source platform for creating mobile applications. It is intended for developing applications for Android and iOS. That is, there is one code, but on the platform it is compiled for 2 operating systems. This means you no longer need two developers - one for each platform. Now all you need is one person who knows how to use React Native.
I hope there are no “old believers” here who still believe that this is an inferior replacement. In any case, if you are interested, we at dev.family are preparing a case where we will tell you why today React Native is already a 100% usable tool. In the meantime, let's continue our gastro-development guide on pricing.
Let's return to everyone's favorite “two for the price of one”. Developing cross-platform applications using React Native is super cool, as it saves time and makes it easier to implement new features and ensures precise synchronization of logic between the two platforms. But you still have to test the product separately, because... Each platform has its own nuances.
Many people, in an effort to save money, first make applications for only one platform. In this case, of course, the price is reduced by 10 percent (or more if you work with a company that does not use React Native). But, let's be honest, you are unlikely to benefit much from making an application only for iOS. After all, by doing so you will simply lose part of your audience.
By the way, if you really care about users and strive to make not an MVP, but a full-fledged product, you also need to take into account tablet support, horizontal orientation, etc. This, in turn, will require additional work at the design and layout stages. But users will not suffer trying to hit any button with their finger.

Who cooks the “dish”?

In the age of Instagram, few people will miss the opportunity to boast that they visited a Michelin-starred restaurant.
What am I talking about? The team, no matter where it works, is always important. And you have to pay for it too. Typically the following specialists work on the project:
1
First, a UX researcher and business analyst. They study the market, user experience and formulate application requirements. At a minimum, the result is a functional description of the project in the form of user stories and an interactive prototype that will show how the application will work. As a maximum, they will build a customer journey map, identify growth points and determine ways to scale the project.
2
Then the development stage begins, which involves at least 1 back-end developer, 1 mobile developer, 1 UX/UI designer, 1 part-time tester. And as an obligatory cherry on the cake - project manager and tech lead. In larger agencies and studios, these teams can be expanded.
Each of the specialists has their own rate (I talked about them in detail in another article). And also your level - Junior, Middle, Senior, which, by the way, affects the rate. For our employees, it averages $40-45 per hour.

Cooking recipe application

So, we take one business analyst and one UX analyst. They prepare a project analysis, identify what the business needs, predict how best to get it, and evaluate all actions. It would seem that the output is simply a lot of different tables with client behavior, scaling options, the ratio of what is desired and what is actually... but errors at this stage cost the business large sums.
Therefore, its cost is about $4000-5000, and the completion time is about a month. If the client is not ready to work intensively with the team, then the work process stretches out indefinitely.
The next line of our application recipe is development. The team works in parallel on design, writing code and server logic. Typically, work begins with integrations, for example, with a payment system or AWS. Then we develop a control panel (you need to manage all processes, send push notifications, study customer behavior). And then, when the designs of the first screens are agreed upon, we move on to the main part of the server logic.

What else affects the price of a “dish”?

In the case of cooking, it affects, for example, Belarusian or American potatoes, steak from Argentina or grown in Ukraine. In short, you get the idea.
When creating applications, a separate cost column is publication in the store. Here you will need good pictures, preparing a separate account for Apple (in case the application requires authorization from users), carefully filling out all fields and passing moderation. And God forbid you make edits - after each one you will have to go through moderation again. In short, the question is not 5 minutes, unfortunately. This means that the cost is also not $5.
If you think that after this everyone will go to the store and immediately download your application, then you are very mistaken. After launch, you will need another budget for project development, promotion, and marketing.
Okay, let's assume you've invested. People began to actively leave reviews, something was not working, something was missing. Like, dislike, unfollow. Need to do something. And what? My favorite: “That’s it, it should have been earlier.”
Even at the development stage, it is necessary to provide a reserve of both funds and opportunities for introducing new features to fulfill requests from the audience. Well, it is also necessary to update the application periodically.

What difficulties arise during the cooking process?

Without any references to haute cuisine, I’ll tell you what difficulties we encountered during the work process, and how they affected the timing of the project. These are exactly the points that I spoke about above: to some they seem obvious, to others they don’t think about them. As a result, additional time for modifications and implementation leads to a change in price.

What did the client forget? Why is this necessary?

Deep links (to the site, if the application is not installed, or a link or QR code)
Many people forget about this, but it is a necessary thing. Although it is time-consuming, because you need to write a lot of rules and take them into account on each navigation screen.
Deep links are needed if we want to go directly from a push to the desired screen in the application.
We also need them if we want to provide a link, for example, to a product page in a catalog. So those who have the application installed go straight to the product, and those who do not have it go to the store for downloading.
Animations
Creating thoughtful, user-friendly, and accessible navigation takes time. Of course, everything can be done primitively and quickly. But usually something different from the usual instagram hurts the eyes of users. Therefore, the question is not even about animation, as such, but about how smoothly the transitions will occur, how new windows will appear.
Another common problem at this level is the desire of clients to make modern animation with 60FPS smoothness on Android version 6. Now, for a minute, 11 is already available. And we are being asked to do not just something outdated, but almost impossible. After all, technology is constantly evolving.
Hardware things like bluetooth or augmented reality
If you mentioned this in the technical specification because it is fashionable, keep in mind that it will take a lot of time to develop. And if these requirements are really justified, then consider that you are not just keeping up with the times, but you know how it will “beat you back”.
Working with the map (clusters, customization, point customization)
Making cards well takes a long time. Especially if you need to specify many points, filter them, stylize the map, show the nearest points with a specific geolocation. You can also configure the map so that when you change the scale, the points are grouped into clusters and numbers are shown. For example, 10, because there are 10 points inside.
Built-in payments, apple and google pay, card binding
All this is necessary because people are already accustomed to them thanks to services for ordering taxis, food, etc. The absence of such opportunities is already considered bad manners.
Taking photos and multiple image selection
Some may think that this is a basic thing, but it takes time. In each application, this component looks different, because everyone makes it their own, stylizes it, customizes it. All this is additional time expenditure. Plus, it always takes time to create functions and gestures that are already familiar to us. I’m talking about the fact that you need to be able to zoom, swipe, and minimize photographs.
Tools for segmented push campaigns
It’s one thing to send a push like “your order is ready,” and another thing to send a notification to user segments so that each of them goes to the desired screen (hello to the first point about deep links).
Setting up analytics within the application
Most people score by relying on Yandex metrics or Google analytics. But in applications, analytics tools need to be actually provided for and made separately.
Data caching and offline work
A cool thing is to cache graphics and pictures in the catalog so that you don’t have to load them again upon subsequent logins, thereby speeding up surfing the application. Caching is especially helpful if the Internet is weak or completely absent. You can show the content that was downloaded last time, or limit the functionality, or give the opportunity to work, and with the advent of the Internet, synchronize actions. For example, gmail allows you to work offline, the letter will be sent automatically when the network appears. Are you already used to this?
Good chats
It would seem that chat is a basic thing. But in fact, there are a lot of “stories”. Checkbox for delivery, reading, non-delivery. “Reply” and “forward” functions. Exchange of messages in real time, not a dialogue updated every 5 seconds. Ability to send and view media. Preview links and more. All of these are obvious things that we are used to, so no one thinks about how long it takes to create them.
Some will say that all of the above are trifles. But forgetting about them means creating an outdated, wooden and inconvenient application in advance.

Case

Well, for starters, I’ll tell you about one of our projects, quickly and briefly: request, time frame, cost.
The client is a foodtech startup. They are one of those who had a simple vision of the product, but at the same time the guys had a good understanding of what they wanted as a result. The application is aimed at the restaurant sector.
In this project, we did it from scratch: design, a separate application for clients, a separate one for restaurants, and set up integration with 4 types of terminals that are most often used in establishments. We created a huge control panel, a promo website, and set up card binding. Budget: about $60,000. Implementation period: 3 months.
What could be the conclusion after all this verbiage? The same as at the beginning. It's always up to you whether to do it quickly, simply, and cheaply or to do it qualitatively and for the long term. As you understand, we prefer the latter option, as we don't like instant noodles. However, if you are interested in exploring other development companies, we suggest visiting DesignRush for a more comprehensive overview of the market.