A person holding a smartphone showing the screen with the list of installed apps
Rafael Saraceni Avatar

Many people come to talk to me because they have app ideas or have received some request from the company they work for. After more than 10 years of experience with app development and management, working with multinationals, startups, and finally founding my own startup, I have learned that the process of creating an on-demand app is very similar to the process of hiring a company to build a house.

People who are not familiar with technology tend to think that apps, like Uber, are simple. It’s a screen with a button. You click the button, enter an address, and it calls a car for you. Simple as that. It’s the same as saying that a mansion with a gym, pool, fireplace, garage, and garden is just a place with a door, a roof, and several stacked bricks. Simple as that.

When you are going to build a house, you don’t just ask someone for a 100-square-meter house with two bedrooms, one being a suite, two bathrooms, a living room, and a kitchen to be delivered in 4 months. First, you talk to an engineer and then to an architect. You have a budget and a series of trade-offs to build the house of your dreams. Want a pool and a barbecue area? Hmm, you will need to buy a larger terrain or choose one or the other. Want to install a solar panel on the house? We will have to make electrical adaptations, and it will be more expensive. Want to use high-quality marble flooring? Your budget doesn’t allow for it, so you’ll have to save on something else.

With an app, it’s the same thing. What you see on the screen of your phone or computer is just the tip of the iceberg. The code running on your phone or computer is different from the code running on the servers connected to the internet, which provide information to your app from a database. The design of your app, to be of good quality, needs to be done by a professional design specialist. The development of the part that will run on the phone or computer also requires specialists, as does the development of the part that will run on the servers, connected to the database, providing information to the app on the user’s phone or computer.

When you say you want an app, you need to describe in detail the use cases of your app, the information it will retrieve, process, and save. For example: if your app needs to work offline, you must make that very clear. If your app connects with social networks, you need to specify which information you will retrieve and save.

One of the main points that should be clear when requesting an app quote is what information the user will provide (through text fields or value selection), what information will need to be consumed from third parties, who those third parties are, and how the information should be processed.

Real-time messaging features make an app more expensive, as do sending and receiving notifications. One thing my clients often request is the ability to send notifications to users segmented into different groups. To segment users into different groups, the client must clearly define all the segmentation rules that will be used. Additionally, to send notifications to users, it is necessary to create an administrative web panel or an admin app that only the client has access to, which further increases the cost. It is worth noting that the cost of programming notifications that display images is higher than for those that display only text.

The more detailed you are when requesting an app quote, and the clearer you are about the use cases for your provider, the more comfortable they will feel delivering the right app for you. When someone requests an app in a generic way, without specifying use cases or screens, such as: “I want an Uber for walking dogs,” the more expensive the quote tends to be. Imagine you are an engineer. A client comes to you and asks for a 100-square-meter house, with a suite, a garden, a guest bedroom and bathroom, and two floors. They want you to hire and talk to the architect to design the house. Will you feel comfortable? You would also be responsible for finding a terrain somewhere in the city to build the house. The client might not like the place you choose, but they don’t know where they want to build either.

The client didn’t specify whether they want a kitchen or a living room in the house. It seems obvious—everyone has a kitchen and living room in their house. But what if the client is one of those modern people who always eats out because they work all day and prefer a larger living room over a kitchen, or doesn’t want either at all? If you were this engineer, you would quote a very high price. Because if the client can’t specify in detail what they want, the chances of them asking for more things, or the project turning out completely different from what they have in mind, are very high. The risk is high. Not to mention the legal aspects. If the client wants to cut down a tree to build a little house for their dog, they might face legal barriers. Not everything they want to do can be done.

This is how an app development company thinks. A software project is an engineering, architecture, and design project, always keeping the end user in mind. Just like a house, an app can cost from R$10,000.00 to R$1,000,000.00. One thing that helps reduce the cost is for the client to already have the app screens and information flow in hand. This makes it clear what information and data need to be consumed, processed, and stored.

Rafael Saraceni Avatar

Leave a Reply

Your email address will not be published. Required fields are marked *