Purrweb is a mobile app development company that whole heartedly stands for React Native and believes that in 2021 it’s the best solution for MVP development in terms of price and quality. We aren’t shy to acknowledge it. After all, what can we do if we really believe in what we make?
React Native: what is it and how does it help to save money
First, let’s gain insight on mobile app development: what we and our clients respect React Native for and how it helps to save on mobile app development. For that, we will have to dig into the mobile app development process. But don’t worry, you won’t have to ask a software developer to translate what we’ve written.
How the mobile app development process goes
Now most of the apps are developed for two OS: Android and iOS. Speaking about the languages they’re written on: Android — Kotlin, iOS — Swift. It’s native app development and for a layperson it means the following: you’ll need to find at least two developers that’ll code in parallel. As a result, you will get one app for Play Market and another for App Store. It won’t be possible to reuse the code or reduce the development time. One code — one system.
React Native: who are you?
React Native is an instrument which allows to write one code and get both Android and iOS apps. It’s a cross-platform mobile app development framework meaning it’s enough to find one software developer. There is one code but you get two apps: one for Play Market, another for App Store. One code — two systems. With React Native, you manage to save money because you don’t have to develop two products in parallel. There is one product, one team and a fast answer to the question ‘how much does it cost to develop an app with React Native’: cheaper than in Kotlin or Swift.
Not only web studios offer mobile app development services with React Native, freelancers also do. You can even get an in-house team together, as for example Airbnb did — to each its own.
Why it is better to address mobile app development companies
Let’s break down the main advantages of working with mobile app development companies.
In web studios, a project manager (PM) is responsible for communication and project coordination. Their tasks are to:
- fully understand what the client needs;
- transfer the client’s vision to the team;
- make the team accomplish the desired product on time;
- control product release and acceptance of deliverables.
In practice, it means the following. Clients just tell a PM everything that they want to see in the app. Then it’s the PM’s duty to translate it into the language clear for developers, agree on the deadlines and deliverables, and control the process. Without a PM, it’s you who will have to align the team’s work.
For the clients, we align total transparency in the app development process. We manage that by having Zoom-calls twice a week on the design stage, demonstrations every 2 weeks while developing app, daily status updates along the whole project, Zoom-calls more often, if necessary, project management docs: call summaries, access to Jira and Hubstaff. In such a way, clients throughout the project understand what was done today and when the app will be delivered. No unpleasant surprises: everything goes systematically and predictably.
It’s better to address web studios that succinctly define their expertise and have been on the market for more than 5 years. It’s not much but enough to understand if web studio’s business model is viable and how many projects it has in the portfolio.
Purrweb is already 7 years in the business and has more than 250 successful projects done. ‘Successful’ — means that the product was accepted by the client. Not all of them made it to the market and got their brush with fame and there are many reasons for this: ineffective marketing campaign, strong competitors or lack of financing. But most of the apps we created now bring profit to our clients. Our strength is catchy UI/UX design. From the technical standpoint, we’ve generated a solid expertise in React, React Native, Electron and Node.js.
Post release support
Developing app is just the tip of the iceberg if you look at the product on a scale of the year. After release on stores you need to keep the app running. The first users come, bugs pop up and somebody needs to fix it. Not so many freelancers take it on because on this stage the true product test starts. Irresponsible vendors choose to ‘somehow’ do it, have a demo, make the client sign all the acceptance documents, and slip away quickly.
If web studio guys promise to take on post release support right from the beginning — it’s a good sign. It means that they are self-confident and sure that they’ll make a good product that will need to be tweaked a bit after the feedback from real users comes.
Transparent docflow and taxes
Freelancers that offer mobile app development services are self-employed. Some of them even do it illegally: simply get the payment on their credit card.
With web studios the workflow is 100% legally clean: they sign a contract, agree on deadlines and conditions. The responsibility is held not by one person, but by the whole mobile app development company instead. If you need, they sign an NDA and provide you with closing documents, acceptance reports, so you won’t have any problems with taxes.
Pumped up team
Gathering the team for developing app is hard. Especially, when you don’t know who to look for whatsoever. PHP, SQL, Python: many fuzzwords but you simply need to develop app.
In such a case, it’s easier to use mobile app development services of a web studio, as it takes all the headache on itself. Web studios already have UI/UX designers, PMs, analysts, developers, QAs.
If these arguments still aren’t enough for you and you’d like to dig deeper into the topic of choosing a development team, check one of our articles. We compared in-house teams, freelancers and mobile app development services of web studios, summarized their pros and cons.
How much does it cost to develop an app and which development stages there are
Let’s move over to the key questions: how much does it cost to develop an app with React Native and what it’s composed of. All mobile app development companies have their own approach to design, development and project management. App development process in Purrweb consists of 5 stages.
Project estimation and functionality prioritization
To understand how much does it cost to develop an app, you need to estimate functionality that a client wants to see in the app. We are the followers of MVP approach to developing apps that’s why right from the beginning we advise clients to focus only on the most crucial features. In such a way, it’s cheaper to check the hypothesis: if there is a demand for the key functionality of the app or not.
We count on our clients’ expertise in everything related to understanding the market and what users really need. But if necessary, we can carry out research and share the results. When the client approves necessary features, a business analyst together with the team leads estimate the scope of work.
One of the most frequently asked questions is ‘how much does it cost to develop an app’. It’s one of the hardest parts in project estimation. It holds many hidden pitfalls: from integrations, client’s requirements, necessary tech stack, to team’s experience with such projects and project feasibility. Clients expect to get hard numbers right from the beginning (how else). Our goal is to give the estimate that is as close as possible to reality and set the right client expectations.
When the project quote is ready and we have a clear answer to the ‘how much does it cost to develop an app’ question, a startupper should ask themselves once again: ‘Do I need all those features at start?’. You can almost always give some features up. There is core functionality — the reason why the user will enter the app in the first place and there are additional features that can be cut out to save money while developing app.
For example, in the chat of Avito (Russian eBay) when you write a phrase ‘already sold’, the suggestion to end a listing pops up. It’s a small feature that helps users get things done quicker. At the same time it’s not a crucial one. When Avito released ver.1 of the app, there wasn’t such a feature. For the beginning, it was enough just to connect people in the chat and give them the opportunity to share text and photos.
Surely, it’s not for us to decide which features to put aside and which ones to have — it’s the client’s task. From our side, the only thing we can do is estimate how much does it cost to develop an app that clients want to have and suggest ways to trim costs.
⚙️ Tools: Google Sheets
In Google Sheets, we collect a detailed estimation divided in user stories. It helps our clients to understand the price setting and where to cut back. On the prioritization stage, we juggle with the features to fit in the client’s budget.
What do we need from the client?
- The maximum amount of information about the project.
- A portrait of the target audience.
- Understanding of which features should be in the app.
💸 Where to save?
Nowhere. It’s all for free.
In Purrweb, we don’t believe in specs or SRS documents. It’s the thing of the past — the waterfall approach to development when they used to predefine all the project details beforehand and then strictly follow the plan without any flexibility. If we’re speaking about MVP development, the Agile approach is way more viable. Especially, when the client doesn’t fully understand what they really need. The best spec in such a case is design. With such an approach, all the inconsistencies come to light before we start developing app and all the unnecessary features fall away.
We already have a well-tested process of design. If you’d like to get into details of it and see our way to an effective design process, then read the article below.
But here let us briefly describe the process. In Purrweb it looks like that:
- Negative references — examples of app designs that a client doesn’t like. Right off the bat, it helps us grasp the client’s taste. When we have the references, it’s time to move to the app’s architecture.
- Mindmap — a scheme that displays the logic of an app. Designers convert user stories from the spreadsheet into user steps inside the app and set up the navigation in the app. It takes just 8-10 hours and helps us get into client’s expectations. After the mindmapping goes wireframing.
- Wireframe — a rough mock up of an app where we show the position of buttons or content. When the client approves the wireframes, it’s time to put the UI on and create a concept.
- Concept — one flow of the app worked out fully from a visual standpoint. These aren’t some separate Figma screens but a particular flow from the app. So, the client gets a ready-made part of the app with minimum expenses. If the client likes the concept, all we need to do is wrap the rest of the screens up. If the client doesn’t like it, we collect feedback and do it differently.
- Ready-made mockups — the app’s screens are approved by the client and ready for programmers to develop app.
- UI-kit — visual elements of the interface. It helps the developers, saves time for searching the right button or icon. Saving time = saving client’s money.
In Purrweb, we develop apps using the cross platform framework React Native. It means that we create hybrid designs: suiting both iOS and Android. App Store and Play Market have guidelines — kind of recommendations on how to make better mobile design. It helps to create interfaces that work well on real smartphones. We take into account the key points: paddings, clickable areas, button size. But if you only follow those guidelines, you’ll get dull and cookie-cutter apps. That’s why we take the guidelines into account but don’t hesitate to bring some creativity into play. There are also store requirements. If you don’t follow them, the app won’t be released at all. So, we do follow them.
You may have an obvious question: ‘How come one design may fit both iOS and Android?’. The requirements must be different due to screen size and shape. To make design work tip-top on both platforms, we do two things:
- Consult with developers regarding edge cases and if a feature may work on both platforms.
- Check Mobbin — a library of 50.000+ mobile app screenshots. There you can find UX best practices — the positioning of buttons, search bars and other key elements. Creativity shall be represented in UI. You’d better not reinvent the wheel in terms of UX and do what users got used to.
⚙️ Tools: Figma
There are many graphic editors now on the market: Sketch, Photoshop, Illustrator. We design all the interfaces in Figma because:
All project versions are in one link
The design team works in one cloud space meaning that the chance to lose something is lower than, say in Sketch or Photoshop. All the changes get saved automatically. The advantage for the client is that all the mockups are in one place: you see the version history and roll back if needed.
Centralized work with feedback
Without Figma processing of feedback went like that.
- Designer creates mockups.
- Manager has a call with the client, shows the results and sends the archive.
- Client gives feedback on the call and then texts some more on WhatsApp or email.
As a result, the client doesn’t understand what’s the final version. Designer doesn’t get which screen should be changed. Manager can’t get his head around what’s happening.
In Figma all work with feedback goes in one place. The client just points at part of the mockup, comments it. Designer sees it. Manager is calm as everything is clear.
Design is the best spec. In the case of mobile apps, prototype is the best spec. Recently, in Figma it became available to put non-linear clickable prototypes. It allows to fully simulate a functioning app.
You don’t always have to create a full prototype of an app. In projects where we have 300-400 design hours it may take much time to create a prototype. Time is the client's money. That’s why we suggest prototyping only super ambiguous parts of the flow. For that, we put 4 hours in our standard estimation. Usually it’s enough.
What do we need from the client?
- Be at demo
- Give feedback
- Listen to the views of designers
- Approve everything before we start developing app. Making changes in app flow during the development is possible, but will cost a lot.
$2.000 — $10.000
💸 Where to save?
- Not ask for the prototype of the whole app
- Give up on the approach ‘create several versions, guys’
We develop apps using Scrum framework and two-week sprints. At the end of every sprint we show one or two finished features. With such an approach the client sees the progress and stays updated along the whole process of developing app.
We plan and track app development process in Jira and Hubstaff. Jira allows us to decompose tasks, track the progress and plan sprints. On the Kanban board we see the workflow: in progress, ready to deploy, QA tested. Sometimes clients want to see the cards moving. Not a problem for us, we just give access to Jira.
With Hubstaff it’s easy to control the app development process. There we track the time spent on a project and bill the clients based on it. At project start we integrate it with Jira and see the breakdown by task. This data is also used for calculating team’s velocity.
We start to measure the team's velocity at the end of the 3rd sprint and then do it on a sprint-basis. It lets us calculate team performance, detect estimation errors due to bottlenecks, and manage client’s expectations. Let’s say, we’ve estimated the project at 1000 dev hours and planned to accomplish it in 8 sprints. 3 sprints pass by and we see that the tasks are done in 300 hours instead of 360 — that’s cool. It means that on the project estimation stage we got all the bottlenecks covered and promptly addressed all the issues along the way.
Usually we ask clients to register a developer’s account in Apple to test the app in TestFlight. In such a way, the client themselves may test drive the ready parts of the app, and if needed, ask to change something. We upload the Android version into Google Play Console. The client downloads it and installs on their device. It allows us to prepare two working versions of the app and demonstrate sprint deliverables.
⚙️ Tools: React Native
We do not retain any intellectual rights over developed apps. We work at GitHub. Everything we code is owned by the client. From day 1 the client gets access to the repository. At the end of each sprint we push integrated features to the client.
What do we need from the client?
- Be present at demos
- By the beginning of the 1st sprint register the developer’s account in App Store and Play Market
$15.000 — $100.000. The price range is so wide because it depends on the number of features in the app. We can design whatever the client wants but to develop it may be extremely expensive.
💸 Where to save?
Do not make any fundamental changes in app flow and design during the app development process.
To make all features work every time instead of ‘if God gives’, the app needs to be tested. That’s QA engineer’s work. Their goal is to break the app by recreating the most unimaginable use case and report the problem to developers.
At the end of each sprint we plan 2 days for bug fixing. Every two sprints we do regression testing: see how all features work together. We need it to make sure that the features from previous sprints do not break each other. As a result, no bugs get into prod.
⚙️ Tools: Vercel, Postman
Postman — a tool for testing Rest API. It’s meant for checking requests from client to server. For example, Postman says: ‘Give me the birth date of this user’. The backend responds: ‘Here it is’. That’s the positive case but it may also turn out like that: ‘The user wasn’t found’.
We make sure that the app looks good on all devices. We have all popular devices at our disposal: from iPhone 5C to iPhone 12 and from ZTE to Samsung. If something is working wrongly on one of smartphones, we ask developers to fix it.
The developer switches over to another branch and starts coding a new feature. That’s why testing goes in parallel with development.
What do we need from the client?
Practically nothing. QA engineers know what to do to leave all the bugs outside the app.
30% of dev cost.
💸 Where to save?
Unfortunately, nowhere. The better you test the app, the lower the chances are that the real users will see sliding buttons on Android or the message: ‘Connection to the server was lost’.
Release and support
Develop app is just the beginning, you also need to release it on the App Store and Google Play. The key point — follow the store requirements and take them into account at the design stage. Otherwise, it may happen that you baked a birthday cherry cake but forgot that the birthday kid is allergic to cherries. We are aware of all allergies of App Store and Google Play, and take it into account while designing.
It doesn’t matter how good the client knows their target audience, the ver.1 of the app is never perfect. The users always know better what they need and share it in their feedback. They suggest what to do better or which features they’d like to see in the app — it’s all food for thoughts of a product owner. Most often, after release our clients get back and ask to add several features.
To make the whole app work stably after the release, the developer should regularly keep an eye on the server load. If by the product release you haven’t collected your own team for product support, we can allocate a developer and a QA engineer. They will check the code and fix bugs.
What do we need from the client?
The feature list.
$500 — to infinity. Depends on the difficulty of features that you’d like to integrate and how well it fits into existing product architecture.
💸 Where to save?
Make less features and find compromise solutions. Usually, in ver.1 of a chat users can send photos but no other doc types.
And yet, how much does it cost to develop an app with React Native
Let’s summarize, ‘how much does it cost to develop an app’. There are many factors that influence the price: the amount of functionality, timeframes, and app scalability. On average, we develop apps in 3 months with a budget of $40.000. These include a detailed quote, UI/UX design, UI-kit for development, developing app, QA testing and management.
To create a detailed breakdown for your project we’d need to know your project idea, then have a Zoom meeting and discuss the details. When we understand the scope, only then we can estimate the timeframes, the costs and pick up suitable tech stack.
P.S How much does it cost to develop an app like Tinder and Headspace
To give you better understanding of how much does it cost to develop an app with React Native, we advise you to visit the section Mobile App Development on our website. We collected 10 estimations of popular apps. There you can find marketplaces, social networks, messengers, food deliveries and many others.
But most often we get asked how much does it cost to develop an app like Tinder or Headspace. Let us briefly share it with you here.
Develop app like Tinder isn’t cheap. You need at least a team of 6 and $80.000 —$100.000 for full-cycle app development. These include prototyping, UI/UX design, iOS and Android app versions, QA testing and release. Such an app may be done in 5 months, if we have enough information from the client and the app requirements are clear.
In terms of the budget and team size it’s close to Tinder. In total, for such an app you’d need a team of 6, $85.000 and 5 months for design, developing app and release.
We have a calculator for estimating the approximate cost of an app. But if you don’t have time to describe the project in detail, simply fill in the form below, we will contact you in 12 hours and discuss project details.