fbpx
Mobile App Development

A Guide On Developing and Maintaining On-Demand Food Delivery App

The COVID-19 period is kinda causing an on-demand food delivery bubble. The number of people and companies trying to enter this niche is at its peak. This article will be discussing the different ways you can develop on-demand food delivery apps and the costs involved in developing and maintaining this kind of system.

The COVID-19 period is kinda causing an on-demand food delivery bubble. To be clear there are 2 kinds of food delivery apps, one is “on-demand food delivery” where vendors/merchants can list their menu, and riders will get the orders to deliver. Food Panda and GrabFood are on-demand food delivery apps. There is another type of food delivery app where the apps are not usually open for other merchants/vendors to sell their food. 

The number of people and companies trying to enter this niche is at its peak. We have been getting calls, emails and Whatsapp messages left and right about on-demand food delivery app development. This article will be discussing the different ways you can develop on-demand food delivery apps and the costs involved in developing and maintaining this kind of system. We can see comments from Malaysians on lots of on-demand food delivery app templates/ scripts on marketplace like CodeCanyon. This indicates Malaysians are fiercely hunting for great templates to cut down the development time and cost. 

There are 2 major ways you can develop an on-demand food delivery app. You can either develop the apps from scratch or develop using a template. 

There are 2 ways apps can be made. Hybrid and Native. Hybrid development is cross-platform development where the apps will be developed one time and can be built into Android and iOS. Frameworks such as React Native, Flutter, Ionic and others are some of the Hybrid frameworks available.

Native development means the apps will be built separately for Android and iOS. Java for Android and Swift for iOS. Native development is very costly as every work takes more developers to work them. Maintenance also costs high as more developers have to work on the apps.

On-Demand Food delivery generally consists of 3 apps and 1 web backend(admin portal):

  1. User App – Customers who want to buy food
  2. Vendor/Merchant App – Restaurants/Seller who wants to sell food
  3. Delivery Boy App – Delivery guys who wants to earn by delivering orders
  4. Web Backend – Admin portal for admin to monitor everything and to make changes/settings

However, there are some third party solutions for on-demand riders & drivers where you can integrate their APIs in your app and all your orders will be handled by the third-party solution like Lalamove, MrSpeedy, and others. In this case, you probably won’t need a delivery boy app.

There are 3 kinds of cost you should take note. 

  1. Development Cost
  2. Monthly Incurring Cost for Third Party Services
  3. Maintenance Cost

Building App From Scratch

Building an on-demand food delivery app from scratch will cost very high and take time. 

In Malaysia, the cost of hybrid app development for on-demand food delivery starts from RM50,000. 

The cost of Native app development for on-demand food delivery starts from  RM80,000.

Hybrid development and native development can reach hundreds of thousands to even millions depending on the requirements.

Freelancers may offer a cheaper price than what software companies/agencies offer.

Building App From Template

Where can you find full-solution template ?

There are a number of marketplaces where you can find finished on-demand food delivery apps. The most widely used marketplace is: CodeCanyon . That doesn’t mean everything on this marketplace is good, you have to do a lot of studies before making a purchase. 

Some other marketplace: 

Enappd

NativeBase

Ionicmarket

There are different terms used for apps templates such as: “templates”, “scripts”, “full solutions”

Sometimes, the title says templates, it may mean that they are only selling the design of the app and not the scripts. It means if you buy the template, you will have to develop the whole app and backend as all you have is the design.

There will be some templates which have full solutions as well. You should find the full solutions with apps and backends. Only this will help you to cut your time and cost.

Some titles may also say scripts, you need to go through the description and the comments section to make sure it comes with the full source codes. Make sure you will get the source codes when you purchase. 

In some marketplace like CodeCanyon, there will be 2 different licenses. Standard and Extended. A lot of templates/scripts/solutions for apps only give full source codes when you purchase the Extended license. Consult with someone with programming background when choosing a template for your app. 

After choosing the right template, you will now have to deploy the backend, and make changes according to your requirements to the app template.

