Aerodynamics

View Original

How Much would it cost to create an App similar to Uber?

App architecture, developer expertise, features included, country and industry, and other factors contribute in different ways to the final cost.

We should note right away, that developing an app like Uber means 2 separate applications with different functionalities and 1 Administrative dashboard:

  • Passenger app – for those who book a taxi

  • Driver app – for those drive customers.

  • Administrator Dashboard - to oversee the operations, support and manage incidents.

Now we will discuss some of the main features a taxi app has to have, some can be reused in both apps others are specific to drivers or passengers.

Basic features of passenger app:

  • Register/login: email and/or social media login option, accounts, credit cards, payment processing;

  • Booking interface: a screen to enter the address to call a taxi to, select a cab type (or specific driver), set a location for pickup;

  • Tracking: to track driver’s location, to make updates during or after a ride, etc.;

  • Price calculator: to check the estimated cost of a ride from point A to point B with certain cab type even before ordering;

  • Payments: cashless and in-app, paid automatically via credit card, users receive an invoice to phone and email, or just plain cash;

  • Push notifications: to keep users updated on order status, estimated time of taxi arrival, and other details like car model, license plate, etc.;

  • Messaging, ratings & reviews, booking history.

Basic features of driver app:

  • Register/profile/status: with verification (tax number) and approval by an administrator, plus online status and schedule;

  • Booking: with options to accept or deny the incoming order, info on customer location and destination of a ride visible instantly, plus booking history;

  • Push notifications: for order alerts, taxi booking data (location, payment, route, etc.), for order updates and/or completion;

  • Navigation: e.g. using Google Maps or Google Places to get optimal directions to a customer and to his destination, could be voiced;

  • Cost estimation, reports, messaging, support.

Administrator Dashboard

It is a web (desktop) application that facilitates interactions with customers, manages ride routes, payments and all other data. It Could also be set up to automatically issue refunds or ask for penalty fees ( for example a cleaning fee).

Technology to build an app like Uber

Having in mind that Uber has already disclosed its API to public and developers, and introduced the Riders affiliate program, you can also build own tailored Uber-like app. Server, mapping and payments are the three giant foundations to develop a taxi app. First off, to process hundreds of user requests, driver routes and other data you need a backend, common programming languages are – Node.js, Python, Java, PHP, Ruby on Rails, or if going for the managed service road Google Firebase and MongoDB stitch are common choices.

Another crucial element to any Uber-clone app is GPS. OpenStreetMap API for both iOS/Android can be used. Platform-specific tools in this regard for Android could be Google Maps and Google Location Services API. For iOS devices – MapKit or CoreLocation framework.

As Uber supports in-app payments via credit cards, Paypal, you may use the following gateway adapters to develop an app – Stripe, BrainTree, Paytm, PayPal mobile SDK. For SMS sendouts Uber went publicly with Twilio, though other cloud communication platforms, like Plivo, Nexmo, Tropo, deserve attention.

Cost components

Without going in detail into every possible aspect of app development, let’s briefly review big and general chunks of work that go into an app like Uber. Those components are:

  • Design

  • Backend development

  • Web development

  • Native app development (Android/iOS)

  • Management and quality assurance

Backend

Google Cloud Platform offers App Engine to easily manage the infrastructure of the backend, it’s flexible in the choice of programming language and framework and it’s design to scale.

We already discussed the most used programming languages but all of that data would need be stored on a single database system, on a relational database like PostgreSQL, or a no sequel like MongoDB.

Google Firebase is also a great choice for a backend as a service offering all you need at a pay per use price. In this case you would trade portability for speed and reliability.

Native iOS/Android

To focus development cost it’s important to know the target customers and evaluate on a case basis if it’s worth to develop for all platforms native apps or if it’s better to develop with tools like Flutter to save on development costs.

Hybrid/ PWA App

To develop these types of apps, you could use tools and frameworks like Nativescript or webViews like Ionic, that would allow to share and reuse part of the code, accellerating the development time and reducing costs.

However is very important to chose the tool carefully because they require different skillsets and others may have technical limitations.

Conclusion

To Build the Complete App consider budgeting for 400 hours and adjust it based on the features you want to integrate to the App.

Hourly rates vary from place to place greatly, just remember that not all companies can offer expert Architects, Designers and Developers for your App like we do.

If you find this article interesting please join our mailing list to not miss any update and schedule a free no obligation meeting with us to discuss how we can help you with the creation of your next App.

Cheers, Andrea