A good full solution template cost from USD80 all the way up to USD1,000. These are apps with full source code ready to be used.

By having a good template with you, you and your developer(s) can discuss what your expectations are and how to meet your expectations using the template. In this case, you are able to finish the app in less than half of the price or one-third of the price or even one-fourth of the price you will need to invest to develop them from scratch.

Maintaining your apps

Once the development is over you should maintain your apps. App maintenance costs can be higher during the first year and decrease 15-25% for each year after that.

Maintenance of the apps usually depends on how they are built. If the apps are full of bugs and issues when they arrive at you, it means you need to invest more in maintenance. If the apps are built with scalability in mind and they are stable without bugs, it means you do not have to do lots of maintenance, which means it won’t cost a lot.

There are software companies/agencies who are charging more for maintenance than the development cost of the entire app. If your apps are very big that have tens of thousands of Monthly Active Users, it makes sense. But maintenance for new apps with less traffic will never cost that much.

Hiring a proper development company or freelancer

You can hire any good Malaysia Mobile App Development Company or freelancers to do so. If your template is based on Ionic and the backend is on Laravel, then you will need an Ionic developer and a Laravel developer to work on your app. If your template is based on React Native, then you will need a React Native developer to customize the apps. Make sure to pick the right company or developer to work together. This is the time where you have a lot of competitors trying to build the same apps like yours. You should avoid cheap and less-skilled developers. If a freelancer claims he can work on your Flutter apps, NodeJs backend, MongoDB, Firebase/AWS and he can deliver in a very short time, he must be a developer in god-mode. 

I contacted lots of companies for a very simple website for food delivery , they quoted me RM200,000. I asked for a Proton , they quote me a Mercedes. 

Some companies quote me 3x the amount of the development for maintenance.

I just wasted RM20,000 making a food delivery app. I hired a freelancer to do it, he took too long and the final result is so bad that it’s full of bugs. I want to make a new one which can be finished by June.

I have an on-demand food delivery app being in development for the past 10 months. The project cost me RM270,000 and I haven’t got the apps finished.

These are the words that we heard during our phone calls with a number of different people in the past few days.

You should find a qualified development company or developers who you feel are good to work with.

Suggested Read:

Things you should consider about a software company or a developer before hiring them for your project

Recurring Third-party Services Cost

There are a number of third-party services that a standard on-demand delivery app should have.

  1. Google Maps API
  2. Google Firebase Cloud Messaging
  3. SMS Gateway
  4. Payment Gateway
  5. Server/Cloud

1. Google Maps API

Below is the list of Google Maps APIs which can be used for on-demand food delivery apps.

  1. Place API
  2. Geocoding API
  3. Maps Javascript API
  4. Distance API
  5. Routes API
Place API

Place API contains the following requests such as Place Search, Place Details, Place Photos, Place Autocomplete and Query Autocomplete. On-demand food delivery app mainly needs Place Search and Place Autocomplete. Place Search allows users to search for a location from the map. Let’s say you want to set the location of your office to send the food, Place Autocomplete suggests the location of your office as you type.

Place Autocomplete suggest the place as we type
Geocoding API

Geocoding API converts the address into coordinates, which then places marker/icon on the map. Look at the 2 markers in the screenshot below. The blue and the red. Grab app takes the 2 locations and point them on the map, Geocoding API do this.

Maps Javascript API

You want Google Map inside your app ? Then Maps Javascript API will do the job.

Distance API

Everytime a customer selects the food and added them to the cart and proceed to payment, Distance API will calculate the distance between the Restaurant/Seller and the customer. For example, after you select your current location and your destination in GRAB, the app will calculate the distance and the price based on the distance and other factors. This is being done with Distance API.

Routes API

User will be able to see the routes from his address to the seller’s address. For example, in the below screenshot, the routes are drawn black in color from the first location to the second location.

2. Google Firebase Cloud Messaging

Firebase Cloud Messaging is responsible of handling push notification. There will be a lot of push notifications involved in an on-demand food delivery app. Admin can even send out push notification on promotions targetted by location. Besides that, everytime an order is placed for food, the seller/restaurant has to be notified via push notification, delivery boy should be notified via push notification on available gigs, user should be notified via push notification on the status of his food.

3. SMS Gateway

SMS gateway is very important in the process of authenticating a user. Whenever a user signed up, OTP is the easiest way to make sure the mobile number used is genuine and that, the user has access to it. Whenever a mobile number is verified, the user is reachable via the number. There are a lot of SMS gateway available in Malaysia. In Malaysia, it may cost RM0.10 on average per SMS sent via the SMS gateway providers.

4. Payment Gateway

Local payment gateway is a must for an on-demand food delivery app running in Malaysia. Payment gateway charge on a different pricing structure. There may be an upfront fee and a percentage on every transaction made. There may be a monthly fee and no percentages deducted from the transactions made. There may be a flat fee for every transaction no matter the size of the transactions. Below are some local payment gateway providers.

eGHL

RazerPay

SenangPay

Billplz

ToyyibPay

5. Server/Cloud – Where to host the backend of your application?

Every mobile apps have a web backend where it is responsible for the databases, scripting and the architecture of the applications. The backend is the codes that help to connect the database with the apps.

The backend can be hosted on Shared Hosting,VPS and Dedicated hosting.

Google Firebase and Amazon Web Server are the recommended ones if you are looking for scalability. Google Firebase is what we call as Backend as a service (BaaS). It has a lot of features like user authentication, cloud database, messaging, and storage. It also has hosting, testing tools, and crash reporting features. There are other Baas as well such as AWS Amplify, Apple CloudKit, AWS, Kinvey, SashiDo, Kumolos, Parse, and others.

These are recurring cost that you should keep in mind as well.

Summary

To summarize, the costs involved in building and maintaining on-demand food delivery apps will be :

  1. Development of the apps
    – Build from scratch
    — Hybrid Development = RM50k++ on average
    — Native Development = RM80k++ on average
    – Build from template
    — Hybrid/Native development = RM5k-RM40k on average depends on what kind of modifications you want to do.
  2. Maintainance of the apps
    -Save aside RM7-20k++ a year for maintenance if your app has low traffic. Higher traffic apps may need more maintenance and the cost can go up.
  3. Recurring Costs
    Google Maps API – Free for the first 12 months & Free $200 worth of API Calls every month, you only have to start paying when you have very high traffic or very high usage of the APIs
    – Google Firebase Cloud Messaging – Free
    – SMS Gateway – Check with your preferred SMS gateway provider
    – Payment Gateway – Check with your preferred payment gateway provider
    – Server/Cloud – Check with your preferred hosting/cloud/BaaS provider

The estimated cost of Google Maps API, Server, and Emails for 5000 daily transactions.

Case Study from FreshMate, a Malaysian based wet-food delivery app
DescriptionPrice
Directions APIRM21/day, RM630/month, RM7,560/year
Distance Matrix APIRM21/day, RM630/month, RM7,560/year
Nearest Route APIRM42/day, RM1,260/month, RM15,120/year
Mapping Dynamic Display APIRM29.40/day, RM882/month, RM10,584/year
Autocomplete Query APIRM71.40/day, RM2,142/month, RM25,704/year
Geocoding APIRM21/day, RM630/month, RM7,560/year
Geolocation APIRM21/day, RM630/month, RM7,560/year
ServerRM3,000/month, RM36,000/year
Transaction EmailsRM230/month, RM2,760/year
TOTALRM120,408/year for 5000 transaction

Suggested Reads:

What You Should Know About Long-Term App Maintenance

How Much Does an App Cost in 2020: A Massive Review of Pricing and other Budget Considerations

The What, Why and How of Mobile App Maintenance

All of the above information is only for the purpose of painting an idea of what kind of processes and costing involved in building and managing on-demand food delivery apps. Please consult with your Software Developer(s), Software Company/Agency, or IT Consultant(s) before making your decisions.

Related Post: